Newsgroup: it.comp.appl.access
Titolo: Generatore di codice

Buona sera ai presenti,
nella mia form M_Presenza_Nuova, ho il controllo IDVisita (tipo testo) che 
ha come valore predefinito:
-------------------
="V" & Format(Date();"aa") & "-" & 
Format(IIf(IsNull(DMax("IdVisita";"TbAE_Presenze_Storico";"IdVisita like '?" 
& Format(Date();"aa") & 
"-????'"));1;Right(DMax("IdVisita";"TbAE_Presenze_Storico";"IdVisita like 
'?" & Format(Date();"aa") & "-????'");4)+1);"0000")
------------------------
Vorrei però, che il nuovo codice venga generato sul click del mio pulsante, 
come verrebbe il codice? Va inserito in un modulo e quindi richiamato 
sull'evento?
Vi ringrazio in anticipo!
.. notte a tutti.
Napoleone 

 ha scritto nel messaggio
news:Zhnmf.29378$S6.5...@twister2.libero.it...

ciao Napoleone,
prova su evento click del tuo command button :
me.idVisita =  "V" & Format(Date, "aa") & "-" & Format( _
IIf(IsNull(DMax("IdVisita", "TbAE_Presenze_Storico", "IdVisita like '?" &
Format( _
Date, "aa") & "-????'")), _
1, Right(DMax("IdVisita", "TbAE_Presenze_Storico", "IdVisita like & _'?" & _
Format(Date, "aa") & "-????'"), 4) + 1), "0000")
non l'ho provata, speriamo bene !
buona notte a te :-)


Ciao Sandro,
adesso sei inconfondibile! Bene.
Grazie per il suggerimento ma...
mi segnala errore di compilazione:
errore di sintassi
al debug mi evidenzia tutto il codice in rosso.
PS:
Vorrei cambiare il generatore del codice progressivo, in quanto il db verrą 
condiviso da tre pc, e quindi col generatore di codice sul valore 
predefinito rischio di avere casini, cosa mi dici a proposito.
Ciao
Napoleone 

 Napoleone
ciao, a domani.
Sandro.

 ha scritto nel messaggio 
news:439a18e8$0$16217$4faf...@reader3.news.tin.it...

Ciao Sandro,
ho riprovato e continua segnalarmi :
errore di sintassi (operatore mancante) nell'espressione della query 
'idVisita like &_' aa-????.
Ciao
Napoleone


Ciao Napoleone,
infatti, le funzioni sui domini prevedono un criterio in cui dici  : campo,
tabella, criterio che viene passato con "[criterio]='" & ......& "'" in caso
sia stringa.
Passarlo con il like ti dą errore per quel motivo.
Ma davvero impostandolo come valore predefinito non ti dava errore ?
In pratica, siccome non capisco cosa fa quel Format(Date, "aa") ci dici che
tipo di numerazione progressiva ti serve ?
Magari troviamo la strada ...
Ciao, Sandro.

 ha scritto nel messaggio 
news:439b083a$0$16202$4faf...@reader3.news.tin.it...

Carissimo,
quel Format(Date, "aa") mi restituisce la data nel formato 05 (che sta per 
l'anno in corso).
....
Impostando la funzioncina come valore predefinito,
del mio controllo contatore, mi restituisce un progressivo
nel seguente formato: V05-2366.
...
Stavo comunque pensando di fare diversamente e cioč,
dopo aver generato il nuovo codice progressivo, passarlo "SUBITO" con una 
query in una tabella esterna in modo che tutti gli utenti collegati in rete, 
al db, non si troveranno nella condizione di aver generato lo stesso ID..
Ciao
Napoleone 

basic lo digerisca meglio
Ciao
 Pino 

 ha scritto nel messaggio 
news:439be9a1$0$1149$5402...@news.sunrise.ch...

Ciao Pino,
hoseguito il tuo consiglio ma il messaggio di errore cambia poco:
------
errore di sintassi (operatore mancante) nell'espressione della query
'idVisita like &_' 05-????.
------
Ciao e grazie.
Napoleone

 Napoleone
Guarda se ti puň servire, la mia funziona
"R" & Format(Date, "yy") & "/" &
Format(IIf(IsNull(DMax("RiferimentoFattura", "Ordini", 
"RiferimentoFattura like '?" & Format(Date, "yy") & "/????'")), 100,
Right(DMax("Riferimentofattura", 
"Ordini", "RiferimentoFattura like '?" & Format(Date, "yy") & "/????'"),
4) + 1), "0000")
Ciao
Pino
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ha scritto nel messaggio 
news:Zhnmf.29378$S6.5...@twister2.libero.it...

Scusa Napoleone ,mi potresti spiegare cosa fa questo codice?
Io ho capito che la prima parte ti genera V05- ma la seconda?
Ti controlla sulla tabella TbAE_Presenze_Storico se è presente...?
Morgan 

 ha scritto nel messaggio 
news:439d89f2$0$7328$4faf...@reader4.news.tin.it...

buona sera a tutti e ... scusate il ritardo con cui rispondo!
per rispondere a Morgan:
La seconda parte serve a creare il "Progressivo" es. 0001; 0002 ecc..
Ciao
Napoleone