Newsgroup: it.comp.appl.access
Titolo: aggiornamento dati.

Ho una tabella contenente tra gli altri, anche i seguenti dati:
Id_Socio
Id_Articolo
Descrizione
Q.tà
(che sono purtroppo ripetuti, per mantenermi uno storico)
Il mio problema è questo:
AL termine dei conferimenti, con i quali si vanno ad aumentare
le righe di questa tabella (Bollette), dovrei fare un controllo,
Se il totale per Socio dei conferimenti di un determinato articolo
la cui descrizione termina per IGT, supera un determinato peso
(diverso a seconda dell'articolo), l'Id_Articolo e la Descrizione
devono essere aggiornati allo stesso articolo normale.
Per esempio.
Id_Articolo    Descrizione
1                    Trebbiano IGT
2                    Trebbiano
3                    Malvasia IGT
4                    Malvasia
Se i conferimenti di un socio (lo dovrei fare pero' in automatico per tutti
i soci)
per il Trebbiano IGT supera il limite previsto, tutte le righe che hanno
Id_Articolo    Descrizione
1                    Trebbiano IGT
devono essere aggiornate in
Id_Articolo    Descrizione
2                    Trebbiano
e così anche per gli altri tipi di uva.
Spero di essere stato chiaro, anche perchè non so proprio da dove partire.
grazie a tutti.
ciao Riccardo

 ha scritto nel messaggio
news:9q1mr7$4c3$1...@news.panservice.it...

Mi dispiace ma non ho capito quello che devi fare se puoi essere più chiaro
es.: cosa sono i conferimenti e le Bollette ?
Ciao Roberto - Syd

 ha scritto nel messaggio
news:9q1mr7$4c3$1...@news.panservice.it...

A quanto pare siamo in tempo di vendemmia con conferimento in cantina
sociale. ;-)
Se hai (come penso) una tabella tblArticoli che abbia una struttura simile:
Id_Articolo                Contatore e chiave primaria
Descrizione                Testo
ConferimentoMax      Numerico
ecc. ecc.
nella quale nel campo ConferimentoMax memorizzi la quantità massima di
conferimento al livello di Id_Articolo per gli articoli la cui descrizione
termina con IGT (per gli altri memorizza il valore zero).
Se la tabella Bollette ha una struttura simile:
ID                            Contatore e chiave primaria
Id_Socio                   Numerico
Id_Articolo               Numerico
Descrizione               Testo
Qtà                           Numerico
ecc. ecc.
A mio avviso devi prima crearti una query di creazione tabella (per creare
una tabella temporanea) che abbia il seguente codice SQL:
SELECT Bollette.ID INTO Variazioni
FROM Bollette
WHERE (((DSum("Qtà","Bollette","Id_Socio=" & [Id_Socio] & " And
Id_Articolo=" &
[Id_Articolo]))>DLookUp("ConferimentoMax","tblArticoli","Id_Articolo=" &
[Id_Articolo])) AND ((Right([Descrizione],3))="IGT"));
Esegui questa query di creazione tabella; quindi crea ed esegui una query di
aggiornamento che abbia il seguente codice SQL:
UPDATE Bollette INNER JOIN Variazioni ON Bollette.ID = Variazioni.ID SET
Bollette.Id_Articolo =
DLookUp("[Id_Articolo]","tblArticoli","[Descrizione]=" & Chr$(34) &
Left([Descrizione],Len([Descrizione])-4) & Chr$(34)), Bollette.Descrizione =
Left([Descrizione],Len([Descrizione])-4);
Certo è che questa cantina sociale ha delle regole un po' a "fregatura" per
i suoi soci.
Normalmente vengano declassati solo i quantitativi eccedenti il conferimento
massimo previsto per tipo di uva e per socio e non TUTTO il conferito di
quel tipo di uva per quel socio: io fossi quel socio mi incavolerei di
brutto. :-))
Battute a parte, è naturale che le due queries le DEVI eeguire SOLO a fine
conferimento.
Non capisco quale problema ti crei il fatto di gestire un archivio storico
dei dati contenuti nella tabella Bollette; immagino che l'accodamento dei
record nell'archivio storico lo farai solo a fine conferimento, dopo aver
effettuato anche il computo delle spettanze per ogni socio.
A quel punto deciderai se archiviarti nell'archivio storico i dati prima
della normalizzazione fatta dalle query di cui sopra (quindi archiviare i
dati reali contenuti nelle bollette di conferimento) oppure archiviare nello
storico i dati normalizzati dalle due query (ovvero i dati in base ai quali
hai effettuato la liquidazione delle spettanze).
A mio avviso è giusta la prima soluzione: in qualsiasi momento puoi
riestrarre i dati dallo storico per una certa vendemmia e rinormalizzarli.
C'è la terza soluzione, quella da spreconi, che ti crei separatamente i due
storici (quello prima e quello dopo la cura).
Spero che sia quello che ti serviva.
PS
Comunque devi dire da parte mia al presidente della cantina sociale che non
vedrà mai la mia uva. :-))))
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 Roberto
lo credo bene.... a quelle condizioni!
ciao e grazie
Riccardo

 Riccardo
