Newsgroup: it.comp.appl.access
Titolo: Incremento automatico cosi' mi piaci.......

Ciao a tutti sono Dino.
Vi vorrei porre un quesito .Con l'espressione seguente:=Nz(DMax("[Num
doc]";"[Tabella fatture prodotti]");0)+1.
Riesco ad incrementare il num fattura e lo posso anche modificare.Il
problema e' il cambio anno.
Infatti il mio DB fa il cambio anno automatico ma l'incremento del num
fatt. no.
Sul nostro sito ho trovato l'espressione:
=IIf(IsNull(DCount("TuoCampoTesto";"TuaTabella";"TuoCampoTesto like
'*/" & Format(Date();"aa") &
"'"));'1';DCount("TuoCampoTesto";"TuaTabella";"TuoCampoTesto like
'*/"
& Format(Date();"aa") & "'")+1) & "/" & Format(Date();"aa")
che azzera ogni inizio anno il tutto.Ok. Io se e' possibile vorrei
invece tenere l'espressione sopra riportata e magare implementarla con
un po' di VBA per far sì che ad inizio anno si riparta da 1.
Non mi dite che ci vuole la bacchetta magica.
STRA....grazie in anticipo.
Saluti Dino

 Saluti Dino
se hai un controllo in cui salvi la data corrente prova ad aggiungere:
"year(data)= "& Year(NomeTuoControllo)
diventera' cosi:
=Nz(DMax("[Numdoc]";"[Tabella fatture prodotti]"; "year(NomeCampoData)= "& 
Year(NomeTuoControllo));0)+1
-- 
Ciao
Geppo 

 - Mostra testo tra virgolette -
Ciao Geppo sono Dino.
Grazie per il consiglio.Ho pero' riscontrato dei problemi.
Ti spiego come gestisco il cambio anno automatico.Come prima cosa
Nella "Query fatture" sono andato a crearmi il Campo Anno (realizzato
dir nella query) Anno:Year([Data doc]).Ovviamente come risultato la
Query mi da l'anno corrente(Es 2008).Nella riga criteri poi sono
andato ad inserire il seguente ciclo IIF: IIf([Forms]![Cambio anni
precedenti]![AA]>0;[Forms]![Cambio anni precedenti]![AA];[Forms]!
[Cambio anno]![Cambio anno]).
Cioe' ho creato una tab con il campo Cambio anno dove viene calcolata
la data odierna.L'altra condizione invece e' una maschera con il
controllo [AA] dove posso scegliere gli ann ipassati e rip. il DB
all'anno voluto.
Come faccio con questa impostazione ad inserire il tuo consiglio.
Grazie ancora
Saluti Dino

 - Mostra testo tra virgolette -
Geppo ciao sono sempre Dino.
Perdona le domande banali!!!!
Se dovessi usare l'altra espressione :
=IIf(IsNull(DCount("TuoCampoTesto";"TuaTabella";"TuoCampoTesto like
'*/" & Format(Date();"aa") &
"'"));'1';DCount("TuoCampoTesto";"TuaTabella";"TuoCampoTesto like
'*/"
& Format(Date();"aa") & "'")+1) & "/" & Format(Date();"aa")
Il "contatore" di questa funzione e' illimitato cioe' 1000/08 oppure
se si arriva a 10.000/08 non cambia nulla vero????Che domandaccia
ehhhh....
Ancora ciao

>> con un po' di VBA per far sě che ad inizio anno si riparta da 1.

Non č che abbia capito molto, comunque potresti provare ad inserire come 
criterio della Function Dmax
"& year([Forms]![Cambio anno]![Cambio anno])
-- 
Ciao
Geppo 

>>> con un po' di VBA per far sě che ad inizio anno si riparta da 1.

Credo proprio di si, atteso che si tratta di un dato tipo testo.
-- 
Ciao
Geppo

>Sul nostro sito ho trovato l'espressione:
Sul NOSTRO sito quale?...
...
...
guarda sul mio (e di MA) vą... c'č proprio l'esempio che cerchi! lo misi 
tempo addietro :
http://www.accessgroup.it/HomeArgomenti.asp?ID=126&Oggetto2=DB%20Fatturazione
;-)
-- 
---
Ciao
Pablitomf (Maurizio Facciuti)
Web Master 
www.accessgroup.it
 

 Web 
Masterwww.accessgroup.it
Grazie mille super Publi.
La memoria mi inganna.Comunque quando parlavo del nostro sito parlavo
del "sito comune" e il nostro non vuole indicare ....Lo realizzato io
ma io molto modestamente attingoe imparo.
Ottimo anche il vostro e grazie per il linkconsiglio.
Ciao Dino

 - Mostra testo tra virgolette -
Grazie Geppo provo e se h odei problemi ti rompo(spero di no) le
scatole informatiche!!
Saluti Dino

 >>>> con un po' di VBA per far sì che ad inizio anno si riparta da 1.

Ciao Geppo ho dei problemi con l'espressione :
=IIf(IsNull(DCount("TuoCampoTesto";"TuaTabella";"TuoCampoTesto like
'*/" & Format(Date();"aa") &
"'"));'1';DCount("TuoCampoTesto";"TuaTabella";"TuoCampoTesto like
'*/"
& Format(Date();"aa") & "'")+1) & "/" & Format(Date();"aa")
Se elimino una qualsiasi fattura non mi funziona piu' l'incremento.
Devo cioe' aggiornare tutti i numeri per farlo funzionare :Es:
Fatture 01/08 - 02/08 - 03/08 cancello la 01/08. Non mi passa alla
04/08,devo trasformare la 02/08 in 01/08 e la 03/08 in 02/08.Facendo
cosi' cliccando su nuovo inserimento passo alla 03/08 e cosi'.
Secondo te' c'e' un rimedio.
Grazie in anticipo
Saluti Dino

