Ga naar inhoud
  • 0

Volgnummer koppelen aan datum


Saskia

Vraag

Geplaatst:

Wie weet een oplossing voor mijn probleem:

Ik genereer in een veld een unieke code door een samenvoegveld die er als volgt uit ziet: 113/<>/<>

 

:?: Nu wil ik graag dat het volgnummer iedere maand bij 001 begint. Kan ik dat maken en uiteraard zo ja, hoe? :?:

 

Bedankt voor het meedenken,

Saskia

5 antwoorden op deze vraag

Aanbevolen berichten

  • 0
Geplaatst:

Maak twee velden Maandnummer en Volgnummer in een setting-bestand (een gerelateerd bestand met één record) waarin je het maandnummer van de actuele maand bewaard. Er zal in kunnen staan "200504".

 

En vervolgens bepaal je het volgnummer met een scriptje:

 

If Settings::Maandnummer <> (Year(status(currentdate) * 100) + Month(Status(Currentdate))
 Set Settings::Maandnummer = (Year(status(currentdate) * 100) + Month(Status(Currentdate))
 Set Settings::Volgnummer = 0
EndIf
Set Settings::Volgnummer = Settings::Volgnummer + 1
Set Code = "113/<>/" & Settings::Volgnummer

 

Er zullen ook wel andere manieren zijn. Het voorbeeld gaat uit van Filemaker 6, in Filemaker 7 heten de statusvelden anders.

 

Veel succes

  • 0
Geplaatst:

Je kunt het ook bereiken door in hetzelfde bestand te blijven.

 

Maak een veld aan dat de Maandnummer geeft.

Hiermee maak je een relatie Maandnr::Maandnr.

Wat je nu wil bereiken is dat het volgnummer het max van deze relatie neemt + 1.

FM zal janken dat dit niet gaat omdat het een circular is.

Sorteer de relatie op volgnummer 'descending'. Dit zorgt ervoor dat

maandnr::volgnummer je altijd de hoogste waarde zal geven en die waarde hebben we nodig.

Maak een veldje bij: previous dat een lookup uitvoert via de relatie, met default 0, en laat volgnummer een berekening zijn previous + 1.

 

Indien je meer dan een jaar dient te hebben, voeg je het jaartal toe aan het maandnummerveld.

 

De lookup zal de circularity breken en het ook mogelijk maken dat previous kan geindexeerd en gestored worden.

 

Beter zou eigenlijk zijn het geheel te scripten bij het aanmaken van records.

Je hebt dan nog steeds je maandnummer en je volgnummer nodig en de relatie, maar geen previous, en volgnummer is een gewoon numberfield, geen calculatie.

Voeg gewoon een stap toe aan het script:

Set Field(volgnummer, Case(Maandnr::volgnummer > 0;volgnummer+1;1)

 

HTH

Serial+1.fp5

Serial+1.zip

  • 0
Geplaatst:

Heel erg bedankt voor jullie antwoorden.

Maar nog een vraagje Jean. Ik heb dingen gedownload, maar hoe krijg ik die nu in mijn filemaker bestand?

Vast heel simpel, maar ja, ik ben nog heel groen in filemaker.

 

Saskia

  • 0
Geplaatst:
...heb dingen gedownload, maar hoe krijg ik die nu in mijn filemaker bestand?

 

Klakkeloos overpennen was zelfs in de schoolperiode niet zo'n goede oplossing....(mijn studentjes proberen het ook altijd.... ...maar dat is dan zonder mijn 'evil mind' gerekend :twisted: , ze weten nu wel beter :D ) (en neen, in het voorbeeldbestandje zitten geen valkuilen.... 8) )

 

Het vraagt een beetje graafwerk. Het belangrijkste is het geheel te begrijpen.

 

Maak een copy van het bestandje en graaf in het innerlijke om te zien hoe het in mekaar steekt. Dit is mijn behangpapierdeel....

 

Je schrijft in je eigen woorden wat, waar, hoe, waarom, welk, vanwaar komt en gaat....

 

Indien er iets fout loopt, geen man (vrouw) overboord, gewoon nieuwe copy maken....

 

Eens je alles uitgetekend hebt op papier, krijg je een inzicht hoe het werkt. Nu pas je alles aan aan je eigen bestand.

Veld x in mijn bestand = Veld y in voorbeeld bestand enz.

 

Probeer in je eigen bestand het geheel terug op te bouwen met je aantekeningen als basis. Indien het juist werkt, ben je al een stapje verder....

 

De volgende keer je de techniek nodig hebt, consulteer je je aantekeningen, de daarop volgende keer doe je het uit het hoofdje....weer een stapje hoger op de FM ladder.

 

Zit je vast met iets....volop prachtmensen die je willen/zullen helpen hier....

 

HTH

Doe mee aan dit gesprek

Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.

Gast
Beantwoord deze vraag...

×   Geplakt als verrijkte tekst.   Plak in plaats daarvan als platte tekst

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...