--


 > anche io!
Per quanto riguarda il declassamento, dovro' anche andare a controllare un
altro
dato. Se il socio, oltre a terreni destinati ad IGT, ha anche altri terreni
destinati
ad uva comune, allora viene declassata solo la parte eccedente il limite.
Altrimenti dovrà essere declassato tutto il conferimento.
Comunque, un passo alla volta, prima devo risolvere il problema di quella
query.
Poi un altro consiglio:
questa cantina vuole fare un catasto terreni, e vogliono questa
suddivisione:
Totale Terreni
Totale Coltivati ad Uva Bianca
Totale Coltivati ad Uva Nera
a loro volta divisi in
Uva B. Comune
Uva B. IGT
Uva N. Comune
Uva N. IGT
a loro volta divisi per codice nazionale di vitigno.
Come mi conviene costruire le tabelle?
(il totale terreni comune ed igt già li avevo inseriti nella tabella Soci,
in quanto
mi servono per la stampa dell'Allegato F2; possono servire magari per un
controllo)
grazie Riccardo

 controllo)
Nella tabella Soci?
Direi proprio di no; devi inserirli in una tabella relazionata uno-a-molti
con la tabella Soci, visto che un socio può avere più terreni.
E penso che è solo un catasto fatto correttamente che ti permetterà un
corretto computo del declassamento e quindi delle spettanze del socio.
Ogni socio può avere più vigne: ogni vigna va suddivisa in tante particelle
quanti sono i vari tipi di uva che la vigna produce; è a questo livello che,
per le uve di tipo IGT, inserirai il conferimento massimo; e non credo che
tu abbia molte alternative.
Ti posso garantire per mia esperienza che ogni socio, senza un PC e senza
Access, sa, con un'approssimazione del 4/5%, quali siano le sue spettanze
che gli devi liquidare, quindi occhio alla penna!


 Certamente: l'ho già fatto lo scorso hanno al raduno nazionale ICAA.
Stai glissando: la risposta corretta è: certamente, te lo farò assaggiare,
come feci l'altr'anno, nel nuovo raduno nazionale che sto organizzando e che
si terrà....
Antonio

 wrote in message
odwz7.42610$1H1.5...@news.infostrada.it...

_______
che si terrà?
quanto?
Riccardo

 ha scritto nel messaggio
news:odwz7.42610$1H1.5...@news.infostrada.it...

:-(((
Per organizzarlo in campagna a Perugia, in questa stagione avrei dei
problemi.
Come già ebbi a dire, non avrei alcun problema ad organizzarlo nella tarda
primavera o in estate.


 primavera o in estate.
OK, sei prenotato x la campagna di Perugia in tarda primavera.
X il raduno autunno/inverno, datti da fare!
Ah! Ah! Ah! Ah! Ah!  ;-))))P
--
Silvio
il sito comune di it.comp.appl.access:
http://www.sitocomune.com