Ciao Geppo ho dei problemi con l'espressione :
=IIf(IsNull(DCount("TuoCampoTesto";"TuaTabella";"TuoCampoTesto like
'*/" & Format(Date();"aa") &
"'"));'1';DCount("TuoCampoTesto";"TuaTabella";"TuoCampoTesto like
'*/"
& Format(Date();"aa") & "'")+1) & "/" & Format(Date();"aa")
Se elimino una qualsiasi fattura non mi funziona piu' l'incremento.
Devo cioe' aggiornare tutti i numeri per farlo funzionare :Es:
Fatture 01/08 - 02/08 - 03/08 cancello la 01/08. Non mi passa alla
04/08,devo trasformare la 02/08 in 01/08 e la 03/08 in 02/08.Facendo
cosi' cliccando su nuovo inserimento passo alla 03/08 e cosi'.
Secondo te' c'e' un rimedio.
Grazie in anticipo
Saluti Dino
--------------------------------
Risposta :
ma quel mio demo, lo hai visto si o no?


>>>>> implementarla con un po' di VBA per far sě che ad inizio anno si

Invece di usare la "dcount" prova ad usare il "dmax".
-- 
Ciao
Geppo 


A Dino, me sa che se fa prima se segui il consiglio di Pablitomf.
-- 
Ciao
Geppo 

 >>>>>> implementarla con un po' di VBA per far sì che ad inizio anno si

Cioa Geppo sono Dino (sono rientrato al lavoro9
Ho provato con Il DMax ma mi da errore.
Come se'' po fa''''''....................
Saluti Dino

 Saluti Dino
Hai letto qualche post fa cio' che ti ha indicato Pablitomf?
-- 
Ciao
Geppo 


Ciao Geppo si ho letto il post.Il suo DB e' stupendo ma non toreo
(forse solo io) la risposta al mio quesito.
Volendo usare questa espressione se cancello un record mi rimane il
problema sopra descritto.
Il Dmax mi da errore forse perche' la proprieta' del campo e' Testo
Ciao Dino

 - Mostra testo tra virgolette -
Cioa Geppo sono sempre io Come ti dicevo il l'espressione trovata sul
sito di pubb e' ottima ma ni segnala errore.
Con questa espressione:
=IIf(IsNull(DCount("TuoCampoTesto";"TuaTabella";"TuoCampoTesto like
'*/" & Format(Date();"aa") &
"'"));'1';DCount("TuoCampoTesto";"TuaTabella";"TuoCampoTesto like
'*/"
& Format(Date();"aa") & "'")+1) & "/" & Format(Date();"aa")
ottengo ad esempio 01/08 mentre se sostituisco il Dcount con il dMax
mi da solo errore.
Io invece gradirei avere come formato non solo in num ma anche la data
Ciao grazie


Dino, se mi dai la tua mail ti invio un db con cui si possono creare i campi 
contatore come vuoi tu; avrei voluto segnalarti il link pero non ricordo da 
dove l'ho scaricato.
-- 
Ciao
Geppo 

 Ciao grazie
Ciao Dino
provala cosi:
=Format(IIf(IsNull(DMax("[NomeCampo]";"[NomeTabella]";"NomeCampo like
'??/" & Format(Date();"aa") & 
"'"));1;Left(DMax("[NomeCampo]";"[NomeTabella]";"num like
'??/" & Format(Date();"aa") & "'");2)+1);"00") & "/" & Format(Date();"aa")
-- 
Ciao
Geppo


Ciao Geppo sono Dino .avevo commesso un errore di
sintassi .L'espressione e' perfetta.
riconfermo "GEPPO .... IL GRANDE"
Alla prossima
Saluti Dino


Pero', non ti ho ancora detto che il contatore si ferma a 100/Anno.
Se vuoi un numero piu' alto devi aumentare gli "0" i "?" e il numero passato 
a Left.
-- 
Ciao
Geppo

 - Mostra testo tra virgolette -
Grazie Geppo per l'ulteriore consiglio. Per aumentare il contatore a
999 devo mettere 3 000 e 3 ??? e cos' via.
E' il num del Left che non ho ben capito.
Saluti Dino e ancora grazie.
PS:Ho appena consigliato (probabilmente lo vedrai )ad un nostro
"collega" la tua soluzione.

 "collega" la tua soluzione.
Perfetto questo è lo spirito del NG.
-- 
Ciao
Geppo


Geppo grazie avrei bisogno (sempre se tu lo vuoi) di farti visionare
una problematica particolare.La mia mail e' 
verreng...@alice.it
posso avere la tua .
Grazie di tutto
Saluti Dino

 Saluti Dino
Dino, mi farebbe veramente piacere poterti aiutare, ma io oltre a non avere 
le "competenze tecniche" , non faccio neanche' questo mestiere;
a tempo libero mi piace partecipare al NG, ma per puro divertimento/svago.
-- 
Ciao
Geppo 

 Geppo
Ok Geppo riguarda solo una dritta su alcune righe di codice :Magari
per te e' una sciocchezza.


Ma allora perchè non posti il problema sul NG, cosi se non sono in grado di 
aiutarti, puo farlo qualcun altro. :-)
-- 
Ciao
Geppo