Newsgroup: it.comp.appl.access
Titolo: NUMERAZIONE PROGRESSIVA SU FORM x GESTIONE VARIE SOCIETA' ACCESS 2021

Buonasera amici,
ho una maschera di inserimento ordini, dove attualmente ho il campo "NUMERO" che si aggiorna progressivamente ad ogni inserimento d'ordine, ed ha come valore predefinito:
"=Nz(DMax("[NUMERO]";"[tblORDINI]";"year(Data)= " & Year([Data]));0)+1."
Finora andava bene perchè gestivo una sola società e pertanto i numeri si aggiornavano progressivamente fino a fine anno; con l'anno nuovo il campo NUMERO ripartiva da 1.
Dal prossimo anno le società saranno 4 (az1;az2;az3;az4) e ciascuna di loro avrà due punti vendita, ed io ho necessità, nella stessa maschera ordini, che ogni società che inserisce un ordine abbia la propria numerazione, quindi ciascuna deve partire da 1 a seguire, e quindi la numerazione deve procedere progressivamente in base al filtro azienda che vado ad impostare prima di inserire l'ordine.
Spero di  essere stato chiaro e che ci sia una soluzione.
Grazie mille, per me è importante risolvere questa cosa.

I punti vendita della stessa Società debbono avere progressivi univoci ?

 I punti vendita della stessa Società debbono avere progressivi univoci ?
No, la numerazione deve essere univoca solo x azienda;
quindi i due punti vendita di ciascuna azienda, avranno la stessa numerazione progressiva.
Grazie mille.

Per le Aziende hai previsto un'apposita tabella?

 filtro azienda che vado ad impostare prima di inserire l'ordine.
 
ci sarebbe il solito sistema del codice parlante
 
az1 inizia da 10000
az2 inizia da 20000
az3 inizia da 30000 ecc.
 
data l'azienda sottrai la base e hai il progressivo di quella azienda.
 
Puo' andare?
 
 
 
 
 
-- 
"Le Mondine" Fan Club
 
 


Credo possa andare bene, ma mi puoi per favore indicare l'impostazione del codice nel valore predefinito del campo NUMERO?
Ti ringrazio molto.

 l'impostazione del codice nel valore predefinito del campo NUMERO? 
 
da quando sono in pensione non seguo piu' Access quindi non sono
aggiornato, ma il valore predefinito non credo che sia importante,
tanto devi subito aggiornarlo.
 
Quando apri la FORM di inserimento ordini, la prima cosa che
selezionerai sara' l'azienda, a quel punto recupererai da una
tabella "anagrafica aziende" il codice dell'azienda (1..4), tutti i dati
anagrafici di detta azienda, e il numero  dell'ultimo ordine
completato x quell'azienda. 
 
N = last_order+1, e vai.
 
IMHO


Non hai risposto alla mia domanda, comunque la soluzione sarebbe che nella tblORDINI aggiungi un campo IDAzienda, esempio cboIDAzrenda relazionato alla tabella tblAziende che se attualmente non esiste dovresti creare, quindi quando crei un nuovo record dopo aver inserito la data in un campo testo, esempio txtData, e selezionato l'Azienda dovrai inserirai in un controllo testo disabilitato, esempio txtNumero, nella proprietà 'Origine del controllo' la seguente espressione :
=Nz(DMax("[NUMERO]";"[tblORDINI]";"Year(Data)= " & Year(txtData) & " AND [IDAzienda] = " & Me.cboIDAzienda);0)+1


e se az1 fa più di 10.000 ordini?
 
io aggiungerei un campo "azienda" nell'ordine
come si fa con i sezionali per i numeri fattura
 
otterrei cosi il numero/azienda per identificare in modo univoco l'azienda
 
calcolare il n° successivo per ogni azienda sarebbe una banalità, basta 
aggiungere l'azienda a quel dmax
anche se il numero personalmente lo assegnerei a salvataggio ordine e 
non con valore predefinito di un campo
 
in questo modo anche tutta la parte statistiche diventerebbe più 
semplice da gestire
 
 
BFS
 


Grazie mille a ciascuno di voi per l'aiuto, valuterò tutte le soluzioni che mi avete indicato!