Newsgroup: it.comp.appl.access
Titolo: NUMERAZIONE PROGRESSIVA PER FATTURE ETC.

Ciao a tutti,
io avrei la necessità di creare un campo con numerazione progressiva
che non sia il campo contatore.
Smanettando qua e là nell'NG e nel sito comune ho trovato quello che
mi serviva, esattamente nella sezione General
6.17 Numerazione crescente per fatture ed altro.
Io però ho un esigenza in più, ovvero:
TbOrdini
IDOrdine - contatore - chiave primaria
IDCliente - testo
IDBolla - Testo o numerico (indifferente)
FleggBolla - sì/no
...e tutte le varie info relative all'ordine
QyBolle
Criteri FleggBolla - Vero
Ora, dalla MsOrdini inserisco tutti gli ordini e quando devo evaderne
uno fleggo il campo bolla e creo in automatico la bolla nella MsBolle
che ha come origine dati QyBolle.
Mi servirebbe che nel campo IDBolla ci fosse una numerazione
progressiva, quindi, nel momento in cui fleggo il campo bolle e mi si
aggiunge un nuovo record alla QyBolle a questo sia assegnato un numero
progressivo.
Con le info sopra citate questo ovviene solo nel nuovo record, nel
campo IDBolla del record appena inserito tramite il sistema appena
descritto non c'è nulla, ma se vado su un nuovo record è presente la
numerazione.
Mi scuso fin d'ora per la confusione e per la lunghezza del post.
Qualcuno sa aiutarmi?
Grazie mille.
Myc

 che non sia il campo contatore.
ti fossilizzi a quanto pare...
che ne dici di dare un occhiatina ad accessgroup?
http://www.accessgroup.it/HomeArgomenti.asp?ID=126&Oggetto2=DB%20Fatturazione
Pablitomf

 Pablitomf
Grazie davvero per quest'indicazione, ma sono proprio alle prime armi
e non sono stata in grado di trarne alcun spunto.
Ho provato a copiare la formula presente nella Query1 relativa al
numero (cambiando le variabili) ma il campo rimane bianco.
Ho provato a copiare le proprietà della casella di controllo Num
presente nella maschera Fatture ma tutto ciò che ho ottenuto è il
colore giallo.
Ho provato a copiare la formula presente nella casella di controllo
Numero2 presente nella maschera Fatture, ma probabilmente sbaglio
qualcosa perchè una volta in modalità visualizzazione maschera nel
controllo c'è scritto #Nome?.
Saresti così gentile da darmi un ulteriore aiuto?
Grazie mille.
Myc

 ha scritto nel messaggio
CUT
Ora, dalla MsOrdini inserisco tutti gli ordini e quando devo evaderne
uno fleggo il campo bolla e creo in automatico la bolla nella MsBolle
che ha come origine dati QyBolle.
Mi servirebbe che nel campo IDBolla ci fosse una numerazione
progressiva, quindi, nel momento in cui fleggo il campo bolle e mi si
aggiunge un nuovo record alla QyBolle a questo sia assegnato un numero
progressivo.
CUT
-----------
Valorizza il campo nell'evento con la stessa formula.
Saluti
Davide (Sib)
-- 
www.gestionedati.com
 

 Davide (Sib)
Temo di non aver capito.
Dovrei copiare la formula che ho inserito nel Valore predefinito del
controllo IDBolla e copiarla in uno degli eventi dello stesso
controllo, esatto? ma quale? ho provato in tutti e non cambia nulla.
Scusa la mia ignoranza, mi sto impegnando per colmarla ;o)
Grazie
Myc

 ha scritto nel messaggio 
news:1193213137....@k35g2000prh.googlegroups.com...

immagino che il tuo campo IDBolla sia numerico,
mentre la faq di Sib funziona con un campo Testo, controlla.
Daniele 

 Daniele
L'ho già modificato ma il problema rimane.
Grazie comunque.
Myc

 ha scritto nel messaggio

Lo devi mettere nell'evento afterupdate del flag che spunti.
Davide(Sib)
-- 
www.gestionedati.com
 


Con copia/incolla ho inserito la stessa formula presente nel valore
predefinito del campo IDBolla (MsBolle - origine dati QyBolle)
nell'evento Dopo aggiornamento del campo che fleggo, ovvero Bolla
(MsOrdiniClienti - origine dati Tb|OrdiniClienti)
="" & Format(Date();"aa") & "/" &
Format(IIf(IsNull(DMax("[IDBolla]";"[QyOrdiniClienti]";"[IDBolla] like
'" & Format(Date();"aa") & "/???'"));
1;Right(DMax("[IDBolla]";"[QyOrdiniClienti]";"[IDBolla] like '" &
Format(Date();"aa") & "/???'");3)+1);"000")
ho provato anche a cambiare le variabili e a mettere
="" & Format(Date();"aa") & "/" &
Format(IIf(IsNull(DMax("[Bolla]";"[Tb|OrdiniClienti]";"[Bolla] like '"
& Format(Date();"aa") & "/???'"));1;Right(DMax("[Bolla]";"[Tb|
OrdiniClienti]";"[Bolla] like '" & Format(Date();"aa") & "/???'");
3)+1);"000")
ma anche in questo caso non cambia nulla.
Non capisco in cosa sbaglio.
Grazie mille per la pazienza.
Myc

 Format(Date();"aa") & "/???'");3)+1);"000")
Scusa l'eccessiva sintesi delle mie risposte, la fretta purtroppo regna.
Comunque copiando la formula nel codice VBA devi sostituire i punti e 
virgola con la virgola e le aa in yy.
Saluti
Davide(Sib)
-- 
www.gestionedati.com
 

 - Mostra testo tra virgolette -
Perfetto, ce l'abbiamo fatta!
Inserito questo codice:
IDBolla.Value = "" & Format(Date, "yy") & "/" &
Format(IIf(IsNull(DMax("[IDBolla]", "[QyOrdiniClienti]", "[IDBolla]
like '" & Format(Date, "yy") & "/???'")), 1, Right(DMax("[IDBolla]",
"[QyOrdiniClienti]", "[IDBolla] like '" & Format(Date, "yy") &
"/???'"), 3) + 1), "000")
Grazie infinite!!
Myc