veld invullen bij acFormAdd

Status
Niet open voor verdere reacties.

JEPEDEWE

Terugkerende gebruiker
Lid geworden
14 jun 2006
Berichten
1.682
Ik maak een record aan nadat ik op een knop op een formulier drukte.
Ik doe dit via de code:

Code:
    Dim sArgs As String
    DoCmd.OpenForm "Fiche_nieuw", datamode:=acFormAdd, OpenArgs:=Me.txtSearch & "|Nieuwe Fiche"

Het formulier opent zich en ik kan de vereiste velden invullen.
Echter,
Elk record krijgt een unieke kode
Deze kode wordt in een veld van het record ingevuld en bewaard
Deze kode geef ik niet handmatig in, ze wordt op basis van programmatuur, aangemaakt

de kode wordt als volgt opgebouwd (en schiet me niet dood, maar zo is het en mijn ganse systeem is hierrond opgebouwd, dus ik KAN niet anders dan het zo blijven doen)

Ik heb een tabel die een soort van teller bevat, eens de teller op 100 komt dan zet het systeem de tellerwaarde terug op 0

Code:
If TB2!volgnummer = 100 Then
 TB2.Edit
 TB2!volgnummer = 0
 TB2.Update
End If

De kode start met de datum van vandaag... dit betekent dat de kode voor een nieuw record er vandaag zo uit ziet: 15021812

Hoe krijg ik u deze kode in het record dat ik via acFormAdd heb aangemaakt

(als iemand een betere manier heeft om de Kode te vormen... laat maar horen)

Bedankt
JP
 
(en schiet me niet dood, maar zo is het en mijn ganse systeem is hierrond opgebouwd, dus ik KAN niet anders dan het zo blijven doen)
Dat is niet waar wat je hier zegt; handmatige sleutelcode kun je te allen tijde met één bijwerkquery aanpassen mocht je een andere methodiek wensen. Zeker als je de relatie hebt ingesteld op <Gerelateerde records bijwerken> is dat met één query gedaan.

(als iemand een betere manier heeft om de Kode te vormen... laat maar horen)
Die is er uiteraard. Je hebt neem ik aan een functie die het nieuwe nummer genereert; zet die als Standaardwaarde in het veld CODE en je bent klaar. Geen reden om erg ingewikkeld te gaan doen :).
 
Goed idee can die standaardwaarde, maar, ik moet een deel van de code eerst uit een andere tabel halen.. hoe schrijf ik dan het resulaat van “datum&waarde” in de standaardwaarde.. kan je dat eens concreet maken?
 
Zoek eens in dit forum naar 'volgnummer'. Dan zie je hoe zo'n functie werkt. In essentie werkt het zo: de functie haalt uit een of meer tabellen het gewenste op te hogen nummer op, en verhoogt dat met 1. De uitkomst van de functie is dus een nieuw nummer. Ik heb meerdere varianten gepost, want de vraag over volgnummers komt regelmatig terug. De simpelste variant is een volgnummer dat jaarlijks opnieuw begint. Iets lastiger is een nummer dat op basis van een klantnummer ophoogt. Maar alles is mogelijk.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan