Jump to content

Tijd anders invoeren


rgaros

Recommended Posts

Posted

Lezers,

 

Ik heb in drie stappen een tip gemaakt om een tijd anders in te voeren dan FileMaker standaard toelaat. Begint met berekening voor in de veldopties en eindigt met berekening die ook tijdstempel veld aan kan en met script-activering wordt uitgevoerd.

 

Wellicht vind jij het ook handig om het in de eigen database te implementeren?

https://www.reneros.biz/filemaker/tips-trucs/index.php#N283

https://www.reneros.biz/filemaker/tips-trucs/index.php#N288

https://www.reneros.biz/filemaker/tips-trucs/index.php#N290

 

Mvg,

René Ros

Posted

Geinige invoerfunctie. Ik gebruik zelf deze, die heb ik speciaal gemaakt om nooit seconden te hoeven invoeren:

// Als Custom Function: TimeCorrect ( TimeEntry )
Let ( [ 
theTime = Case ( 
		Length ( TimeEntry ) < 3 or Length ( TimeEntry ) > 4 ; TimeEntry ; 
		Time ( Left ( TimeEntry ; Length ( TimeEntry ) - 2 ) ; Right ( TimeEntry ; 2 ) ; 0 ) )
] ; 
Time ( Mod ( Hour ( theTime ) ; 24 ) ; Minute ( theTime ) ; Seconds ( theTime ) ) 
)

Maar deze is ook heel simpel om te vormen naar een directe entry zoals in jouw voorbeeld:

Let ( [ 
TimeEntry = Self ; 
theTime = Case ( 
		Length ( TimeEntry ) < 3 or Length ( TimeEntry ) > 4 ; TimeEntry ; 
		Time ( Left ( TimeEntry ; Length ( TimeEntry ) - 2 ) ; Right ( TimeEntry ; 2 ) ; 0 ) )
] ; 
Time ( Mod ( Hour ( theTime ) ; 24 ) ; Minute ( theTime ) ; Seconds ( theTime ) ) 
)

Het is mogelijk om een volledig tijd in te voeren als 10:15:27 oid, maar verder beperkt de functie je tot de invoer van uren en minuten zonder scheidingstekens en seconden.

Enkele voorbeelden:

TimeCorrect ( 023 )		 0:23:00
TimeCorrect ( 15 )		 15:00:00
TimeCorrect ( 537 )		 5:37:00
TimeCorrect ( 11:15:30 ) 11:15:30
TimeCorrect ( 1630 )	  16:30:00
TimeCorrect ( 8 )		   8:00:00
TimeCorrect ( 34:30 )	 10:30:00

Posted

Elke oplossing heeft voor- en nadelen. Technisch vind ik het altijd een uitdaging om zo kort mogelijke berekeningen te maken en dat gaat meestal het best door zo dicht mogelijk bij het oorspronkelijke veldtype te blijven. Dus geen tekstfuncties om de minuten te achterhalen, om een voorbeeld te geven. Het leuke aan datum, tijd en tijdstempel velden is dat het eigenlijk getalvelden zijn. Ik ben van het type (generatie?) die denkt dat mooie functies het snelst en overzichtelijkst zijn. :-)

 

Mvg,

René

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...