Fråga : Skapa beställnings- IDs

Vi har IDs som följer: 20090001 (i stort räkenskapsårplusen 4 siffror)

When som, om det nya året kommer omkring (2011), jag, behöver iDsna automatiskt att starta över på en igen, så den första LEGITIMATIONEN av det ska året är 20100001, det nästa året den ska är 20110001 etc.

Right, nu jag har kodifiera som följer:

Dim som är maxIncident som Variant
Dim maxIncidentID som Variant

If Me.intIncidentID.Value = 0 Then

', får maximat maxIncident incident- nr. incidenttable
= DMax (”[intIncidentID]”, ”tblIncidents”)

', om året i maximat fall numrerar inte är strömåret nollställer därefter numbers, om lämnade, CInt ((maxIncident, 4)) Lämnade, Then
för <>år (datera), maxIncidentID = CInt ((år (datera), 4)) + samma år så förhöjning för 1
annars 'vid maxIncidentID = DMax för 1
(” [intIncidentID] ”, ”tblIncidents” som lämnas (maxIncident, 4)) + 1

avslutar If

'värderar på form
Me.intIncidentID.Value = maxIncidentID

End If

Problem fodrar av kodifierar sätta en klocka på.  Vad jag behöver, är för att LEGITIMATIONEN ska ha 3 ledande nollor, för den 1… rätten nu det nya året + den så högra 1en nu dess 2011 men mig behöver den så därefter det något att säga 20100001
" klar "

Svar : Skapa beställnings- IDs

försök som detta kodifierar


Dunkelt newVal som stränger, curVal som stränger, seq som stränger, maxIncidentID
Om DMax (”[intIncidentID]”, ”tblIncidents”) > 0 därefter
    curVal = DMax (”[intIncidentID]”, ”tblIncidents”)
 'testa, om dagen är samma
    Om lämnat (curVal, 4) = Cstr (året (datera)), Därefter
    seq = formatera (curVal rätt (, 4) + 1, ”0000”)
    newVal = år (datera) & seq
        Annars
    newVal = år (datera) & ”0001”,
    Avsluta om
    Annars
    newVal = år (datera) & ”0001”,
Avsluta om
    maxIncidentID=newVal
Andra lösningar  
 
programming4us programming4us