milan2006 Posted November 10, 2008 Posted November 10, 2008 Heb in een veld de volgende berekening: Let(cLeeftijd = Date( Month( Geboortedatum ) ; Day( Geboortedatum ) ; Year( Get ( HuidigeDatum ) ) ) ; (Year( Get ( HuidigeDatum ) ) - Year( Geboortedatum ) - 1 ) + (Get ( HuidigeDatum ) >= cLeeftijd) )+1 Deze berekening moet worden uitgevoerd als waarde veld A=0 en als waarde veld A>0 dan Let( cLeeftijd = Date( Month( Geboortedatum ) ; Day( Geboortedatum ) ; Year( Get ( HuidigeDatum ) ) ) ; (Year( Get ( HuidigeDatum ) ) - Year( Geboortedatum ) - 1 ) + (Get ( HuidigeDatum ) >= cLeeftijd) ) Heb het geprobeerd met de if functie en case functie maar krijg constant de melding te veel parameters. Wie kan me helpen. Quote
0 BDK Posted November 11, 2008 Posted November 11, 2008 meestal een kwestie van duidelijker opschrijven zodat je kunt zien welk beginhaakje bij welk eindhaakje hoort en welke puntcomma bij welke functie. bijvoorbeeld zo: case ( // case 1 A=0 ; // berekening 1 Let ( cLeeftijd = Date ( Month ( Geboortedatum ) ; Day ( Geboortedatum ) ; Year ( Get ( HuidigeDatum ) ) ) ; ( Year ( Get ( HuidigeDatum ) ) - Year ( Geboortedatum ) - 1 ) + ( Get ( HuidigeDatum ) >= cLeeftijd ) ) + 1 ) // end let ; // case 2 A>0 ; // berekening 2 Let ( cLeeftijd = Date ( Month ( Geboortedatum ) ; Day ( Geboortedatum ) ; Year ( Get ( HuidigeDatum ) ) ) ; ( Year ( Get ( HuidigeDatum ) ) - Year ( Geboortedatum ) - 1 ) + ( Get ( HuidigeDatum ) >= cLeeftijd ) ) // end let ) // end case ik heb in je berekening overigens >= vervangen door ≥ en ik heb niet gecontroleerd of de berekening geaccepteerd wordt door filemaker. groet, BDK Quote
0 milan2006 Posted November 11, 2008 Author Posted November 11, 2008 Beste BDK, Bedankt voor het meedenken maar krijg nog steeds de melding "Hier wordt een operator verwacht". en dan wordt het laatste deel geselecteerd. case ( // case 1 cDagenVerwijderdVerjaardag>0 ; // berekening 1 Let ( cLeeftijd = Date ( Month ( Geboortedatum ) ; Day ( Geboortedatum ) ; Year ( Get ( HuidigeDatum ) ) ) ; ( Year ( Get ( HuidigeDatum ) ) - Year ( Geboortedatum ) - 1 ) + ( Get ( HuidigeDatum ) >= cLeeftijd ) ) + 1 ) // end let ; // case 2 cDagenVerwijderdVerjaardag=0 ; // berekening 2 Let ( cLeeftijd = Date ( Month ( Geboortedatum ) ; Day ( Geboortedatum ) ; Year ( Get ( HuidigeDatum ) ) ) ; ( Year ( Get ( HuidigeDatum ) ) - Year ( Geboortedatum ) - 1 ) + ( Get ( HuidigeDatum ) >= cLeeftijd ) ) // end let ) // end case Quote
0 BDK Posted November 13, 2008 Posted November 13, 2008 een haakje te veel in deze regel: ( Year ( Get ( HuidigeDatum ) ) - Year ( Geboortedatum ) - 1 ) + ( Get ( HuidigeDatum ) >= cLeeftijd ) ) + 1 deze wordt wel geaccepteerd: ( Year ( Get ( HuidigeDatum ) ) - Year ( Geboortedatum ) - 1 ) + ( Get ( HuidigeDatum ) >= cLeeftijd ) + 1 groet, bdk Quote
0 milan2006 Posted November 15, 2008 Author Posted November 15, 2008 Bedankt BDK. Ben nu ca twee maanden bezig met Filemaker wordt steeds leuker en dank zij de leden van clarify ook steeds duidelijker. Quote
Question
milan2006
Heb in een veld de volgende berekening:
Let(cLeeftijd = Date( Month( Geboortedatum ) ; Day( Geboortedatum ) ; Year( Get ( HuidigeDatum ) ) ) ;
(Year( Get ( HuidigeDatum ) ) - Year( Geboortedatum ) - 1 ) + (Get ( HuidigeDatum ) >= cLeeftijd) )+1
Deze berekening moet worden uitgevoerd als waarde veld A=0 en als waarde veld A>0 dan
Let( cLeeftijd = Date( Month( Geboortedatum ) ; Day( Geboortedatum ) ; Year( Get ( HuidigeDatum ) ) ) ;
(Year( Get ( HuidigeDatum ) ) - Year( Geboortedatum ) - 1 ) + (Get ( HuidigeDatum ) >= cLeeftijd) )
Heb het geprobeerd met de if functie en case functie maar krijg constant de melding te veel parameters.
Wie kan me helpen.
4 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.