2009

Aug

3

Av

FileMaker är suverän på att räkna med datum. Internt lagras datum i FileMaker som ett heltal, antal dagar från 0001-01-01. Det gör det enkelt att lägga till dagar till ett datumfält, eller att räkna antal dagar mellan två datum som jag skrev om tidigare

Vill du lägga till 30 dagar till ett datumfält gör du ett beräkningsfält med beräkningsresultat Datum:

Förfallodatum = Datum + 30

Vill du lägga till 3 månader går det också med lite hjälp av funktionerna DateMonthDay och Year. Funktionen Dateskapar ett datumvärde från 3 tal, månad, dag och årtal, medan Month returnerar månadsnumret från ett datum, Daydagen från datumet och Year returnerar årtalet. Kombinera dem så här (beräkningsresultat Datum):

Datum_3månader_fram = Date (Month(Datum) + 3; Day(Datum); Year(Datum))

Lägg märke till “+ 3″ efter månadsnumret, dvs. resultatet blir ett datum 3 månader framåt i tiden. FileMaker klarar själv av att byta till nästa årtal och även nästa månad om så behövs. Det betyder i och för sig att resultatet inte alltid blir som man väntat: om Datum har värdet “2009-01-31″ och du lägger till 3 månader blir resultatet “2009-05-01″ eftersom den 31 april inte finns.

Vill du veta vilket datum den miljonte dagen infaller så kan du inte använda:

Miljon = Date (1; 1000000; 1)

FileMaker klarar inte av så höga tal som argument till funktionen Date. Använd istället:

Miljon = 100 * Date (1; 10000; 1)

Eller ännu enklare (med beräkningsresultat Datum):

Miljon = 1000000

Eftersom datumfält är ett heltal går det också bra att multiplicera. 10000 * 100 är lika med en miljon. Vilket datum det blir? Prova själv!

Skriv en kommentar

  • (will not be published)
  • × five = 30

Läs också: