Jump to content
  • 0

Formule berekend veld aanpassen


tdesmet

Question

Hallo,

 

Kan iemand hier even helpen.

 

Ik heb een veld status, een veld Datum gepland en een veld dat uitgevoerd.

 

Het veld status wijzigt in functie van het geplande datum veld.

Indien leeg dan staat er Open, indien gevuld staat er Ingepland.

Nu wil ik de formule aanpassen dat wanneer het veld Uitgevoerd is ingevuld, de status op afgewerkt staat.

Maar het lukt me niet echt.

 

Hier is de formule van mij berekend veld.

 

If (IsEmpty ( Datum gepland ); "Open"; If (Datum gepland >0; "Ingepland"))

 

Alvast bedankt.

Link to comment

14 answers to this question

Recommended Posts

  • 0

Kijk ook even in de help van FM ... een case-statement kan je zolang maken als je wilt ..... zodra FM een conditie tegenkomt die "waar" is, voert ie de berekening direct na de conditie uit en stopt de verdere afhandeling. Een verschrikkelijk handige functie!

Link to comment
  • 0

Misschien moet mijn vraag op een andere manier dan via die case, maar ik zou willen dat het record gedupliceerd wordt naar een nieuw werkorder, maar dan met een planningsdatum 30 dagen verder. Moet dit via die Case?

 

Even uitleggen wat er belangrijk is.

 

Als ik het veld "datum uitgevoerd" invul met de uitvoeringsdatum, dan krijg ik de status Afgewerkt.

Een werkorder dat het type "Service bezoek" (veld heeft de naam Type Werkorder) heeft zou dan de volgende actie moeten geven:

 

Nieuw werkorder maken voor die klant (er is een lookup veld Klantnr)

Maar dan met een nieuwe "Datum gepland", die 30 dagen later is.

 

Zo kan bekom ik dan steeds een overzicht van de volgende uit te voeren opdrachten.

Link to comment
  • 0

Dus bij dupliceren het veld "datum uitgevoerd" leegmaken met:

Set-Field [ datum uitgevoerd ; "" ]

en in het veld "Datum gepland" de waarde die jij wilt. Filemaker is daarbij heel tolerant wat betreft de omgang met data (meervoud van datum). Voorbeeld

Get ( CurrentDate ) + 30

geeft in een datumveld keurig vandaag over 30 dagen als datum. Je kan hetzelfde doen met de inhoud van een veld ... gewoon +30 in de formule geeft keurig resultaat.

Je kan ook de Date() formule gebruiken om een bepaalde datum te berekenen. Bijvoorbeeld de laatste dag van de huidige maand:

Date ( Month ( Get ( CurrentDate ) ) + 1 ; 0 ; Year ( Get ( CurrentDate ) ) )

Link to comment
  • 0

Ik probeer je te volgen, maar ik ben vrij nieuw in FM en gebruikte hiervoor steeds MS Acces.

Hier werkt het een beetje anders natuurlijk.

 

Kan je misschien aangeven waar ik jou stappen in moet verwerken?

Ik ben nog niet zo mee met die scripts zie je.

Link to comment
  • 0

Als je hiervoor Acces gebruikte dan ben ik benieuwd hoe je dit daar voor elkaar kreeg en dat je het lastig vind in FMP?

In MSACCES zul je ook een variant van Date ( Month ( Get ( CurrentDate ) ) + 1 ; 0 ; Year ( Get ( CurrentDate ) ) ) gebruiken normaal gesproken?

Link to comment
  • 0
Ik ben nog niet zo mee met die scripts zie je.
maar dat is de plek waar je dit moet gebruiken. Die scripts zijn ook helemaal niet zo moeilijk, want in feite mimiek je daar wat je normaal (moeizaam) handmatig zou doen.

Dus, open scriptmaker, kies voor "nieuw" geef dat script een naam, open het script en kies uit de linkerkolom achtereenvolgens de scriptstappen: duplicate record, set-field, nog een set-field en commit-record. Dubbelklik op de eerste set field en wijs daar het veld uitgevoerd aan en vul "" in bij de waarde, dubbelklik op de tweede set-field en wijs daar het veld gepland aan en vul,de door jou gewenste formule daar in. Enter en dan ben je klaar. :)

Eitje toch?

Link to comment

Join the conversation

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

Guest
Answer this question...

×   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...