Jerry Posted March 9, 2008 Posted March 9, 2008 (edited) In december vorig jaar was er een topic van Masja over het rekenen met datums. Ik ben aan het puzzelen gegaan met alle aanwijzingen maar zie nu door de mogelijkheden de oplossing niet meer. Ik heb een datum 1-5-2008. In een volgend record wil ik nu de maand +1 doen. Het dagnummer (2) moet hetzelfde blijven. Het enige referentieveld dat ik heb is de datum. Ik heb iets geprobeerd maar nu krijg ik een vraagteken. Weet iemand raad? Datum.fp7 Edited March 14, 2008 by Guest Quote
0 Arnoud Posted March 9, 2008 Posted March 9, 2008 cNieuweDatum = Date ( Month ( datum ) + 1; Day ( datum ) ; Year ( datum ) ) Datum = (AutoEnter optie: cNieuweDatum) Jouw calculatie haalt alleen maar de maand uit de datum en dat is niet genoeg helaas. gr. Arnoud Quote
0 Jerry Posted March 9, 2008 Author Posted March 9, 2008 Ok, je pakt em dus helemaal, stap voor stap. Klinkt goed, ik ga het proberen. Dank je Quote
0 Arnoud Posted March 10, 2008 Posted March 10, 2008 Zorg er voor dat de calculatie een global is. Als je dit niet doet moet er een relatie aan te pas komen die de waarde van de vorige record invoegt, maar dat gaat wat te ver meen ik. Kijk ook eens in de helpfile bij de datumfuncties daar leer je veel van. gr, Arnoud Quote
0 Jerry Posted March 10, 2008 Author Posted March 10, 2008 De functie moet de maand van de datum van het vorige record +1 doen: GetNthRecord (Regels_secured::Datum;Get( RecordNummer )-1)+Date ( Month ( Regels_secured::Datum ) + 1; Day ( Regels_secured::Datum ) ; Year ( Regels_secured::Datum ) ) Hier zit echter nog een fout in want ik krijg vraagtekens Quote
0 Arnoud Posted March 10, 2008 Posted March 10, 2008 Jouw code doet foutief het volgende: datum (vorige record)+ datum (huidige record plus een maand). En twee datums kan je niet optellen, vandaar het vraagteken. Als je de calculatie in een global stopt hoef je je niet druk te maken uit welke record je het antwoord haalt. Ik heb even snel een paar voorbeeldjes in elkaar geflanst die zo te zien doen wat je vraagt. gr, Arnoud Edit: voorbeeldjes aangepast datum_maand.fp7 Quote
0 Jerry Posted March 11, 2008 Author Posted March 11, 2008 Bedankt voor je zeer uitgebreide uitleg. Ik ga ermee aan het puzzelen omdat ik ipv een autoenter een scriptmatige invoer heb. Ik kan hier zeker mee uitkomen vooral omdat je 4 voorbeelden hebt gemaakt, super! Dank nogmaals en ik zal mijn resultaat posten. Groet, Jerry Quote
0 Jerry Posted March 11, 2008 Author Posted March 11, 2008 Hey Arnoud, je hebt me op de goeie weg gezet! Ik ben aan het puzzelen gegaan en het was eigenlijk jouw vorige bericht waarin je precies aangaf wat ik fout deed dat me op de volgende oplossing bracht: Let ( x=GetNthRecord ( Regels_secured::Datum ; Get(RecordNummer)-1 ); Date ( Month ( x ) + 1; Day (x ) ; Year ( x ) )) Als je jouw vorbeeldjes goed leest komt deze functie namelijk naar voren echter dan in een autoenter berekening. Leuk dit, dank je voor 't meedenken Quote
0 Arnoud Posted March 11, 2008 Posted March 11, 2008 Chique formule hoor! Je wist natuurlijk al dat je uitgangpunt, namelijk dezelfde dag met een volgende maand niet altijd klopt. Ik neem aan dat je de datum exact 1 maand wilde opschuiven. Het is natuurlijk geen bezwaar om je veld, m.b.v. een SetField in een script te vullen, wel zo overzichtelijk om alle code in een script te hebben. gr., Arnoud Quote
Question
Jerry
In december vorig jaar was er een topic van Masja over het rekenen met datums.
Ik ben aan het puzzelen gegaan met alle aanwijzingen maar zie nu door de mogelijkheden de oplossing niet meer.
Ik heb een datum 1-5-2008.
In een volgend record wil ik nu de maand +1 doen. Het dagnummer (2) moet hetzelfde blijven.
Het enige referentieveld dat ik heb is de datum.
Ik heb iets geprobeerd maar nu krijg ik een vraagteken.
Weet iemand raad?
Datum.fp7
Edited by Guest9 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.