Newsgroup: it.comp.appl.access
Titolo: Articolo in uscita (magazzino)

Allora scusandomi del post precedente.
Ho la necessità, per questioni di lavoro di realizzare un database per la 
gestione di particolari articoli.
Allora mi sono creato:
tblArticoli
codicearticolo(kiave)
tblEntrata
idEntrata(kiave-contatore)
codiceArticolo
colli
dataPartenza
ecc....
ora il mio probelma è quello di riuscire a capire il senso di questo 
database, perche devo far in modo che per un articolo arrivato in data 
p.esempio 20/10/2005 con 2000 pezzi devo poter mettere in partenza lo stesso 
articolo fino ad esaurimento scorte.
cioè devo poter crearmi una maschera che mi deve poter far immettere lo 
stesso codcie articolo e la stessa data di arrivo fino a quando le scorte di 
quel l'articolo non siano 0, per poi passare ad l'atro alrticol arrivato in 
data successiva.
Grazie dell'aituo
OT(i miei post non li leggo. non sò avrò un problema sul computer)

 ha scritto nel messaggio 
news:FOp9f.16729$65.4...@twister1.libero.it...

Ciao Fabrizio,
non saprei dettagliarti tutto il ragionamento, ma io creerei una tabella 
relazionata su :idEntrata(kiave-contatore).
Questa tabella dovrebbe contenere i movimenti del tuo arrivo, le uscite ( o 
partenze).
Attivando un controllo che somma i movimenti potresti tenere sotto controllo 
le quantità prelevate e accendere un warning ( un messaggio, un semaforo, 
come vuoi tu) nel momento in cui cerchi di prelevare una quantità che 
(sommata alle altre) supera l'arrivo (o carico) dell'articolo.
Sò che è poco come aiuto, ma non sembra complicatissimo.
-- 
... spero di esserti stato d'aiuto,
Ivan (facci sapere .... e occhio alle regole del NG! ;(=))

 ha scritto nel messaggio 
news:43670129$0$29560$4faf...@reader1.news.tin.it...

Grazie a tutti, veramente, ma quello che mi chiedono di fare per questo 
database è impossibile "almeno per me".
Sto cercando di studiarmi un esempio mandatomi per divino aiuto da uno di 
voi!!!(non sò se si possono fare nomi), credo che qualcosa riesco a fare.
però vi dico cosa dovrei fare "per scaricare il nervosismo che ho":
mettiamo che mi creo una sola tbl_movimenti che mi raggruppa tutto sia 
entrare che uscite nella maschera che gestisce il tuttto dovrei far 
visualizzare quanto segue.
CodiceArticolo DataArrivo DataPartenza  Sotrage Pezzi Cartoni Colli 
TotaleColli     Peso    Volume   TotPeso    TotaleVolume.
storage= (DateDiff("g";[DataArrivo];[DataPartenza]))
TotaleColli= nz([Pezzi])*[Cartoni])+([Colli])
ecc...
ora il tutto mi funziona benissimo, ma quando, cerco d mettere in partenza 
un articolo, anche se ne ho disponiblie 50000 pezzi , non riesco a far 
conbiare per quell'articolo la possbilità di varie uscite.
(ma esiste degli appunti o qualcos'altro che ti spiegano in modo dettagliato 
, come mettere in relazione delle tabelle, ho 5000 libri in merito ma 
nessuno degno !!!!!!! con qualche plausibile spiegazione.


La logica della relazione è corposa ma semplice.
La tabella Articoli  e la tabella Movimenti devono avere un campo in comune 
e dello stesso tipo (numerico,stringa o contatore: che è un numerico creato 
da access per assicurarti di non avere valori mai uguali).
La Relazione tra le due tabelle ha anche 'direzione' verso una, verso 
l'altra o solo per uguale.
Tradotto in linguaggio access : UNO A MOLTI, MOLTI A UNO, PER OGNI.
Prendiamo in esame solo il primo tipo che forse ti serve: UNO A MOLTI
lo schematizziamo più o meno come fa Access =1------- °°= a indicare il lato 
UNO e il lato MOLTI (simbolino dell'infinito)
Nella relazione tra Articoli e Movimenti il lato UNO sarà chiaramente un 
campo di Articoli. (avrai UN articolo e infiniti movimenti)
Probabilmente nel tuo caso le tabelle necessarie dovrebbero essere TRE!
Articoli  =1------- °°= Movimento  =1------°°= Prelievo
                                                                 °° = 
Prelievo
                                                                 °° = 
Prelievo
                                                                 °° = 
Prelievo
                                                                 °° = 
Prelievo
                             °°= Movimento  =1------°°= Prelievo
                                                                 °° = 
Prelievo
                                                                 °° = 
Prelievo
                                                                 °° = 
Prelievo
                                                                 °° - 
Prelievo
In questa maniera potresti avere la completa situazione su ogni articolo 
sulle entrate e sui prelievi.
In visualizzazione dovresti prevedere tre maschere l'una dentro l'altra. 
Maschere con sottomaschere.
Le ralazioni si disegnano in maniera visuale premendo l'apposito pulsante 
sulla barra,  indicando quali tabelle visualizzare e quindi prendendo il 
campo da una tabella (click e tieni premuto) trascinarlo sullaltro campo in 
relazione nell'altra tabella (più difficile da descrivere cha da fare!).
Una volta tracciata questa relazione ( una linea) devi scegliere la 
direzione da dare alla relazione, e altre caratteristiche che riguardano 
l'integrità referenziale. Quest'ultima ti aiuta a tenere sotto controllo le 
voci delle tue tabelle ( se ben strutturata). Ad esempio se cancelli un 
articolo, vengono cancellate tutte le sue dipendenze nelle tabelle 
relazionate . nel tuo caso In Movimenti.
Chiaramente la relazione tra Movimenti e Prelievi và disegnata e 
strutturata. Potresti arrivare a cancellare (seguendo la catena 
dell'integrità) fino ad ogni prelievo a fronte della cancellazione di Un 
articolo.
