Ga naar inhoud
  • 0

Klant id samenstellen


Paul Sondervan

Vraag

Ik ben sinds een aantal maanden in mijn vrije tijd serieus bezig om een FileMaker applicatie te maken.

Lay-outs maken gaat prima, maar nu ben ik aangekomen in het stadium dat ik wat met scripts moet gaan doen.

Dit is voor mij op dit moment nog een behoorlijk witte vlek.

Ik zou graag hulp willen voor de volgende situatie:

Tabellen:
- Klantgegevens
 - Klant_id
 - ...

- Bedrijfsgegevens
 - Bedrijfscode
 - Lopend_jaar
 - Klantvolgnr
 - ...

Het volgende wil ik in een script realiseren.

Bij een nieuwe klant:

- Als Systeemjaar <> Bedrijfsgegevens::Lopend_jaar, dan wordt Bedrijfsgegevens::Lopend_jaar = Systeemjaar en Bedrijfsgegevens::Klantvolgnr = 0

- Bedrijfsgegevens::Klantvolgnr wordt met 1 opgehoogd

- Klant_id wordt opgebouwd uit Bedrijfsgegevens::Bedrijfscode + Bedrijfsgegevens::Lopend_jaar + Bedrijfsgegevens::Klantvolgnr

 

Wie kan mij een eind op weg helpen?

Bij voorbaat dank voor jullie hulp.

Link naar reactie

6 antwoorden op deze vraag

Aanbevolen berichten

  • 0

Ik zou het niet in een script doen, maar als automatische invoer van het veld klant_ID bij het aanmaken van een nieuw record.

Je maakt een veld volgnummer die automatisch 1 ophoogt en een veld klant_ID die wordt berekend uit: Bedrijfscode & Jaar & volgnummer.

 

Als Systeemjaar <> Bedrijfsgegevens::Lopend_jaar, dan wordt Bedrijfsgegevens::Lopend_jaar = Systeemjaar

Dat kan, maar wat als Systeemjaar = Bedrijfsgegevens::Lopend_jaar, wat moet er dan gebeuren?

Link naar reactie
  • 0

De bedoeling is dat er elk jaar weer met volgnummer 1 begonnen wordt.

Als Systeemjaar = Bedrijfsgegevens::Lopend_jaar dan moet het volgnummer met 1 opgehoogd worden.

Als Systeemjaar <> Bedrijfsgegevens::Lopend_jaar dan moet het volgnummer op 0 gezet worden en daarna met 1 opgehoogd.

(meteen op 1 zetten en dan niet ophogen mag ook :wink: )

Link naar reactie
  • 0

Probleem is dat als je een nieuw record aanmaakt er nog geen Bedrijfsgegevens::Lopend_jaar zijn, er is dus niets om met Systeemjaar te vergelijken.

Wat je kunt doen is een globaalveld maken met het huidige jaar.

Zolang (bij het aanmaken van een nieuw record) het systeemjaar gelijk is aan het globaalveld, dan wordt de teller met 1 opgehoogd.

Zodra het systeemjaar anders (altijd groter) is, dan wordt de teller op 1 gezet en wordt het globaalveld aangepast naar het huidige jaar.

 

Succes!

Link naar reactie
  • 0

De tabel met Bedrijfsgegevens is al gevuld.

Mijn bedoeling is om bij het aanmaken van een nieuwe klant de benodigde gegevens uit de Bedrijfsgegevens-tabel halen.

Vervolgens wordt het Klant_id samengesteld en het opgehoogde Klantvolgnr terugschrijven in de Bedrijfsgegevens-tabel.

Na het ophalen van de Bedrijfsgegevens wordt er eerst een controle op het jaar gedaan.

 

Mijn vragen/problemen zijn:

- Hoe haal ik de gegevens op uit de Bedrijfsgegevens-tabel (er is een key), terwijl ik met de Kandidaat-tabel aan het werken ben?

- Hoe schrijf ik vervolgens het opgehoogde Klantvolgnr weer terug in de Bedrijfsgegevens-tabel bij het betreffende bedrijf (o.b.v. de key)?

 

Volgens mij moet dit in een script, maar als het op een andere manier kan, dan hou ik me daar voor open.

Link naar reactie
  • 0

Ik heb de opzet van je database dus verkeerd begrepen, je hebt dus een hele lijst met bedrijven en hoeft in die lijst alleen maar aan te geven wie klant is geworden? En die gegevens komen dan in de tabel klant te staan?

 

Waarom twee tabellen? Als je in Bedrijven aangeeft wie klant is, heb je tabel Klant niet nodig.

En als je het toch gescheiden wilt houden, dan zou ik alle gegevens van Bedrijf naar Klant verplaatsen en verwijderen uit Bedrijven. Maar dat ligt dus aan de opzet en wat je met de gegevens wilt doen.

Link naar reactie
  • 0

Het gaat hier om een onderwijsinstelling.

Bij de bedrijfsgegevens (of afdelingsgegevens) staan naast de gegeven velden ook adresgegevens enz.

De klanten zijn de cursisten.

Steeds de bedrijfsgegevens in het klant-record opnemen levert een enorme redundantie op en dat lijkt me niet gewenst.

Het enige wat ik op dit uit de bedrijfsgegevens nodig heb zijn de velden die ik al eerder genoemd heb om een unieke Klant-id te kunnen samenstellen.

En het opgehoogde volgnummer moet weer teruggeschreven worden in de tabel bedrijfsgegevens.

Link naar reactie

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