author: Lorenzo Coronati

text:
Scrisse "Roberto in campagna" <
r.ma...@libero.it
>:
>Do naturalmente per scontato che tutte le tabelle siano indicizzate ANCHE
>sul codice articolo; ammesso che per determinare la giacenza di un prodotto
>devi selezionare, raggruppare e sommare un migliaio di record indicizzati
>quanto tempo vuoi che impieghi Access con una query che deve fornirti una
>sola riga? Secondo me una frazione di secondo; se poi sei scettico puoi
>sempre farti un database di prova popolando una tabella con un paio di
>clicli For ... Next, provi e poi decidi.
No, Roberto, sei fuori strada.
Finora non ho visto un solo programma di magazzino "serio"
che calcoli le giacenze in tempo reale.
Il problema e' complesso, non si tratta solo di sommare
quantita' positive o negative in un solo campo, ma di
applicare formule anche molto complesse su svariati campi,
che vanno interpretati sulla base delle impostazioni delle
causali di movimentazione.
Nessuno si accontenta di sapere che del prodotto xyz sono
stati caricati 100 pezzi e scaricati 80, per cui la giacenza
e' 20: so che ho acquistato 80, 10 mi sono stati omaggiati,
5 sono stati resi da clienti e 5 erano la giacenza iniziale;
poi ne ho venduti 60, rottamati 2, inviati in riparazione
18.
E questo e' solo un esempio banale.
Ad ogni causale di magazzino corrispondono determinati modi
di movimentazione di, diciamo, una decina di campi "carichi"
e una decina di "scarichi"; la giacenza va quindi calcolata
considerando le formule applicate a tutti questi campi.
E senza contare il multimagazzino: pensa se dovessi passare
tutte le righe di movimentazione dei miei, diciamo, 30
magazzini, per calcolare la giacenza consolidata!
Eppoi, come dice giustamente Max, pensa ad una
valorizzazione di magazzino a costo medio, per esempio, con
quella dozzina di migliaia di articoli...
Ebbene si', ammettiamolo, un db di magazzino e' quanto di
piu' denormalizzato si possa concepire ;-) ma e' l'unico
modo di gestire la cosa.
Tutto quanto sopra e' rigorosamente IMHO.
--
Lorenzo Coronati
--
<<Ragazzi, sapete indicarmi una utility in
internet che sia in grado di recuperare le
password da un database access e da un system mdw?
intendevo, gratuita...>>
(Marco Tullio Bisoli, 27/04/2001)
--


title: Diverse filosofie di gestione di un magazino

author: MegaMax

text:
"Lorenzo Coronati" <lorenzo.coronati@liberopuntoit> ha scritto nel messaggio
news:3b4cb370...@news.libero.it...
> Scrisse "Roberto in campagna" <
r.ma...@libero.it
>:
> >Do naturalmente per scontato che tutte le tabelle siano indicizzate ANCHE
> >sul codice articolo; ammesso che per determinare la giacenza di un
prodotto
> >devi selezionare, raggruppare e sommare un migliaio di record indicizzati
> >quanto tempo vuoi che impieghi Access con una query che deve fornirti una
> >sola riga? Secondo me una frazione di secondo; se poi sei scettico puoi
> >sempre farti un database di prova popolando una tabella con un paio di
> >clicli For ... Next, provi e poi decidi.
>
> No, Roberto, sei fuori strada.
> Finora non ho visto un solo programma di magazzino "serio"
> che calcoli le giacenze in tempo reale.
> Il problema e' complesso, non si tratta solo di sommare
> quantita' positive o negative in un solo campo, ma di
> applicare formule anche molto complesse su svariati campi,
> che vanno interpretati sulla base delle impostazioni delle
> causali di movimentazione.
> Nessuno si accontenta di sapere che del prodotto xyz sono
> stati caricati 100 pezzi e scaricati 80, per cui la giacenza
> e' 20: so che ho acquistato 80, 10 mi sono stati omaggiati,
> 5 sono stati resi da clienti e 5 erano la giacenza iniziale;
> poi ne ho venduti 60, rottamati 2, inviati in riparazione
> 18.
> E questo e' solo un esempio banale.
Interessante...
La tua soluzione quindi qual'è?
Calcoli le giacenze dinamicamente? o le tieni sempre aggiornate in tempo
reale?
Il tuo esempio mi fa supporre che sia praticamente impossibile avere in
qualche secondo (al massimo) la giacenza/stato/disponibilità di tutto un
magazino (o tutti i magazini di un'azienda).
Quindi se le prestazioni soo basilari forse vale la pena di fare tutto
aggiornato in tempo reale...
Tu che ne pensi?
Ciao ,Max


author: Roberto in campagna

text:
"Lorenzo Coronati" <lorenzo.coronati@liberopuntoit> ha scritto nel messaggio
news:3b4cb370...@news.libero.it...
[CUT]
>
> No, Roberto, sei fuori strada.
Rispetto il tuo punto di vista, ma, nuturalmente, non lo condivido.
> Finora non ho visto un solo programma di magazzino "serio"
> che calcoli le giacenze in tempo reale.
Potrebbe significare che non li hai visti tutti. ;-)
Ad esempio la gestione ordini e magazzini carta multisocietà del mio Gruppo;
credimi è una cosa molto "seria".
Gestione sia a quantità che a volore con il sistema FIFO (collegamento ad
una contabilità industriale ed una contabilità generale basata sul sistema
del debito). Sedici società, oltre 30 depositi (proprietari e terzi), oltre
25 stabilimenti che usano la carta in conto lavorazione (quasi tutti terzi).
Movimentazione al livello di bobina; movimentiamo ogni giorno circa 6000
tons di carta in entrata ed altrettante in uscita. Lo studio della
robottizzazione è in fase avanzata.
Se dovessimo gestire il tutto con dei record giacenze, avremmo più record
giacenze che record movimenti.
Dal momento che abbiamo abbandonato la gestione basata con elaborazioni
mensili di tipo batch e siamo passati ad un database relazionale, le
giacenze registrate sono solo quelle ad inizio esercizio contabile.
> Il problema e' complesso, non si tratta solo di sommare
> quantita' positive o negative in un solo campo, ma di
> applicare formule anche molto complesse su svariati campi,
> che vanno interpretati sulla base delle impostazioni delle
> causali di movimentazione.
Lo so benissimo, credimi; oltre ai tipi movimento è poi necessario anche
classificare le entrate per provenienza e le uscite per destinaione; è
proprio per questo che un valore statico delle giacenze serve a poco:
bisogna far continamente ricorso ai movimenti.
E poi come risolveresti le problemematihe dei vari utenti che interrogano in
maniera estemporanea e differenziata il magazzino (anche per conoscere
realtà pregresse) per le più svariate esigenze (contabili, produttive, di
approvigionmento, di logistica ecc.) se non tramite recordset virtuali con
diversi livelli di aggregazione basati sui movimenti? Se non fai così
dovresti limitare i tipi di interrogazioni e comunque
prevederle tutte a priori.
In un gestionale sui magazzini la consistenza statica della giacenza serve
forse a malapena al magazziniere e a volte neppure a lui.
> Nessuno si accontenta di sapere che del prodotto xyz sono
> stati caricati 100 pezzi e scaricati 80, per cui la giacenza
> e' 20: so che ho acquistato 80, 10 mi sono stati omaggiati,
> 5 sono stati resi da clienti e 5 erano la giacenza iniziale;
> poi ne ho venduti 60, rottamati 2, inviati in riparazione
> 18.
E' proprio anche per questi motivi che abbiamo fatto certe scelte di
architettura di database, scelte che ci hanno spinto (con soddisfazione) ad
eliminare l'aggiornamento di archivi giacenze, se non alla fine di ogni
esercizio.
Le interrogazioni pregresse comunque continuano tramite l'utilizzo degli
archivi storici.
> E questo e' solo un esempio banale.
> Ad ogni causale di magazzino corrispondono determinati modi
> di movimentazione di, diciamo, una decina di campi "carichi"
> e una decina di "scarichi"; la giacenza va quindi calcolata
> considerando le formule applicate a tutti questi campi.
Noi non sentiamo la necessità di avere decine di campi "carichi" e
"scarichi" precostituiti: con una opportuna codifica delle causali, delle
provenienze edelle destinazioni non ne sentiamo proprio la mancanza.
Inoltre non ho mai detto che il calcolo di una giacenza sia una banalità,
come non sono banali gli algoritmi di calcolo che si possono impostare con
il linguaggio SQL; certamente occorre un'ottima conoscenza di questo
linguaggio.
Al momento della trasformazione dell'automazione dei magazzini, in casa
nostra c'è stata molta resistenza, da parte degli addetti ai lavori, ad
abbandonare le architetture degli archivi nati invece per elaborazioni
batch; la resistenza maggiore veniva da chi doveva realizzare il progetto
con un database relazionale a causa di una poca conoscenza del linguaggio
SQL, fondamentale in questi casi.
> E senza contare il multimagazzino: pensa se dovessi passare
> tutte le righe di movimentazione dei miei, diciamo, 30
> magazzini, per calcolare la giacenza consolidata!
Non è forse proprio in funzione di un multimagazziono che bisogna limitare
la quantità dei record giacenza e minimizzare comunque il loro
aggiornamento?
> Eppoi, come dice giustamente Max, pensa ad una
> valorizzazione di magazzino a costo medio, per esempio, con
> quella dozzina di migliaia di articoli...
>
Se hai letto i miei messaggi precedenti, avrai notato che ho sottolineato
che è proprio la valorizzazione fiscalmente corretta delle giacenze e la
determinazione del loro valore unitario medio, uno dei motivi che fanno fare
certe scelte.
> Ebbene si', ammettiamolo, un db di magazzino e' quanto di
> piu' denormalizzato si possa concepire ;-) ma e' l'unico
> modo di gestire la cosa.
>
Se si sta lavorando con un database relazionale, rispetto le tue idee, ma
ripeto che non le condivido; le mie convinzioni, giuste o sbagliate che
siano, derivano dall'aver partecipato per due anni alla definizione di un
progetto (questa volta nella veste di utilizzatore) che è risultato
funzionale per tutti coloro che giornalmente ne usano i risultati.
Penso comunque che si è fuori strada solo se non si riescono a raggiungere i
risultati sperati, in caso contrario...
E poi come dice MegaMax si sta facendo solo  un pò di "filosofia". :-)
> Tutto quanto sopra e' rigorosamente IMHO.
>
> --
> Lorenzo Coronati
> --
> <<Ragazzi, sapete indicarmi una utility in
> internet che sia in grado di recuperare le
> password da un database access e da un system mdw?
> intendevo, gratuita...>>
> (Marco Tullio Bisoli, 27/04/2001)
> --
--



text:
> > Finora non ho visto un solo programma di magazzino "serio"
> > che calcoli le giacenze in tempo reale.
>
> Potrebbe significare che non li hai visti tutti. ;-)
> Ad esempio la gestione ordini e magazzini carta multisocietà del mio
Gruppo;
> credimi è una cosa molto "seria".
> Gestione sia a quantità che a volore con il sistema FIFO (collegamento ad
> una contabilità industriale ed una contabilità generale basata sul sistema
> del debito). Sedici società, oltre 30 depositi (proprietari e terzi),
oltre
> 25 stabilimenti che usano la carta in conto lavorazione (quasi tutti
terzi).
> Movimentazione al livello di bobina; movimentiamo ogni giorno circa 6000
> tons di carta in entrata ed altrettante in uscita. Lo studio della
> robottizzazione è in fase avanzata.
Scusa la domanda... tanto per farmi un'idea: qual'è la complessità di un DB
del genere?
Spannologicamente quante tabelle e quante relazioni ha?
Quante "maschere" ha?
In quale linguaggio è sviluppato?
Su che piattaforma gira?
Quanto tempo ha richiesto la progettazione? e lo sviluppo?
E quante persone hanno lavorato alla progettazione? ed allo sviluppo?
(scusa se mi faccio i fatti vostri... e che vorrei capire bene quale ordine
di complessità possono raggiungere queste cose)
Ah.... un'ultima domanda... che hardware usate come server?
> Se dovessimo gestire il tutto con dei record giacenze, avremmo più record
> giacenze che record movimenti.
Questo credo dipenda moltissimo dal tipo di magazino.... prova a pensare ad
una ditta tessile che produce abbigliamento... è normale avere una quantità
abnorme di articoli di giacenza... pensa a dei capannoni pieni di.. che
so... calze, pantaloncini, scarpe, magliette e cose simili; solo il catalogo
articoli conta più di 7000 articoli, senza contare tutte le materie prime e
le fasi intemedie.
Saranno molte le movimentazioni... ma anche le giacenze non scherzano :-)
> In un gestionale sui magazzini la consistenza statica della giacenza serve
> forse a malapena al magazziniere e a volte neppure a lui.
Che è appunto quello che invece serve nel nostro progetto.... assolutamente
nulla di fiscale; solo qualcosa per avere un controllo in un magazino dove
ora viaggiano a carta e penna.
L'idea è quella di conoscere le giacenze, e poter spannologicamente
valorizzare il magazino.
> Le interrogazioni pregresse comunque continuano tramite l'utilizzo degli
> archivi storici.
Cosa intendi per interrogazioni pregresse?
> Noi non sentiamo la necessità di avere decine di campi "carichi" e
> "scarichi" precostituiti: con una opportuna codifica delle causali, delle
> provenienze edelle destinazioni non ne sentiamo proprio la mancanza.
Quindi tipo un campo solo, positivo o negativo; ed una causale che dice se
quel pezzo viene caricato, venduto, mandato in riparazione rottamato.... ?
> Inoltre non ho mai detto che il calcolo di una giacenza sia una banalità,
> come non sono banali gli algoritmi di calcolo che si possono impostare con
> il linguaggio SQL; certamente occorre un'ottima conoscenza di questo
> linguaggio.
In che senso algoritmi di calcolo? dici delle query nidificate e cose
simili?
> > E senza contare il multimagazzino: pensa se dovessi passare
> > tutte le righe di movimentazione dei miei, diciamo, 30
> > magazzini, per calcolare la giacenza consolidata!
>
> Non è forse proprio in funzione di un multimagazziono che bisogna limitare
> la quantità dei record giacenza e minimizzare comunque il loro
> aggiornamento?
Non capisco il perchè di questa cosa.... (a causa della mia inesperienza
direi :-)
> E poi come dice MegaMax si sta facendo solo  un pò di "filosofia". :-)
Sarà anche filosofia... ma però credo che per il prossimo DB che progettero
prenderò in considerazione l'idea di struttirarlo in modo dinamico,
piuttosto che a giacenze statiche. Quantomeno per fare esperienza
(ovviamente se la cosa risulta sensata)
Ciao, Max (grazie di tutto :)


author: koo

text:
> E senza contare il multimagazzino: pensa se dovessi passare
> tutte le righe di movimentazione dei miei, diciamo, 30
> magazzini, per calcolare la giacenza consolidata!
> Eppoi, come dice giustamente Max, pensa ad una
> valorizzazione di magazzino a costo medio, per esempio, con
> quella dozzina di migliaia di articoli...
La gestione di magazzino che ho sviluppato, ha grandi pecche (più che altro
eprchè l'ho sviluppata io), ma, per ora, ti permette di sapere in tempo
reale diverse informazioni:
Esistenza Iniziale
Disponibilità
Ordinato
Vendita per omaggio
Venduto
Conto Lavorazione
Corso Lavorazione
E non ricordo cos'altro.
E si tratta di una gestione multimagazzino con gestione del costo medio.
Gli articoli sono sia semilavorati, sia materie prime, sia prodotti finiti.
I primi due gestiti con una sola anagrafica, il terzo gestito in maniera
distinta per diversi motivi che non sto ad elencare.


text:
Purtroppo illavoro non l'ho iniziato io, ma credo che avrei come minimo
tentato di utilizzare in maniera intensiva i trigger, sia per calcolare i
saldi in funzione delle causali, sia per tenerli aggiornati (che poi sarebbe
la stessa cosa).
Più in tempo reale di così non credo si possa fare :-)
Inoltre, questo sistema dovrebbe garantire una buona gestione degli utenti
concorrenti che, al limite, possono essere gestiti anche tramite
l'applicazione, con l'utilizzo di semafori.


text:
> Gestione sia a quantità che a volore con il sistema FIFO (collegamento ad
> una contabilità industriale ed una contabilità generale basata sul sistema
> del debito). Sedici società, oltre 30 depositi (proprietari e terzi),
oltre
Ah, giusto, dimenticavo. Il mio sistema adotta un sistema di tipo LIFO


text:
"koo" <koo@k.k> ha scritto nel messaggio news:9ikern$8ap$1...@serv1.iunet.it...
> Purtroppo illavoro non l'ho iniziato io, ma credo che avrei come minimo
> tentato di utilizzare in maniera intensiva i trigger, sia per calcolare i
> saldi in funzione delle causali, sia per tenerli aggiornati (che poi
sarebbe
> la stessa cosa).
Cosa sono i trigger?
Ciao, Max


text:
"MegaMax" <
a...@a.com
> ha scritto nel messaggio
news:_Ch37.57723$q77.4...@news2.tin.it...

Come ho precisato ho partecipato solamente alle specifiche del progetto, in
modo particolare per stabilire la funzionalità che il sottosistema doveva
avere relativamente alle aree di interesse di mia competenza (logistica e
produzione).
La responsapilità dello sviluppo è stata naturalmente del nostro
responsabile del Servizio Informatica; solo lui (forse) sarebbe in grado di
rispondere a certe tue domande. Lo studio e la conseguente analisi di
massima, l'analisi di dettaglio e la realizzazione è stata affidata ad una
software house ed il tutto è stato realizzato in un arco temporale di circa
24 mesi.
Conosco certe caratteristiche del database in quanto era per me necessario
al fine di capire le reale flessibilità del sottosistema specie per quanto
riguardava le interrogazioni e gli sviluppi che attueremo in produzione nei
prossimi cinque anni.
> (scusa se mi faccio i fatti vostri... e che vorrei capire bene quale
ordine
> di complessità possono raggiungere queste cose)
>
> Ah.... un'ultima domanda... che hardware usate come server?
Il tutto è stato realizzato con Oracle su As400.
>
> > Se dovessimo gestire il tutto con dei record giacenze, avremmo più
record
> > giacenze che record movimenti.
>
> Questo credo dipenda moltissimo dal tipo di magazino.... prova a pensare
ad
> una ditta tessile che produce abbigliamento... è normale avere una
quantità
> abnorme di articoli di giacenza... pensa a dei capannoni pieni di.. che
> so... calze, pantaloncini, scarpe, magliette e cose simili; solo il
catalogo
> articoli conta più di 7000 articoli, senza contare tutte le materie prime
e
> le fasi intemedie.
> Saranno molte le movimentazioni... ma anche le giacenze non scherzano :-)
>
> > In un gestionale sui magazzini la consistenza statica della giacenza
serve
> > forse a malapena al magazziniere e a volte neppure a lui.
>
> Che è appunto quello che invece serve nel nostro progetto....
assolutamente
> nulla di fiscale; solo qualcosa per avere un controllo in un magazino dove
> ora viaggiano a carta e penna.
> L'idea è quella di conoscere le giacenze, e poter spannologicamente
> valorizzare il magazino.
>
Beh, è innegabile che io e te abbiamo un concetto di contabilità e gestione
di magazzino un pochino diverse. ;-)
Per me la gestione delle scorte è un problema importantissimo, ma è pur
sempre solo uno degli aspetti del problema.
> > Le interrogazioni pregresse comunque continuano tramite l'utilizzo degli
> > archivi storici.
>
> Cosa intendi per interrogazioni pregresse?
Tutte quelle che riguardano i peridi precedenti all'esercizio in corso.
>
>
> > Noi non sentiamo la necessità di avere decine di campi "carichi" e
> > "scarichi" precostituiti: con una opportuna codifica delle causali,
delle
> > provenienze edelle destinazioni non ne sentiamo proprio la mancanza.
>
> Quindi tipo un campo solo, positivo o negativo; ed una causale che dice se
> quel pezzo viene caricato, venduto, mandato in riparazione rottamato.... ?
>
Beh detta così mi sembra un pò limitativo; il concetto è che vengono
classificati e valorizzati i singoli movimenti e le giacenze vengono
assimilate a movimenti che hanno la data di fine esercizio precedente con
tanto di causale e valore.
> > Inoltre non ho mai detto che il calcolo di una giacenza sia una
banalità,
> > come non sono banali gli algoritmi di calcolo che si possono impostare
con
> > il linguaggio SQL; certamente occorre un'ottima conoscenza di questo
> > linguaggio.
>
> In che senso algoritmi di calcolo? dici delle query nidificate e cose
> simili?
>
Anche ma non solo.
> > > E senza contare il multimagazzino: pensa se dovessi passare
> > > tutte le righe di movimentazione dei miei, diciamo, 30
> > > magazzini, per calcolare la giacenza consolidata!
> >
> > Non è forse proprio in funzione di un multimagazziono che bisogna
limitare
> > la quantità dei record giacenza e minimizzare comunque il loro
> > aggiornamento?
>
> Non capisco il perchè di questa cosa.... (a causa della mia inesperienza
> direi :-)
A che prò, durante l'anno, aggiornare periodicamente una giacenza se sono in
grado, in qualsiasi momento, di ottenerne la consistenza a quantità e valore
ad una data a mio piacimento. A cosa serve memorizzarmi le dodici giacenze
di fine mese od ancora peggio le 365 giacenze di fine giornata?
>
> > E poi come dice MegaMax si sta facendo solo  un pò di "filosofia". :-)
>
> Sarà anche filosofia... ma però credo che per il prossimo DB che
progettero
> prenderò in considerazione l'idea di struttirarlo in modo dinamico,
> piuttosto che a giacenze statiche. Quantomeno per fare esperienza
> (ovviamente se la cosa risulta sensata)
Comunque le mie ultime precisazioni erano solo di risposta a quelle di
Lorenzo; ho ritenuto giusto argomentarle quando mi è parso di capire che
Lorenzo ritenesse che le mie teorie potessero trovare applicazione solo
nell'automazione di magazzini poco importanti o comunque poco "seri".
Resta il fatto che un'automazione è sostanialmente in funzione di ciò che
vuole ottenere in termini informativi la dirigenza aziendale. Certo che in
termini informatici sarebbe bene progettare un sistema così detto "aperto"
per il futuro, ma che comunque rispetti le regole aziendali e le leggi
attuali.
A mio avviso un sistema "aperto" si realizza limitandosi a memorizzare nel
database i dati, quindi creare una infrastruttura elaborativa che ottiene le
informazioni richieste; dovrebbe essere solo qust'ultima che dovrebbe essere
modificata al cambiare delle necessità informative.
Comunque non credo che esista un decalogo che racchiuda i dieci comandamenti
per realizzare un progetto di gestione magazzino che sia valido per ogni
eventualità. :-)
>
> Ciao, Max (grazie di tutto :)
>
--



text:
Scrisse "Roberto in campagna" <
r.ma...@libero.it
>:
>Rispetto il tuo punto di vista, ma, nuturalmente, non lo condivido.
Mica si puo' essere sempre tutti d'accordo ;-)))
>> Finora non ho visto un solo programma di magazzino "serio"
>> che calcoli le giacenze in tempo reale.
>
>Potrebbe significare che non li hai visti tutti. ;-)
Poco ma sicuro :-)
Ho cominciato a risponderti, quando mi sono reso conto che
forse sarebbe servita una premessa per identificare gli
ambiti di applicazione.
>Ad esempio la gestione ordini e magazzini carta multisocietà del mio Gruppo;
>credimi è una cosa molto "seria".
E figurati se lo metto in dubbio, solo mi pare di capire che
le esigenze del tuo Gruppo sono molto diverse da quelle con
cui ho avuto a che fare io, cioe' supermercati, negozi,
distribuzione in genere.
Cerco di interpretare, correggimi se sbaglio: tu avrai in
genere pochi articoli (intendo meno di 5000) poche righe
movimenti giornalieri (intendo meno di 10000) e forse i
calcoli di carichi e scarichi (quindi giacenze, ordini,
resi, acquisti, vendite, ecc.) non ti servono piu' di una
volta al giorno.
Queste sono le principali differenze, se ho capito bene, con
il mondo della distribuzione commerciale.
Altro punto fondamentale: tu non hai a che fare con un
applicativo commerciale venduto ad altri 1000 clienti con
esigenze diverse uno dall'altro (tipo la libera
configurazione di n carichi e scarichi diversi per farci le
statistiche piu' impensabili).
A conferma delle mie ipotesi:
>Noi non sentiamo la necessità di avere decine di campi "carichi" e
>"scarichi" precostituiti: con una opportuna codifica delle causali, delle
>provenienze edelle destinazioni non ne sentiamo proprio la mancanza.
Quindi, mi pare superfluo stare a "controbattere" punto per
punto :-)
Comunque fa sempre piacere vedere nuovi orizzonti; pensa che
molto tempo fa ho dovuto abbandonare il mio estremismo
pro-relazionale puro scontrandomi con la realta' che ora
conosco meglio...
Forse nel mio futuro ci sara' un ritorno alle origini,
chissa' :-)
>E poi come dice MegaMax si sta facendo solo  un pò di "filosofia". :-)
Questi sono i 3d che mi piacciono di piu'!
Bai



text:
Scrisse "MegaMax" <
a...@a.com
>:
>La tua soluzione quindi qual'è?
>Calcoli le giacenze dinamicamente? o le tieni sempre aggiornate in tempo
>reale?
Io adotto un sistema di progressivi a livello di articolo
che possono essere, a scelta dell'utente, annuali, mensili o
giornalieri, oltre natualmente a quelli odierni.
Mentre al negozietto sara' sufficiente avere le giacenze a
inizio anno, quelle progressive ad oggi, e magari si
calcolera' in base ai movimenti quelle al 31 marzo, un
grande supermercato deve calcolare rotazione e riordini
anche piu' volte al giorno!
>Il tuo esempio mi fa supporre che sia praticamente impossibile avere in
>qualche secondo (al massimo) la giacenza/stato/disponibilità di tutto un
>magazino (o tutti i magazini di un'azienda).
Tutto dipende dalla complessita' del calcolo.
>Quindi se le prestazioni soo basilari forse vale la pena di fare tutto
>aggiornato in tempo reale...
Avrai visto nel resto del 3d come la penso.
Cmq bisogna prima di tutto avere chiaro in mente l'ambito di
applicazione e le esigenze del/dei cliente/i.
Se la mia esperienza (distribuzione) ti puo' interessare,
chiedi pure.



text:
"Lorenzo Coronati" <lorenzo.coronati@liberopuntoit> ha scritto nel messaggio
news:3b4e99bf...@news.libero.it...
[CUT]
>
> >E poi come dice MegaMax si sta facendo solo  un pò di "filosofia". :-)
> Questi sono i 3d che mi piacciono di piu'!
>
> Bai
>
> --
> Lorenzo Coronati
> --
> <<Ragazzi, sapete indicarmi una utility in
> internet che sia in grado di recuperare le
> password da un database access e da un system mdw?
> intendevo, gratuita...>>
> (Marco Tullio Bisoli, 27/04/2001)
> --
Ciao, e al prossimo piacevole confronto: anche a me piacciono questi thread!



title: Criteri di una query da sottomaschera (popup) tabellare

author: michele

text:
In una sottomaschera (popup) tabellare ho dei campi tra cui uno di testo
[Ndoc] ed uno data/ora [Ddoc]; vorrei che, una volta attivatà la proprietà
Evento (su clic) del campo [Ndoc], facendo clic i campi [Ndoc] e [Ddoc] "di
quel record" vadano a formare i criteri di una query di selezione.
Qualcuno può darmi qualche suggerimento?
Grazie
Michele

--------------------------------
Inviato via
http://arianna.libero.it/usenet/


author: Sergio MAZZA

text:
"michele" <
mic...@inwind.it
> ha scritto nel messaggio
news:193Z227Z212Z131...@usenet.libero.it...
>
> In una sottomaschera (popup) tabellare ho dei campi tra cui uno di testo
> [Ndoc] ed uno data/ora [Ddoc]; vorrei che, una volta attivatà la proprietà
> Evento (su clic) del campo [Ndoc], facendo clic i campi [Ndoc] e [Ddoc]
> "di
> quel record" vadano a formare i criteri di una query di selezione.
> Qualcuno può darmi qualche suggerimento?
>
> Grazie
> Michele
Nella query ci inserisci i riferimenti alla maschera e controlli;
es. (una form)
Forms!nomeForm!nomeControllo
es. (form e subForm)
Forms!nomeForm!nomeSubForm.Form!nomeControllo
Ciao.
--
Sergio MAZZA


text:
                    Il 04 Mar 2005, 16:05, "Sergio MAZZA" <
sergi...@tiscali.it
> ha scritto:
> "michele" <
mic...@inwind.it
> ha scritto nel messaggio
> news:193Z227Z212Z131...@usenet.libero.it...
> >
> > In una sottomaschera (popup) tabellare ho dei campi tra cui uno di testo
> > [Ndoc] ed uno data/ora [Ddoc]; vorrei che, una volta attivatà la
proprietà
> > Evento (su clic) del campo [Ndoc], facendo clic i campi [Ndoc] e [Ddoc]
> > "di
> > quel record" vadano a formare i criteri di una query di selezione.
> > Qualcuno può darmi qualche suggerimento?
> >
> > Grazie
> > Michele
>
> Ti ringrazio ma i criteri da te mensionati non funzionano correttamente
forse perchè
per le sottomaschere tabellari c'è qualche problema in più.
> Nella query ci inserisci i riferimenti alla maschera e controlli;
> es. (una form)
> Forms!nomeForm!nomeControllo
> es. (form e subForm)
> Forms!nomeForm!nomeSubForm.Form!nomeControllo
>
> Ciao.
>
> --
> Sergio MAZZA
>




title: aiuto su distinta base

author: Arold

text:
ho una tabella prodotti computer
poi ho un altra tabella distinta base che definisce dei gruppi di prodotti
esempio
    pc modello 1 costituito da
        prodotto1 prezzo1
        prodotto2 prezzo2
    pc modello 2 costituito da
        prodotto3 prezzo3
        prodotto4 prezzo4
vorrei che al variare dei prezzi in tabella prodotti si aggiornassero in
automatico i prezzi dei prodotti usati nella tabella distintabase e se
elimino un prodotto da magazzino usato in distintabase quella riga la fà
diventare come tutti zero e descrizine "prodotto eliminato"
sapete che relazioni devo impostare?
Grazie.


title: aiuto su distinta base

author: Michael

text:
">
> vorrei che al variare dei prezzi in tabella prodotti si aggiornassero in
> automatico i prezzi dei prodotti usati nella tabella distintabase
Ma le distinte base funzionano esattamente al contrario!
Sei sicuro?


title: aiuto su distinta base

text:
"Michael" <
mi...@tin.it
> ha scritto nel messaggio
news:bgdtb2$sud$1...@usenet.itgate.net...

Al contrario? cosa intendi? forse mi sono spiegato male.
Praticamente vorrei costituire dei Compuer con dei componenti diversi
Computer 1 pezzo 1 pezzo 2 pezzo 3 ecc.....
Computer 2 pezzo 1 pezzo 2 pezzo 3 ecc.....
Computer 3 pezzo 1 pezzo 2 pezzo 3 ecc.....
Computer 4 pezzo 1 pezzo 2 pezzo 3 ecc.....
Computer 5 pezzo 1 pezzo 2 pezzo 3 ecc.....
se vario il prezzo in listino mi si varià il il prezzo nella distinta e
quindi il totale della distinta
se elimino uno dei pezzi usati dal listino nella disinta resta un buco con
scritto "prodotto eliminato"
sarà possibile? booooo


title: aiuto su distinta base

author: Francesco R.

text:
"Arold" <
simb...@libero.it
> ha scritto nel messaggio
news:bgdibf$lvr$1...@lacerta.tiscalinet.it...

Se ho ben capito, nella tua tabella 'prodotti' hai i prezzi di vendita dei
componenti dei PC, nella tua 'DistintaBase' vuoi mettere l'elenco dei
componenti, per ottenerne i prezzo di vendita finale, al variare del prezzo
di vendita di un componente.
Intanto, per non venire meno alle regole basilari di creazione di un
database, mai devi pensare di cancellare un record al quale si fa
riferimento da record in un'altra tabella, le opzioni circa l'integrità
referenziale che trovi quando definisci una relazione tra tabelle servono
proprio a questo.
Per indicare che un articolo è stato annullato, è sufficiente inserire un
campo flag che indica appunto lo stato di un'articolo.
In maniera micro-minimale puoi impostare le tue tabelle così:
Prodotti
    IdArticolo: chiave primaria alfanumerica di 10 caratteri
    Descrizione: campo alfanumerico di 50 caratteri
    PrezzoAcq: Campo di tipo valuta
    PrezzoVen: Campo di tipo valuta
    ArtAttivo: Campo di tipo Booleano (Sì/No)
DistintaBaseTesta
    idDistinta: Chiave primaria alfanumerica di 10 caratteri
    Descrizione: campo alfanumerico di 50 caratteri
    DistAttiva: Campo di tipo Booleano (Sì/No)
DistintaBaseCorpo
    idDistinta: campo alfanumerico 10 caratteri collegato 1-molti con
'DistintaBaseTesta'
    NRiga: Campo di tipo numerico (byte dovrebbe bastare)
    ------------------------------> i primi due campi formano la chiave
primaria della tabella
    idArticolo: campo alfanumerico 10 caratteri collegato 1-molti con
'Prodotti'
    QtaImpiegata: Campo numerico doppia precisione
A questo punto con delle query e poi con delle maschere basate su di esse,
puoi ottenere quello che vuoi.
Ciao.


title: aiuto su distinta base

text:
> primaria della tabella
>     idArticolo: campo alfanumerico 10 caratteri collegato 1-molti con
> 'Prodotti'
>     QtaImpiegata: Campo numerico doppia precisione
>
>
> A questo punto con delle query e poi con delle maschere basate su di esse,
> puoi ottenere quello che vuoi.
> Ciao.
ora provo, intanto grazie.


title: MSDE via ODBC impossibile il raggruppamento per date

author: ciroteo

text:
In una query tradizionale di access con tabelle .mdb usavo questa
soluzione per raggruppare / conteggiare gli orari.
tot:somma([ora_fine]-[ora_inizio])*24
Risulta però impossibile eseguire questo tipo di raggruppamento se
trattasi di tabella collegata via odbc a MSDE / SQl
Sto cercando un po' ma trovo solo soluzioni di stored procedures, io
vorrei tenere buone le query di access perchè usate in diversi punti
dell'applicazione.
Grazie in advance.
M


author: giorgio rancati

text:
"ciroteo" <
matteo...@gmail.com
> ha scritto nel messaggio
news:1161853608.7...@m73g2000cwd.googlegroups.com...



Ciao ciroteo,
l'espressione
----
tot:somma([ora_fine]-[ora_inizio])*24
----
viene convertita in
-----
SELECT .... ,SUM(("ora_fine" - "ora_inizio" ) )  FROM .... GROUP BY ....
----
Sql Server non permette la sommatoria diretta delle ore, Access stesso
esegue una conversione implicita nel tipo di dato Doppia precisione. Detto
questo, pui aggirare il problema così
----
tot:somma(Cdbl([ora_fine])-Cdbl([ora_inizio]))*24
----
l'inconveniente è che questa espressione non può essere convertita in
linguaggio T-Sql, quindi il server è costretto a restituire tutte le righe
ad Access che poi eseguirà la sommatoria
Ciao
--
Giorgio Rancati
[Office Access MVP]


text:
giorgio rancati ha scritto:

grazie giorgio, non ho msde qui ma stasera provo e ti faccio sapere.
sarà senz'altro giusto.


title: [OT] x Karl - strutture fondamentali

author: Valerio Valentini

text:
Cosa intendi per Access-Fenster als ganzes betreffend,
l'attuale traduzione non rende molto in italiano.
Questi link sono solo una piccola scelta dei molti siti su Access. I brevi
testi di descrizione nascono dalla mia impressione soggettiva.
Questi link sono solo una ridotta selezione dei molti siti su Access. Le
brevi descrizioni vengono dalla mia percezione dei contenuti.
9.5 TAVOLE DEGLI ASSIDUI DI ACCESS
9.5 TAVOLE ROTONDE DI ACCESS
spero, qualcuno lanci altre terminologie, Stammtisch non esiste in italiano.
Per traduzione è lo stesso tavolo a cui gli amici si ritrovano al bar tutte
le sere.
Sembra che questi incontri regolari che la gente fanno nelle città di
Germania e Austria non esistono in Italia. Forse aggiungiamo link su siti
che hanno informazioni per raduni. (la gente fa - la gente è singolare in
italiano)
Sembra che incontri regolari come fanno in Germania o Austria non avvengano
in Italia. Eventualmente aggiungeremo link di siti che abbiano informazioni
sui raduni.
Appena vedo altro ti faccio sapere. Intanto complimenti.
Ciao Valerio.


title: [OT] x Karl - strutture fondamentali

author: Karl Donaubauer

text:
Valerio Valentini wrote:
> Cosa intendi per Access-Fenster als ganzes betreffend,
> l'attuale traduzione non rende molto in italiano.
La finestra (window) dell'applicazione di Access perchè ci sono
articoli come nasconderla, ingrandirla ecc.
> ...
Grazie per le correzioni.
--
Servus
Karl
*********
Access FAQ:
www.donkarl.com/it


title: [OT] x Karl - strutture fondamentali

author: MA

text:
"Valerio Valentini" <
ijv...@tin.it
> ha scritto nel
messaggio
news:kZfGc.416691$hc5.18...@news3.tin.it...
> Cosa intendi per Access-Fenster als ganzes
betreffend,
>
> l'attuale traduzione non rende molto in
italiano.
>
>
> Questi link sono solo una piccola scelta dei
molti siti su Access. I brevi
> testi di descrizione nascono dalla mia
impressione soggettiva.
>
> Questi link sono solo una ridotta selezione dei
molti siti su Access. Le
> brevi descrizioni vengono dalla mia percezione
dei contenuti.
Questo deve rispondere Karl
>
>
> 9.5 TAVOLE DEGLI ASSIDUI DI ACCESS
>
> 9.5 TAVOLE ROTONDE DI ACCESS
> spero, qualcuno lanci altre terminologie,
Stammtisch non esiste in italiano.
> Per traduzione è lo stesso tavolo a cui gli
amici si ritrovano al bar tutte
> le sere.
Discussioni su Access
A Napoli sarebbe
Access a taralluci e vino
>
>
> Sembra che questi incontri regolari che la gente
fanno nelle città di
> Germania e Austria non esistono in Italia. Forse
aggiungiamo link su siti
> che hanno informazioni per raduni. (la gente
fa - la gente è singolare in
> italiano)
>
> Sembra che incontri regolari come fanno in
Germania o Austria non avvengano
> in Italia. Eventualmente aggiungeremo link di
siti che abbiano informazioni
> sui raduni.
Sembra che quelli che sono incontri regolari in
Germania e Austria, non avvengano in Italia.
Eventualemte segnaleremo link che di siti che
abbiano informazioni sui raduni
Ciao MAssimiliano


title: [OT] x Karl - strutture fondamentali

author: TheMax

text:
"MA" <
mas...@massimilianoamendola.it
> ha scritto nel messaggio
news:mogGc.12663$%l2....@news.edisontel.com...
>
> Discussioni su Access
> A Napoli sarebbe
> Access a taralluci e vino
A verona sarebbe
bollito e pearà
(ovviamente vino a parte)
--
web:
www.piubelli.net
Vuoi il mio indirizzo? Togli _cut_ per rispondermi


title: [OT] x Karl - strutture fondamentali

text:
"Karl Donaubauer" <
NoS...@donkarl.com
> ha scritto nel messaggio
news:2kth81F...@uni-berlin.de...
> Valerio Valentini wrote:
> > Cosa intendi per Access-Fenster als ganzes betreffend,
> > l'attuale traduzione non rende molto in italiano.
>
> La finestra (window) dell'applicazione di Access perchè ci sono
> articoli come nasconderla, ingrandirla ecc.
>
> > ...
concernente Access intero o la finestra di Access
relativi ad Access ed alla sua finestra di programma



title: [OT] x Karl - strutture fondamentali

text:
"Valerio Valentini" <
ijv...@tin.it
> ha scritto nel
messaggio
news:0AlGc.582759$rM4.24...@news4.tin.it...
>
> "Karl Donaubauer" <
NoS...@donkarl.com
> ha
scritto nel messaggio
> news:2kth81F...@uni-berlin.de...
> > Valerio Valentini wrote:
> > > Cosa intendi per Access-Fenster als ganzes
betreffend,
> > > l'attuale traduzione non rende molto in
italiano.
> >
> > La finestra (window) dell'applicazione di
Access perchè ci sono
> > articoli come nasconderla, ingrandirla ecc.
> >
> > > ...
>
> concernente Access intero o la finestra di
Access
>
> relativi ad Access ed alla sua finestra di
programma
>
> > Grazie per le correzioni.
Quella che lanci quando apri Access e non
selezioni il database.
Hai la possibilità di far visualizzare sul desktop
solo le form e i msgbox
MAssimiliano


title: [OT] x Karl - strutture fondamentali

text:
"MA" <
mas...@massimilianoamendola.it
> ha scritto nel messaggio
news:_1sGc.12772$%l2....@news.edisontel.com...
>
....
>
> Quella che lanci quando apri Access e non
> selezioni il database.
> Hai la possibilità di far visualizzare sul desktop
> solo le form e i msgbox
Questa non la sapevo. Come?
> MAssimiliano
>
Ciao Valerio.


title: [OT] x Karl - strutture fondamentali

text:
"Valerio Valentini" <
ijv...@tin.it
> ha scritto nel
messaggio
news:dJtGc.418599$hc5.18...@news3.tin.it...

C'è su
www.sitocomune.com
"nascondere la finestra di access" +o-
o anche sul sito di karl
MAssimiliano


title: [OT] x Karl - strutture fondamentali

text:
Valerio Valentini wrote:
> "MA ha scritto:
>> Quella che lanci quando apri Access e non
>> selezioni il database.
>> Hai la possibilità di far visualizzare sul desktop
>> solo le form e i msgbox
>
> Questa non la sapevo. Come?
Lo sai - anche i problemi - quando sei arrivato a 1.11.
--
cu



title: [OT] x Karl - strutture fondamentali

text:
"Karl Donaubauer" <
NoS...@donkarl.com
> ha scritto
nel messaggio news:2kvb78F...@uni-berlin.de...

Karl nelle segnalazioni in inglese:
Rick Fisher, Find&Replace, tool shareware per
cerchare e sostituire globalmente in Access
Cercare
MAssimiliano


title: [OT] x Karl - strutture fondamentali

text:
MA wrote:
> ... Karl nelle segnalazioni in inglese:
> Rick Fisher, Find&Replace, tool shareware per
> cerchare e sostituire globalmente in Access
>
> Cercare
--
tnx



title: esecuzione codice su combinazione tasti

text:
Ciao a tutti!
Vorrei lanciare un'istruzione sql (o qualunque altra riga di codice)
attraverso una combinazione di tasti.
Nello specifico: mi trovo in una sottomaschera e vorrei duplicare il record
impegnato, la procedura l'ho già fatta ma è impostata sul click di un
pulsante. Ciò comporta una perdita di tempo, staccare la manina cercare il
mouse fare click , far cadere la tazza del caffè ... ecc...
In fase di data entry, quando cioè si devono compiere operazioni ripetitive
sarebbe più comodo utilizzare solo scorciatoie da tastiera. Qualche dritta?


title: esecuzione codice su combinazione tasti

author: Nick

text:
"ciroteo" <
cir...@yaoomail.it
> ha scritto nel messaggio news:ccgc15$9ef$1...@hulme.interac.it...

se la combinazione è "generale" puoi usare una macro che chiami Autokeys e qui dentro inserisci la tua combinazione (nella colonna
NomeMacro ) e gli associ la funzione relativa.
se è solo della maschera usi al proprietà su pressione
ciao
Nick


title: esecuzione codice su combinazione tasti

author: Pablitomf

text:
ciroteo ha scritto:

Macro AutoKeys
--
Pablitomf
Lentamente muore chi abbandona un progetto prima di iniziarlo, chi non fa
domande sugli argomenti che non conosce, chi non risponde quando gli
chiedono qualcosa che conosce. (P.Neruda)
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: esecuzione codice su combinazione tasti

text:
"Pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:ccgcsh$p5f$1...@news.newsland.it...

ok grazie ... stavo guardando nei vecchi post, infatti si parla di questa
fantomatica macro autokeys.
Ora si tratta di capire se è un'azione relativa alla singola maschera e
pertanto valutare se è meglio far eseguire il codice su pressione o su tasto
giu.
Se la combinazione che eventualmente scelgo è già una di quelle previste da
access ( certamente non farò ctrl+c ... :-) )quale delle due prevale?
Quella che ho impostato io o quella predefinita?


title: esecuzione codice su combinazione tasti

text:
"ciroteo" <
cir...@yaoomail.it
> ha scritto nel
messaggio news:ccgc15$9ef$1...@hulme.interac.it...

Metti la tua istruzione in un modulo, cambia il
riferimento me.tuocontrollo con
forms!tuamaschera.form!tuocontrollo
e usa autokeys.
MAssimiliano


title: esecuzione codice su combinazione tasti

text:
ciroteo ha scritto:
> ok grazie ... stavo guardando nei vecchi post, infatti si parla di questa
> fantomatica macro autokeys.
> Ora si tratta di capire se è un'azione relativa alla singola maschera e
> pertanto valutare se è meglio far eseguire il codice su pressione o su tasto
> giu.
> Se la combinazione che eventualmente scelgo è già una di quelle previste da
> access ( certamente non farò ctrl+c ... :-) )quale delle due prevale?
> Quella che ho impostato io o quella predefinita?
La prima che hai detto... la macro è una forzatura.



title: esecuzione codice su combinazione tasti

text:
"Pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:ccgdlq$sc$1...@news.newsland.it...

grazie x le risposte! ... forse era meglio che facessi F1 ... c'è tutto :-(


title: esecuzione codice su combinazione tasti

text:
>
> grazie x le risposte! ... forse era meglio che
facessi F1 ... c'č tutto :-(
Dura lex sed lex
MAssimiliano


title: esecuzione codice su combinazione tasti

text:
ciroteo ha scritto:
> grazie x le risposte! ... forse era meglio che facessi F1 ... c'è tutto :-(
Chi la dura la vince...ma effettivamente chi legge la vince prima ;-)



title: esecuzione codice su combinazione tasti

text:
"Pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:ccgfk5$hr0$1...@news.newsland.it...
> ciroteo ha scritto:
>
> > grazie x le risposte! ... forse era meglio che facessi F1 ... c'č tutto
:-(
>
> Chi la dura la vince...ma effettivamente chi legge la vince prima ;-)
>
> --
> Pablitomf
>
> Lentamente muore chi abbandona un progetto prima di iniziarlo, chi non fa
> domande sugli argomenti che non conosce, chi non risponde quando gli
> chiedono qualcosa che conosce. (P.Neruda)
>
> questo articolo e` stato inviato via web dal servizio gratuito
>
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it
>
>
Ehi commandos napoletano, leggevo che il vs raduno č andato bene, ma
soprattutto ha sortito la fenomenale epopea della Traduzione Summa del sito
di Karl.
Come avete fatto, č uno dei misteri piů grandi di fronte a cui mi sono
imbattuto finora! ...
Approposito, ieri ho mandato le foto ai nostri, attendo le vostre.


title: esecuzione codice su combinazione tasti

text:
"ciroteo" <
cir...@yaoomail.it
> ha scritto nel
messaggio news:ccghac$9j1$1...@hulme.interac.it...

Te le ho inviate, ma č tornata dietro la mail
Mandami il tuo indirizzo in privato
MAssimiliano


title: esecuzione codice su combinazione tasti

text:
ciroteo ha scritto:
> Ehi commandos napoletano, leggevo che il vs raduno č andato bene, ma
> soprattutto ha sortito la fenomenale epopea della Traduzione Summa del sito
> di Karl.
Ti č piaciuta?
> Come avete fatto, č uno dei misteri piů grandi di fronte a cui mi sono
> imbattuto finora! ...
Non si č mica Napoletani per caso!!!! Hehehehe!!!... ;-)
> Approposito, ieri ho mandato le foto ai nostri, attendo le vostre.
C'č MA x questo... il nostro caro fotografo ufficiale... MA, mandagli
anche quella del BACCO Biso :-)



title: esecuzione codice su combinazione tasti

text:
Wow! visto le foto, siete tutti proprio belli!
1 considerazione : chi ha la bottiglia nel cestello del ghiaccio è proprio
un signore ... e voi ... lo siete!
2 domanda: chi si è macchiato il vestitino? Ho visto lo smacchiatore sul
tavolo ....
(ho lavorato5 anni come pizzaiolo in un ristorante come terzo o quarto
lavoro ... x cui me ne intendo di macchie di pommarola ...)


title: esecuzione codice su combinazione tasti

text:
ciroteo ha scritto:

Io mi sono sporcato... e con la camicia bianca la macchia (che poi si è
quintuplicata durante tutta la cena) si nota! ...menomale che la mia metà
è così attenta. ;-) Fosse stato per me!



title: esecuzione codice su combinazione tasti

author: namor

text:
ciroteo ha scritto:

Non serve usare il mouse per premere un pulsante. Scegli una lettera
dell'etichetta che vuoi usare per attivare il pulsante e marcala con &,
per esempio "&Pulsante" (nell'etichetta del controllo, non nel nome), poi
quando dalla maschera premi Alt-p hai lo stesso effetto del click ma senza
togliere le mani dalla tastiera.
Namor
--
namor at inwind punto it



title: esecuzione codice su combinazione tasti

text:
"namor" <
do...@spam.me
> ha scritto nel messaggio
news:cch6o0$7pe$1...@news.newsland.it...

e questa è bella ..........


title: esecuzione codice su combinazione tasti

text:
ciroteo ha scritto:
> e questa č bella ..........
e questa pure nell'F1 sta!!!! ma proprio non ti piace č????? ;-)
--
Pablitomf
Lentamente muore chi abbandona un progetto prima di iniziarlo, chi non fa
domande sugli argomenti che non conosce, chi non risponde quando gli
chiedono qualcosa che conosce. (P.Neruda)
questo articolo e` stato inviato via web dal servizio gratuito



title: ricostruire tabella con record piu' recenti

author: francesco

text:
Salve a tutti; per esigenze di backup dei dati ho inserito all'interno della
tabella un campo data che si aggiorna automaticamente ad ogni modifica. In
base a questo campo, esporto i dati creando nuove tabelle in base alla data
di ultima modifica. Il problema si pone se si dovessero usare queste tabelle
per ricostruire la tabella principale, datoché in fase di accodamento dei
dati ci si troverebbe davanti a più record con lo stesso id, ma con data
ultima modifica diversa. Come dice Lubrano, la domanda sorge spontanea, e
cioè:
come importare i dati, testando i record con lo stesso id e facendogli
replicare solo quelli con la data più recente?
grazie e spero di essere stato chiaro
Francesco
--------------------------------
Inviato via
http://arianna.libero.it/usenet/


author: THE WAR KING MASTER SUPER COMMANDER 1,1

text:
francesco...IN UNA NOTTE DI LUNA PIENA INFESTATA DA LUPI.LICANTROPI E
VAMPIRI GIUNTI DIRETTAMENTE DALL TRANSILVANIA....TRA UNA DROGA PESANTE
ASSUNTA ASSIEME A QUELCHE FARMACO ha scritto:
> grazie e spero di essere stato chiaro
CHIARO COME LA PECE DI NOTTE AGLI OCCHI DI UN CECO IN COMA FARMACEUTICO
DOPO UNA DOSE MULTIPLA DI SONNIFERI TAGLIATI CON MORFINA E DROGHE PESANTI
DI VARIO GENERE
PIERSILVIO MAIALONI
RACCOLTA DI FIRME CONTRO LA PACE IN IRACKQU:
  LKDSJFS DSOPFJSD
  DIOFUS+S'D0F E09FU
  DSFOISO AOUDAS
  SADOFPUWELW
  DSFO  REWOIOIWEIRWE
  DSFOO I EIWOI
  EWRW
EHI NON SUPITEVI...SONO NOMI IRAKENI!! IGNORANTI
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


author: Roberto da casa

text:
"francesco" <
fran...@tin.it
> ha scritto nel messaggio
news:82Z49Z81Z48Y10...@usenet.libero.it...
> Salve a tutti; per esigenze di backup dei dati ho inserito all'interno
della
> tabella un campo data che si aggiorna automaticamente ad ogni modifica. In
> base a questo campo, esporto i dati creando nuove tabelle in base alla
data
> di ultima modifica. Il problema si pone se si dovessero usare queste
tabelle
> per ricostruire la tabella principale, datoché in fase di accodamento dei
> dati ci si troverebbe davanti a piů record con lo stesso id, ma con data
> ultima modifica diversa. Come dice Lubrano, la domanda sorge spontanea, e
> cioč:
>
> come importare i dati, testando i record con lo stesso id e facendogli
> replicare solo quelli con la data piů recente?
>
> grazie e spero di essere stato chiaro
>
> Francesco
>
Se hai una tabella chiamata Storico che ha una struttura simile a questa:
IDpk                    Contatore e chiave primaria
ID                        Numerico
Campo1
Campo2
Campo3
DataVariazione    Data/ora
Se vuoi una query che ti restituisca per ogni ID il record che ha la
maggiore DataVariazione, prova con una query che abbia il seguente codice
SQL:
SELECT Storico.*
FROM Storico
WHERE Storico.IDpk IN(SELECT DLookUp("IDpk","Storico","ID=" & [ID] & " And
DataVariazione = #" & Format(Max(Storico.DataVariazione),"mm/dd/yyyy") &
"#") AS Pippo
FROM Storico
GROUP BY Storico.ID;);
Se invece il campo ID č di tipo testo, prova cosě:
SELECT Storico.*
FROM Storico
WHERE Storico.IDpk IN(SELECT DLookUp("IDpk","Storico","ID='" & [ID] & "' And
DataVariazione = #" & Format(Max(Storico.DataVariazione),"mm/dd/yyyy") &
"#") AS Pippo
FROM Storico
GROUP BY Storico.ID;);
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


text:
Il 06 Feb 2004, 17:32, "Roberto da casa" <
r.ma...@libero.it
> ha scritto:
>
> "francesco" <
fran...@tin.it
> ha scritto nel messaggio
> news:82Z49Z81Z48Y10...@usenet.libero.it...
> > Salve a tutti; per esigenze di backup dei dati ho inserito all'interno
> della
> > tabella un campo data che si aggiorna automaticamente ad ogni modifica.
In
> > base a questo campo, esporto i dati creando nuove tabelle in base alla
> data
> > di ultima modifica. Il problema si pone se si dovessero usare queste
> tabelle
> > per ricostruire la tabella principale, datoché in fase di accodamento
dei
> > dati ci si troverebbe davanti a più record con lo stesso id, ma con data
> > ultima modifica diversa. Come dice Lubrano, la domanda sorge spontanea,
e
> > cioè:
> >
> > come importare i dati, testando i record con lo stesso id e facendogli
> > replicare solo quelli con la data più recente?
> >
> > grazie e spero di essere stato chiaro
> >
> > Francesco
> >
>
> Se hai una tabella chiamata Storico che ha una struttura simile a questa:
>
> IDpk Contatore e chiave primaria
> ID Numerico
> Campo1
> Campo2
> Campo3
> DataVariazione Data/ora
>
> Se vuoi una query che ti restituisca per ogni ID il record che ha la
> maggiore DataVariazione, prova con una query che abbia il seguente codice
> SQL:
>
> SELECT Storico.*
> FROM Storico
> WHERE Storico.IDpk IN(SELECT DLookUp("IDpk","Storico","ID=" & [ID] & " And
> DataVariazione = #" & Format(Max(Storico.DataVariazione),"mm/dd/yyyy") &
> "#") AS Pippo
> FROM Storico
> GROUP BY Storico.ID;);
>
> Se invece il campo ID è di tipo testo, prova così:
>
> SELECT Storico.*
> FROM Storico
> WHERE Storico.IDpk IN(SELECT DLookUp("IDpk","Storico","ID='" & [ID] & "'
And
> DataVariazione = #" & Format(Max(Storico.DataVariazione),"mm/dd/yyyy") &
> "#") AS Pippo
> FROM Storico
> GROUP BY Storico.ID;);
>
> --
> Roberto
>
> ---------------------------------------------
> il Sito Comune di it.comp.appl.access:
>
http://www.sitocomune.com
> ---------------------------------------------
>
Mi è abbastanza chiaro, però il campo ID della mia tabella è uno solo ed è
chiave primaria.
ciao
F



text:
"francesco" <
fran...@tin.it
> ha scritto nel messaggio
news:82Z49Z81Z99Y1...@usenet.libero.it...
> Il 06 Feb 2004, 17:32, "Roberto da casa" <
r.ma...@libero.it
> ha scritto:
> >
> > "francesco" <
fran...@tin.it
> ha scritto nel messaggio
> > news:82Z49Z81Z48Y10...@usenet.libero.it...
> > > Salve a tutti; per esigenze di backup dei dati ho inserito all'interno
> > della
> > > tabella un campo data che si aggiorna automaticamente ad ogni
modifica.
> In
> > > base a questo campo, esporto i dati creando nuove tabelle in base alla
> > data
> > > di ultima modifica. Il problema si pone se si dovessero usare queste
> > tabelle
> > > per ricostruire la tabella principale, datoché in fase di accodamento
> dei
> > > dati ci si troverebbe davanti a piů record con lo stesso id, ma con
data
> > > ultima modifica diversa. Come dice Lubrano, la domanda sorge
spontanea,
> e
> > > cioč:
> > >
> > > come importare i dati, testando i record con lo stesso id e facendogli
> > > replicare solo quelli con la data piů recente?
> > >
> > > grazie e spero di essere stato chiaro
> > >
> > > Francesco
> > >
> >
> > Se hai una tabella chiamata Storico che ha una struttura simile a
questa:
> >
> > IDpk Contatore e chiave primaria
> > ID Numerico
> > Campo1
> > Campo2
> > Campo3
> > DataVariazione Data/ora
> >
> > Se vuoi una query che ti restituisca per ogni ID il record che ha la
> > maggiore DataVariazione, prova con una query che abbia il seguente
codice
> > SQL:
> >
> > SELECT Storico.*
> > FROM Storico
> > WHERE Storico.IDpk IN(SELECT DLookUp("IDpk","Storico","ID=" & [ID] & "
And
> > DataVariazione = #" & Format(Max(Storico.DataVariazione),"mm/dd/yyyy") &
> > "#") AS Pippo
> > FROM Storico
> > GROUP BY Storico.ID;);
> >
> > Se invece il campo ID č di tipo testo, prova cosě:
> >
> > SELECT Storico.*
> > FROM Storico
> > WHERE Storico.IDpk IN(SELECT DLookUp("IDpk","Storico","ID='" & [ID] & "'
> And
> > DataVariazione = #" & Format(Max(Storico.DataVariazione),"mm/dd/yyyy") &
> > "#") AS Pippo
> > FROM Storico
> > GROUP BY Storico.ID;);
> >
> > --
> > Roberto
> >
>
> Mi č abbastanza chiaro, perň il campo ID della mia tabella č uno solo ed č
> chiave primaria.
>
> ciao
>
> F
Riporto qui di seguito virgolettato quello che hai scritto nel tuo primo
messaggio:
<omissis>
"in fase di accodamento dei dati ci si troverebbe davanti a piů record con
lo stesso id, ma con data ultima modifica diversa."
<omissis>
Di due l'una: il campo Id NON č la chiave primaria (come fra l'altro ho
presupposto, su tua indicazione, nella mia soluzione) ed allora la mia
soluzione dovrebbe funzionare; oppure come dici nel tuo ultimo messaggio ed
allora potrai avere un solo record che abbia quell'id e non "piů record con
lo stesso id" come hai precisato nel tuo primo messaggio.
Ti faccio presente che nel mio esempio con ID intendo un campo che contiene
un campo di codifica che identifica una persona i cui dati vengono variati
nel tempo.
Comunque a questo punto, per continuare il dialogo sul tuo problema č per me
necessario che posti la struttura della tabella che contiene i dati,
spiegando anche il significato dei campi, specie delle chiavi.



text:

Caro Roberto la struttura della mia tabella č:
id --->chiave primaria
data ult mod---> campo data
campo1
campo2
campo3
ecc.
l'export dei dati che io immagino, selezionati per data ult mod, č questo:
esporta tutti i record moficati dal 05/02 al 07/02
poi ancora
esporta tutti i record moficati dal 07/02 al 09/02....ecc.
il tutto chiaramente creando di volta in volta tante tabelle diverse di
piccola taglia, per una facile trasportabilitŕ.
Chiaramente noi ci troveremo di fronte, in un eventuale ricostruzione della
tabella totale, alcuni record che avranno l'id comune ma la data di ultima
modifica diversa, ed č quě che nel ricostruire l'unica tabella, vorrei
testare i record con id uguale č facendo si che nella tabella generale fosse
inserito solo quello con data ult mod piu' recente.
Spero di essere stato abbastanza chiaro nell'esporre il problema.
Ciao e grazie
Francesco



text:
"francesco" <
fran...@tin.it
> ha scritto nel messaggio
news:80Z182Z85Z1Y1...@usenet.libero.it...
> Il 07 Feb 2004, 15:20, "Roberto da casa" <
r.ma...@libero.it
> ha scritto:
> >
> > "francesco" <
fran...@tin.it
> ha scritto nel messaggio
> > news:82Z49Z81Z99Y1...@usenet.libero.it...
> > > Il 06 Feb 2004, 17:32, "Roberto da casa" <
r.ma...@libero.it
> ha
> scritto:
> > > >
> > > > "francesco" <
fran...@tin.it
> ha scritto nel messaggio
> > > > news:82Z49Z81Z48Y10...@usenet.libero.it...
> > > > > Salve a tutti; per esigenze di backup dei dati ho inserito
> all'interno
> > > > della
> > > > > tabella un campo data che si aggiorna automaticamente ad ogni
> > modifica.
> > > In
> > > > > base a questo campo, esporto i dati creando nuove tabelle in base
> alla
> > > > data
> > > > > di ultima modifica. Il problema si pone se si dovessero usare
queste
> > > > tabelle
> > > > > per ricostruire la tabella principale, datoché in fase di
> accodamento
> > > dei
> > > > > dati ci si troverebbe davanti a più record con lo stesso id, ma
con
> > data
> > > > > ultima modifica diversa. Come dice Lubrano, la domanda sorge
> > spontanea,
> > > e
> > > > > cioè:
> > > > >
> > > > > come importare i dati, testando i record con lo stesso id e
> facendogli
> > > > > replicare solo quelli con la data più recente?
> > > > >
> > > > > grazie e spero di essere stato chiaro
> > > > >
> > > > > Francesco
> > > > >
> > > >
> > > > Se hai una tabella chiamata Storico che ha una struttura simile a
> > questa:
> > > >
> > > > IDpk Contatore e chiave primaria
> > > > ID Numerico
> > > > Campo1
> > > > Campo2
> > > > Campo3
> > > > DataVariazione Data/ora
> > > >
> > > > Se vuoi una query che ti restituisca per ogni ID il record che ha la
> > > > maggiore DataVariazione, prova con una query che abbia il seguente
> > codice
> > > > SQL:
> > > >
> > > > SELECT Storico.*
> > > > FROM Storico
> > > > WHERE Storico.IDpk IN(SELECT DLookUp("IDpk","Storico","ID=" & [ID] &
"
> > And
> > > > DataVariazione = #" &
Format(Max(Storico.DataVariazione),"mm/dd/yyyy")
> &
> > > > "#") AS Pippo
> > > > FROM Storico
> > > > GROUP BY Storico.ID;);
> > > >
> > > > Se invece il campo ID è di tipo testo, prova così:
> > > >
> > > > SELECT Storico.*
> > > > FROM Storico
> > > > WHERE Storico.IDpk IN(SELECT DLookUp("IDpk","Storico","ID='" & [ID]
&
> "'
> > > And
> > > > DataVariazione = #" &
Format(Max(Storico.DataVariazione),"mm/dd/yyyy")
> &
> > > > "#") AS Pippo
> > > > FROM Storico
> > > > GROUP BY Storico.ID;);
> > > >
> > > > --
> > > > Roberto
> > > >
> > >
> > > Mi è abbastanza chiaro, però il campo ID della mia tabella è uno solo
ed
> è
> > > chiave primaria.
> > >
> > > ciao
> > >
> > > F
> >
> > Riporto qui di seguito virgolettato quello che hai scritto nel tuo primo
> > messaggio:
> >
> > <omissis>
> >
> > "in fase di accodamento dei dati ci si troverebbe davanti a più record
con
> > lo stesso id, ma con data ultima modifica diversa."
> >
> > <omissis>
> >
> > Di due l'una: il campo Id NON è la chiave primaria (come fra l'altro ho
> > presupposto, su tua indicazione, nella mia soluzione) ed allora la mia
> > soluzione dovrebbe funzionare; oppure come dici nel tuo ultimo messaggio
> ed
> > allora potrai avere un solo record che abbia quell'id e non "più record
> con
> > lo stesso id" come hai precisato nel tuo primo messaggio.
> >
> > Ti faccio presente che nel mio esempio con ID intendo un campo che
> contiene
> > un campo di codifica che identifica una persona i cui dati vengono
variati
> > nel tempo.
> >
> > Comunque a questo punto, per continuare il dialogo sul tuo problema è
per
> me
> > necessario che posti la struttura della tabella che contiene i dati,
> > spiegando anche il significato dei campi, specie delle chiavi.
> >
> > --
> > Roberto
> >
> >
>
> Caro Roberto la struttura della mia tabella è:
>
> id --->chiave primaria
> data ult mod---> campo data
> campo1
> campo2
> campo3
> ecc.
>
> l'export dei dati che io immagino, selezionati per data ult mod, è questo:
>
> esporta tutti i record moficati dal 05/02 al 07/02
>
> poi ancora
>
> esporta tutti i record moficati dal 07/02 al 09/02....ecc.
>
> il tutto chiaramente creando di volta in volta tante tabelle diverse di
> piccola taglia, per una facile trasportabilità.
> Chiaramente noi ci troveremo di fronte, in un eventuale ricostruzione
della
> tabella totale, alcuni record che avranno l'id comune ma la data di ultima
> modifica diversa, ed è quì che nel ricostruire l'unica tabella, vorrei
> testare i record con id uguale è facendo si che nella tabella generale
fosse
> inserito solo quello con data ult mod piu' recente.
>
> Spero di essere stato abbastanza chiaro nell'esporre il problema.
>
> Ciao e grazie
>
> Francesco
Creati una tabella  temporanea chiamata Storico che abbia la struttura da me
indicata nel mio messaggio del 6 febbraio 2004 ore 17:32.
Accoda in tale taella i dati di tutte le tue tabelle "di piccola taglia".
Alla fine nella tabella Storico avrai tutti i dati contenuti nelle tabelle
"di piccola taglia" ed ogni record sarà contrassegnato da una chiave
primaria IDpk: per avere solo i records più recenti per ogni ID esegui la
query di cui ti ho dato il codice SQL nel mio messaggio di cui sopra.



title: Casella di testo con soli numeri

author: Stefano Ferrari

text:
C'č qualcuno che mi puņ passare il codice per consentire di inserire in una
casella di testo solo numeri consentendo perņ l'utilizzo del CANC e dello
Back space??
Grazie a tutti
Stefano


title: Casella di testo con soli numeri

author: Roberto in campagna

text:
"Stefano Ferrari" <
stefa...@katamail.it
> ha scritto nel messaggio
news:9hi8qc$7l1$1...@serv1.albacom.net...
> C'è qualcuno che mi può passare il codice per consentire di inserire in
una
> casella di testo solo numeri consentendo però l'utilizzo del CANC e dello
> Back space??
>
> Grazie a tutti
> Stefano
Hai provato a definirti una adeguata Maschera input (vedi help) per la tua
casella di testo?
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: Casella di testo con soli numeri

author: Re Artů

text:
"Stefano Ferrari" <
stefa...@katamail.it
> ha scritto nel messaggio
news:9hi8qc$7l1$1...@serv1.albacom.net...
> C'è qualcuno che mi può passare il codice per consentire di inserire in
una
> casella di testo solo numeri consentendo però l'utilizzo del CANC e dello
> Back space??
>
> Grazie a tutti
> Stefano
>
>
Io sono del parere che se vuoi le cose fatte bene devi arrangiarti:
Velocemente perchè non ho tempo:
Su tasto giu del testo
If KeyCode >= 48 And KeyCode <= 57 Then
    ' Questo funziona per i numeri in alto della tastiera
Else
    Beep
    KeyCode = 0
End If
Poi devi gestirti la tastierina numerica,invii,frecce,tabulazioni,canc,del
...


title: Problema con Null

author: Basjlico

text:
Prova con
if isnull(me.idpaziente) then
...
Nel lontato Fri, 21 Jan 2000 17:19:55 +0100 d.C., il simpatico "Mitch"
<
Mit...@tinxxx.it
> ebbe a scrivere:
>
> Nel codice associato ad un pulsante uso come dato di input il
>contenuto di un controllo, che in alcuni casi potrebbe non essere ancora
>riempito, per esempio nel momento in cui aggiungo un nuovo record.
>
>Il comportamento del pulsante risulta quindi errato allora ho inserito un
>istruzione
>
>If IsNull([IDPaziente]) Then
>
>Nel caso in cui IDPaziente non sia ancora stato riempito ottengo il
>risultato
>
>Utilizzo non valido di Null
>
>Dove sbaglio?
>
>Michele, Grazie.
>
>P.S. Ho provato anche con IsError  ma ottengo lo stesso risultato.....
>
>
>
>
>
>
Ciao
Basjlico


title: Problema con Null

author: Mitch


title: Problema con Null

text:
> Prova con
> if isnull(me.idpaziente) then
> ...
Ho provato ma non cambia nulla, comunque il problema sta nell utilizzo non
valido di Null.
Grazie, Mitch.


title: Problema con Null

author: Schroeder

text:
Mitch scrive:
> If IsNull([IDPaziente]) Then
>
La funzione IsNull prende come argomento una espressione o un valore di un controllo se come credo
sei nel secondo caso, prova con
....If IsNull(IDPaziente.value) Then.....


title: Problema con Null

author: Franchi Graziano (Da Casa)

text:
Attenzione prova a vedere nella tabella se quel campo può accettare il
valore NULL


title: Problema con Null

author: Luciano

text:
Mitch ha scritto nel messaggio <86a18h$rk5$
2...@nslave2.tin.it
>...
>If IsNull([IDPaziente]) Then
>
>Nel caso in cui IDPaziente non sia ancora stato riempito ottengo il
>risultato
>
>Utilizzo non valido di Null
>
>Dove sbaglio?
>
>Michele, Grazie.
>
>P.S. Ho provato anche con IsError  ma ottengo lo stesso risultato.....
Sostiusci con
If IsNull([IDPaziente]) or IDPaziente ="" Then
Non mi chiedere perche'...:-)
Saluti.
Luciano


title: Problema con Null

author: barbi

text:
Mitch <
Mit...@tinxxx.it
> wrote in message 86a18h$rk5$2...@nslave2.tin.it...
>
>  Nel codice associato ad un pulsante uso come dato di input il
> contenuto di un controllo, che in alcuni casi potrebbe non essere ancora
> riempito, per esempio nel momento in cui aggiungo un nuovo record.
>
> Il comportamento del pulsante risulta quindi errato allora ho inserito un
> istruzione
>
> If IsNull([IDPaziente]) Then
>
> Nel caso in cui IDPaziente non sia ancora stato riempito ottengo il
> risultato
>
> Utilizzo non valido di Null
>
> Dove sbaglio?
>
se IDPaziente deriva da una tabella puņ darsi che il suo valore predefinito
sia 0 anziche' null
barbi


title: Problema con Null

text:

E perchè non un:
Nz(IDPaziente)
invece di verificare con if
Paolo


title: Problema con Null

author: Giustini Rodolfo - al lavoro

text:
PROVA CON
If noval([ME!IDPaziente]) THEN
DOVE : NOVAL č una funzione cosě
Function noval(pVar As Variant)
  If IsNull(pVar) Then
    noval = True
  ElseIf IsEmpty(pVar) Then
    noval = True
  ElseIf VarType(pVar) = 8 And pVar = "" Then
    noval = True
  Else
    noval = False
  End If
End Function


title: Problemi con stringa sql OR e AND

author: Xymox

text:
Ho paura di non riuscire a spiegare il mio problema, cmq ci provo.
Normalmente utilizzo questo metodo per creare le query SQL, ma in questo
caso un campo di ricerca (Me.TxtCli) lo devo trovare su tre campi della
Tabella.
Non funziona nel caso uno dei campi Me.TxtNrBoll o Me.TxtNsRif non è nullo,
in quanto non associa OR a questi campi.
Voi che codice usate quando dovete fare delle ricerche utilizzando stringhe
SQL con AND e OR ?
grazie
--
ciao MarcoS
www.marcosanti.it
Dim db As Database, Q2 As QueryDef, sSql As String, fox As String
Set db = CurrentDb
Set Q2 = db.QueryDefs("Q_Ric_sql")
sSql = " SELECT T_GestVendite_varMag.*"
sSql = sSql & " FROM T_GestVendite_varMag"
If Not IsNull(Me.TxtNrBoll) Then
    If InStr(Me.TxtNrBoll, "*") Or InStr(Me.TxtNrBoll, "?") Then
    fox = fox & " T_GestVendite_varMag.varMatS_B like " & Chr$(34) &
Me.TxtNrBoll & Chr$(34) & " AND "
Else
    fox = fox & " T_GestVendite_varMag.varMatS_B = " & Chr$(34) &
Me.TxtNrBoll & Chr$(34) & " AND "
End If
End If
If Not IsNull(Me.TxtNsRif) Then
    If InStr(Me.TxtNsRif, "*") Or InStr(Me.TxtNsRif, "?") Then
    fox = fox & " T_GestVendite_varMag.varNsRif like " & Chr$(34) &
Me.TxtNsRif & Chr$(34) & " AND "
Else
    fox = fox & " T_GestVendite_varMag.varNsRif = " & Chr$(34) & Me.TxtNsRif
& Chr$(34) & " AND "
End If
End If
If Not IsNull(Me.TxtCli) Then
  If InStr(Me.TxtCli, "*") Or InStr(Me.TxtCli, "?") Then
    fox = fox & "T_GestVendite_varMag.varCli like " & Chr$(34) & Me.TxtCli &
Chr$(34) & " OR "
    fox = fox & "T_GestVendite_varMag.varCliDest like " & Chr$(34) &
Me.TxtCli & Chr$(34) & " OR "
    fox = fox & "T_GestVendite_varMag.varCittaDest like " & Chr$(34) &
Me.TxtCli & Chr$(34) & " AND "
 Else
    fox = fox & "T_GestVendite_varMag.varCli = " & Chr$(34) & Me.TxtCli &
Chr$(34) & ") OR "
    fox = fox & "T_GestVendite_varMag.varCliDest = " & Chr$(34) & Me.TxtCli
& Chr$(34) & " OR "
    fox = fox & "T_GestVendite_varMag.varCittaDest = " & Chr$(34) &
Me.TxtCli & Chr$(34) & " AND "
  End If
End If
If fox <> "" Then
    fox = Mid(fox, 1, Len(fox) - 5)
    sSql = sSql & " WHERE " & fox
End If
sSql = sSql & " ORDER BY T_GestVendite_varMag.varNrOrd; "
Q2.SQL = sSql


title: Problemi con stringa sql OR e AND

author: Antonio Biso

text:
"Xymox" <
guarda...@libero.it
> ha scritto nel messaggio
news:b9thqm$mptgc$1...@ID-122915.news.dfncis.de...
> Voi che codice usate quando dovete fare delle ricerche utilizzando
stringhe
> SQL con AND e OR ?
Io mi faccio preparare la stringa dal QBE e poi la uso sostituendo i
parametri nel codice con i vari if then...
Antonio


title: Problema form

author: Gianni Catucci

text:
Salve a tutti.
Sto cercando di costruire un db per la mia raccolta di film. Lo so, ce
ne sono centinaia di gi� pronti, ma voglio provare ugualmente a creare
qualcosa di personale.
Ho pensato di suddividere il db in tre tabelle:
Film, Attori e Registi e, fin qui, tutto � andato per il meglio.
Il problema si � presentato quando mi � venuto in mente di inserire
nel db anche il copratogonista di un film (e non solo l'attore
principale). Non riesco a gestire la visualizzazione dei dati del
coprotagonista (nome ed altri dati, cos� come li presento per l'attore
principale).
Ho superato l'ostacolo creando una nuova tabella (copratogonisti,
appunto), ma ci� comporta a volte una diplicazione dei dati che voglio
evitare.
La domanda �: � possibile visualizzare in un unico form i dati
dell'attore principale e quelli del copratogonista, pur usando
un'unica tabella per entrambi?
Grazie a chi mi vorr� rispondere.
Gianni


title: Problema form

author: Alessandro Cara

text:
Gianni Catucci ha scritto:
> Salve a tutti.
> Sto cercando di costruire un db per la mia raccolta di film. Lo so, ce
> ne sono centinaia di gi� pronti, ma voglio provare ugualmente a creare
> qualcosa di personale.
> Ho pensato di suddividere il db in tre tabelle:
> Film, Attori e Registi e, fin qui, tutto � andato per il meglio.
bene hai un regista che e' anche attore sei costretto a duplicare i
dati. L'anagrafica  "Attori" dovrebbe essere unica.
> Il problema si � presentato quando mi � venuto in mente di inserire
> nel db anche il copratogonista di un film (e non solo l'attore
> principale). Non riesco a gestire la visualizzazione dei dati del
> coprotagonista (nome ed altri dati, cos� come li presento per l'attore
> principale).
dovresti fare una tabella di relazione che contiene gli identificativi
del film dell' Regista/Attore/Coprotagonista ed il ruolo giocato.
In questo modo puoi gestire qualsiasi ruolo, compreso il Doppiatore.
e
Dato un film --> si hanno tutti gli "attori", nel senso di tutti i
partecipanti che hai scritto nella tabella di relazione eventualmente
filtrati per ruolo
Dato un "attore" --> si ottiene tutte le partecipazioni nel ruolo o nel
ruolo da te scelto.
--
ac


title: Problema form

author: mcdany

text:
On 3 Ott, 06:05, Gianni Catucci <
gianni.catu...@alice.it
> wrote:
[...]
> La domanda é: é possibile visualizzare in un unico form i dati
> dell'attore principale e quelli del copratogonista, pur usando
> un'unica tabella per entrambi?
[...]
Si.
Nella tabella Attori tieni tutte le tue informazioni.
Nella tabella Film inserisci un campo IdProtagonista ed un campo IdCo-
Protagonista
Nella query di origine del tuo form inserisci due istanze della stessa
tabella (utilizzando gli ALIAS), con IdAttore collegato su una tabella
a IdProtagonista, sull'altra a IdCoprotagonista.
P.S. Chissà se sono stato chiaro...
Ciao,
--
Daniele M. aka mcdany


title: Problema form

text:
mcdany ha scritto:
> On 3 Ott, 06:05, Gianni Catucci <
gianni.catu...@alice.it
> wrote:
> [...]
>> La domanda �: � possibile visualizzare in un unico form i dati
>> dell'attore principale e quelli del copratogonista, pur usando
>> un'unica tabella per entrambi?
> [...]
>
> Si.
> Nella tabella Attori tieni tutte le tue informazioni.
> Nella tabella Film inserisci un campo IdProtagonista ed un campo IdCo-
> Protagonista
Daniele le "cose" non si fanno cosi'. Come si suol dire *non* e' una
tabella normalizzata. Prova a chiederti cosa succede su questa tabella
quando i coprotagonisti sono 24 e poi vuoi inserire anche lo
sceneggiatore, l'autore delle musiche, il costumista, il consulente
storico e via a correre.......
Come si suol dire stai pensando in "excel"
--
ac


title: Problema form

text:
On Fri, 3 Oct 2008 00:10:04 -0700 (PDT), mcdany <
mcd...@gmail.com
>
wrote:
>On 3 Ott, 06:05, Gianni Catucci <
gianni.catu...@alice.it
> wrote:
>[...]
>> La domanda �: � possibile visualizzare in un unico form i dati
>> dell'attore principale e quelli del copratogonista, pur usando
>> un'unica tabella per entrambi?
>[...]
>
>Si.
>Nella tabella Attori tieni tutte le tue informazioni.
>Nella tabella Film inserisci un campo IdProtagonista ed un campo IdCo-
>Protagonista
>
>Nella query di origine del tuo form inserisci due istanze della stessa
>tabella (utilizzando gli ALIAS), con IdAttore collegato su una tabella
>a IdProtagonista, sull'altra a IdCoprotagonista.
>P.S. Chiss� se sono stato chiaro...
>Ciao,
In effetti ci ho pensato ed ho il campo ID_Copro(tagonista). Quello
che non riesco a fare � giusto il seguito del tuo suggerimento
(...Nella query di origine del tuo form inserisci due istanze della
stessa tabella (utilizzando gli ALIAS), con IdAttore collegato su una
tabella a IdProtagonista, sull'altra a IdCoprotagonista..).
Riporto la struttura delle due tabelle Attori e Film
tbl_Attori
ID_Attore	(Contatore) chiave Indicizzato: S�, Duplicati non
ammessi
Cogn_Attore 	testo
Nome_Attore 	testo
Data_nascita 	data/ora
Luogo_nascita 	testo
Nazionalit� 	testo
Note 		memo
Foto_Attore 	testo (path)
tbl_Film
ID_Film		(contatore) chiave Indicizzato: S�, Duplicati non
ammessi
Titlo	testo
ID_Regista	numerico
ID_Attore	numerico
ID_Copro	numerico
Trama		memo
Cast		memo
Anno		testo
Nazionalit�	testo
Genere		testo
Durata		testo
Locandina	testo (path)
DVD		numerico
Mi potresti indicare le relazioni da implementare ed il tipo ?
Grazie


title: Problema form

text:
On Fri, 3 Oct 2008 00:10:04 -0700 (PDT), mcdany <
mcd...@gmail.com
>
wrote:
>On 3 Ott, 06:05, Gianni Catucci <
gianni.catu...@alice.it
> wrote:

Chiarissmo. Ti ringrazio per l'aiuto che mi ha permesso di risolvere
il problema.
Ciao a tutti


title: RICERCA

author: Santilli Marco

text:
Io ho 6 campi nella mia maschera.
I primi 3 mi identificao un libro:
ISBN
Titolo
Casa editrice
E gli altri il cliente
Nome
Cognome
Tel
Analizziamo i primi 3 campi
Ho gia creato una tabella dove ho messo tutti i libri di cui sono in
possesso per vendere
Io vorei che appena inserisco il codice ISBN tramite un menù a tendina, che
so fare, mi comparisse il rispettivo titolo nel campo titolo e la casa
editrice nel campo casa editrice.
Come devo fare.
La tabella da dove prende i dati dei libri si chiama "anagrafica libri" la
maschera per inserire gli ordini si chiama "ordinazioni"
Vi prego aiutatemi, la richiesta e semplice, appena immetto il codice mi
deve resituire il titolo e la casa editrice, poi io conitnuerò a mettere i
dati del cliente


title: RICERCA

text:
"Santilli Marco" <
marco.s...@libero.it
> ha scritto nel messaggio
news:anrq4h$juo$1...@fe1.cs.interbusiness.it...
> Io ho 6 campi nella mia maschera.
>
> I primi 3 mi identificao un libro:
> ISBN
> Titolo
> Casa editrice
>
> E gli altri il cliente
> Nome
> Cognome
> Tel
>
> Analizziamo i primi 3 campi
> Ho gia creato una tabella dove ho messo tutti i libri di cui sono in
> possesso per vendere
> Io vorei che appena inserisco il codice ISBN tramite un menù a tendina,
che
> so fare, mi comparisse il rispettivo titolo nel campo titolo e la casa
> editrice nel campo casa editrice.
Il menù a tendina, che si chiama casella combinata, avrà come origine riga
una query con altre campi oltre al codice. Questi campi possono non essere
visualizzati, mettendo 0 alle rispettive dimensioni colonne.
Ovviamente il numero colonne deve essere impostato al numero di campi che
inserisci.
Su evento dopo aggiornamento della combo, userai la proprietà column (vedi
HELP) per scrivere nelle caselle di testo le informazioni legate al record
selezionato tramite ISBN
Antonio


title: Macromedia

author: Troll

text:
e' possibile visualizzare in una form degli oggetti fatti con macromedia
shokwave o swish? e se si  come?
grazie
Franz


title: somme con riporti nei sottoreport

author: superd

text:
ciao a tutti, ho il seguente problema:
ho un report per generare i totali di due gruppi di prodotti A e B (i dati
provengono da una tabella che contiere ANNO, MESE, DATA, TIPO, DESCRIZIONE,
IMPORTO, PAGATO)
ottengo il totale dell'importo prodotti del mese e il progressivo dei
singoli record di quel mese per il gruppo A e B (tramite due sottoreport
collegati al report principale per i campi anno e mese)
Il progressivo lo ottengo con un 2° campo IMPORTO inserito nel corpo del
sottoreport impostato per sommare tutto
MESE	GRUPPO	DATA	TIPO 	DESCRIZIONE	IMPORTO	PAGATO	PROGRESSIVO
								(importo somma tutto)
GIUGNO
	A(sottoreport 1)
		01/06	aaa	abc		100		100
		10/06	BBB	def		50		150
	B(sottoreport 2)
		03/06	fff	abc		30		30
		15/06	sss	sdg		100		130
					TOTALE A+B GIUGNO 280
LUGLIO
	A(sottoreport 1)
		10/07	ASA	fdfg		500		500	(vorrei 650)
		20/07	ss	gfh		100		600	(vorrei 750)
	B(sottoreport 2)
		04/07	hhg	kl		50		50	(vorrei 180)
		25/07	sfds	r		10		60	(vorrei 240)
					TOTALE A+B LUGLIO 660
AGOSTO
	A(sottoreport 1)
		01/08	sde	qw		10		10	(vorrei 760)
	B(sottoreport 2)
		15/08	ffgf	kk		200		200	(vorrei 440)
					TOTALE A+B AGOSTO 210
quello che non riesco proprio a ottenere è il riporto del progressivo per
entrambi i gruppi nel mese successivo, ma ogni mese il progressivo riparte
da zero
sono 2giorni che provo senza costrutto. sapete aiutarmi?
grazie


title: somme con riporti nei sottoreport

author: Sergio MAZZA

text:
"superd" <
out.alice.it
> ha scritto nel messaggio
news:1nggybuz1emy0$.pmraho36t99e.dlg@40tude.net...

Secondo me non dovresti utilizzare dei sottoreport ma un unico report che
stampa/elabora i dati raggruppati.
Nel tuo caso il raggruppamento dovrebbe essere:
- Gruppo
- Anno
- Mese
Nel piè di pagina di ogni gruppo puoi effettuare la somma/totali del gruppo;
nel piè di pagina del report hai la somma/totali di tutti dati...
Ciao.
--
Sergio MAZZA


title: somme con riporti nei sottoreport

text:
>
> Secondo me non dovresti utilizzare dei sottoreport ma un unico report che
> stampa/elabora i dati raggruppati.
> Nel tuo caso il raggruppamento dovrebbe essere:
> - Gruppo
> - Anno
> - Mese
>
> Nel piè di pagina di ogni gruppo puoi effettuare la somma/totali del gruppo;
> nel piè di pagina del report hai la somma/totali di tutti dati...
>
> Ciao.
Ok ci provo
per adesso grazie
ciao


title: somme con riporti nei sottoreport

text:


ci sono riuscito!
per ogni mese ottengo una pagina tipo
mese1
	gruppo1
		record 1	importo		progressivo1 (=importo)
		record 2	importo		progressivo1
		record 3	importo		progressivo1
	gruppo2
		record 1	importo		progressivo2 (=importo)
		record 2	importo		progressivo2
		record 3	importo		progressivo2
mese2
	gruppo1
		record 1	importo		progressivo1 (+riporto progressivo1 mese 1)
		record 2	importo		progressivo1
		record 3	importo		progressivo1
	gruppo2
		record 1	importo		progressivo2 (+riporto progressivo2 mese 1)
		record 2	importo		progressivo2
		record 3	importo		progressivo2
ecc.
tramite l'evento print del corpo ottengo il progressivo del gruppo (dal
secondo mese sommo il riporto del mese precedente)
tramite l'evento print del piepagina gruppo ottengo il riporto del gruppo
per il mese successivo
FUNZIONA BENISSIMO A VIDEO !!!
Quando stampo ottengo importi progressivi completamente diversi ogni
volta!?!?!?!?!
PERCHE' ?
ciao


title: somme con riporti nei sottoreport

text:
"superd" <
viga...@alice.it
> ha scritto nel messaggio
news:zs85bvm079kw.1n0lhhmtuywmu$.dlg@40tude.net...

Non ho capito il fatto del riporto, forse perché non ne ho bisogno...
Ciao.
--
Sergio MAZZA


title: somme con riporti nei sottoreport

text:
>
> Non ho capito il fatto del riporto, forse perché non ne ho bisogno...
>
> Ciao.
provo a spiegarmi meglio
giugno
	gruppo1
		record 1	100		100
		record 2	2000		2100
		record 3	500		2600
	gruppo2
		record 1	500		500
		record 2	50		550
		record 3	100		650
luglio
	gruppo1
		record 1	300		2900
		record 2	1000		3900
		record 3	100		4000
	gruppo2
		record 1	1000		1650
		record 2	200		1850
		record 3	100		1950
agosto
	gruppo1
		record 1	100		4100
		record 2	200		4300
		record 3	100		4400
	gruppo2
		record 1	600		2550
		record 2	100		2650
		record 3	150		2800
io ho usato print del piè pagina del gruppo per scrivere in una casella di
testo nel report non visibile il valore del progressivo raggiunto dal
gruppo in quel mese
poi con print del corpo al cambio di mese vado a leggere il valore scritto
nella casella di testo per sapere il riporto del mese precedente e lo sommo
all'importo del record 1 per proseguire con il progressivo.
perchè quando stampo ottengo valori diversi da quelli che vedo a video?
ho provato a utilizzare gli eventi format di corpo e piepagina ma a quel
punto non ottenevo i valori corretti nemmeno a video.
c'è un altro sistema meno cervellotico?
oppure dove sbaglio?
ciao


title: somme con riporti nei sottoreport

text:
"superd" <
viga...@alice.it
> ha scritto nel messaggio news:19l09bsmu8j7v$.9uqsuhwc3b02$.dlg@40tude.net...

Ripeto; io non capisco che significa, per te, il termine "progressivo". A me ricorda una sequenza di numeri es. 1,2,3,4,5 etc. etc.
E' questo che intendi?
Oppure intendi eseguire le somme di ogni gruppo e il totale dei gruppi?
Se è la seconda, non hai bisogno di gestire nessun evento, basta che nel piè di pagina di ogni gruppo inserisci una casella di testo
non associata e nell'origine controllo ci scrivi Somma(nomeCampoDaSommare)...
Ciao.
--
Sergio MAZZA


title: somme con riporti nei sottoreport

text:


NO
> Oppure intendi eseguire le somme di ogni gruppo e il totale dei gruppi?
NO
> Se è la seconda, non hai bisogno di gestire nessun evento, basta che nel piè di pagina di ogni gruppo inserisci una casella di testo
> non associata e nell'origine controllo ci scrivi Somma(nomeCampoDaSommare)...
NO
non riesco a spiegarmi
per progressivo intendo che l'importo del 2° record viene sommato
all'importo del 1° record, l'importo del 3° record viene sommato alla somma
dei primi 2, l'importo del 4° record viene sommato alla somma dei primi 3.
questo per entrambi i gruppi nello stesso mese
per il secondo mese l'importo del 1° record viene sommato all'importo
totale dei record del mese precedente, l'importo del 2° record viene
sommato alla somma precedente, l'importo del 3° record viene sommato alla
somma precedente, l'importo del 4° record viene sommato alla somma
precedente ecc.
anche questo per entrambi i gruppi
volendo una struttura:
mese
	gruppo
		n record	importo 	importo
	gruppo
		n record	importo 	progressivo
mese
	gruppo
		n record	importo 	progressivo
	gruppo
		n record	importo 	progressivo
mese
	gruppo
		n record	importo 	progressivo
	gruppo
		n record	importo 	progressivo
non posso usare la casella di testo non associata con somma(importo) come
origine e somma parziale su tutto perchè mi somma insieme gli importi del
gruppo 1 e del gruppo 2
se invece imposto la casella di testo con somma su gruppo ottengo il totale
degli importi del gruppo per ogni mese, ma non è quello che cerco
spero di essere stato più chiaro
ciao


title: somme con riporti nei sottoreport

text:
"superd" <
viga...@alice.it
> ha scritto nel messaggio news:1mt9x9d7nmx1h.1...@40tude.net...

Guarda se l'esempio sul sito comune può esserti d'aiuto:
www.sitocomune.com
 Sezione Queries
2.16 Come si può ottenere il totale progressivo di un campo in una query e come si può numerare progressivamente le righe di una
query?
Ciao.
--
Sergio MAZZA


title: somme con riporti nei sottoreport

text:
>
> Guarda se l'esempio sul sito comune puņ esserti d'aiuto:
>
www.sitocomune.com
 Sezione Queries
> 2.16 Come si puņ ottenere il totale progressivo di un campo in una query e come si puņ numerare progressivamente le righe di una
> query?
>
> Ciao.
sono riuscito sulla base della queries 2.1 ad ottenere la generazione di un recordset contenente i dati estratti dalla
tabella "voci2" aggiunge ad ogni record un campo che contiene il progressivo che mi serve, tramite Function
Progressione, e che tiene conto del gruppo di appartenenza del record.
Public Function Progressione(Valore As String) As Integer
   If Valore = "Azzera" Then
      rval1 = 0
      rval2 = 0
    Else
       If modo1 = "u" Then
            rval1 = rval1 + impo
            Progressione = rval1
        Else
            rval2 = rval2 + impo
            Progressione = rval2
        End If
   End If
End Function
Sub ricerca()
Dim cmd1 As Command
Dim str1 As String
Dim rst1 As Recordset
Set rst1 = New ADODB.Recordset
'imposta il comando per ricercare i record in base ad una query
Set cmd1 = New ADODB.Command
    With cmd1
    .ActiveConnection = CurrentProject.Connection
    .CommandText = "SELECT [voci2].[anno] AS Espr1, [voci2].[mese] AS Espr2, [voci2].[modo] AS Espr3, [voci2].[data] AS
		   	Espr4, [voci2].[importo] AS Espr5, Progressione((importo)) AS Progressione
			FROM [VOCI2]
			WHERE (((Progressione(""Azzera"")) = 0))
			ORDER BY voci2.anno, voci2.mese, voci2.modo desc, voci2.data;"
        .CommandType = adCmdText
        .Execute
    End With
rst1.Open cmd1, , adOpenKeyset, adLockOptimistic
end Sub
avevo pensato di inserire i dati del recordset in una tabella di appoggio da usare come dati del report, inserendivi i
record con addnew
rst1.Open cmd1, , adOpenKeyset, adLockOptimistic
Do Until rst1.EOF
    For Each fldMyField In rst1.Fields
        impo = rst1(4) 'usati per avere l'importo in Function Progressione
        modo1 = rst1(2) 'usati per controllare il gruppo in Function Progressione

        Dim cn As ADODB.Connection
            Dim rs As ADODB.Recordset
            Dim stringa As String
            Set rs = New ADODB.Recordset
            With rs
                .ActiveConnection = CurrentProject.Connection
                .CursorType = adOpenKeyset
                .LockType = adLockOptimistic
                .Source = "SELECT * FROM provvisoria"
                .Open
            End With

            rs.AddNew
            rs("anno") = rst1(0)
            rs("mese") = rst1(1)
            rs("modo") = rst1(2)
            rs("data") = rst1(3)
            rs("importo") = rst1(4)
            rs("progressivo") = rst1(5)
            rs.Update

            Set cn = Nothing
            Set rs = Nothing

        rst1.MoveNext
    Next fldMyField
Loop
ma ad ogni record quando giungo al campo progressivo il codice passa nuovamente alla Function Progressione per calcolare
il progressivo alterando il valore corretto.
non sono riuscito a trovare la soluzione
allora l'intenzione sarebbe quella di generare il report da questo recordset, che avendo gią inserito il progressivo non
mi fa usare gli eventi delle sezioni.
come faccio?
ciao


title: somme con riporti nei sottoreport

text:
"superd" <
viga...@alice.it
> ha scritto nel messaggio
news:q6bb0ftsvyjh.gi81mmtqsrus$.dlg@40tude.net...

> recordset, che avendo già inserito il progressivo non
> mi fa usare gli eventi delle sezioni.
>
> come faccio?
>
>
> ciao
Leggendo il suggerimento del sito comune che hai utilizzato, mi viene
spontaneo chiederti se non hai pensato a trasformare la query di selezione
in query di creazione tabella invece di utilizzare i recordset.
Ti ritroveresti subito pronta l'origine dati del report...
Ciao.
--
Sergio MAZZA


title: somme con riporti nei sottoreport

text:


Ottimo! ci riesco
Set cmd1 = New ADODB.Command
    With cmd1
    .ActiveConnection = CurrentProject.Connection
    .CommandText = "SELECT [voci2].[anno] AS Espr1, [voci2].[mese] AS Espr2, [voci2].[modo] AS Espr3, [voci2].[data] AS
Espr4, [voci2].[importo] AS Espr5, " & _
                            "Progressione((importo)) AS Progressione INTO prov " & _
                            "FROM [VOCI2] " & _
                            "WHERE (((Progressione(""Azzera"")) = 0)) " & _
                            "ORDER BY voci2.anno, voci2.mese, voci2.modo desc, voci2.data;"
        .CommandType = adCmdText
        .Execute
    End With
l'unico problema è che non viene calcolato il campo progressivo dopo l'inserimento di INTO prov...
quando controllavo nella finestra immediata tramite Debug.Print i record estratti veniva cancolato
questo perchè il progressivo veniva calcolato ad ogni interrogazione del recordest rst1(5) eseguita da Debug.Print
ora mi sembra di capire che essendo una Query di creazione tabella non genera alla fine un recordset e quindi non leggo
l'importo di ogni record per incrementare il progressivo tramite Function Progressione.
quindi "pesco una carta imprevisti e torno alla partenza".
ciao


title: somme con riporti nei sottoreport

text:
"superd" <
in...@studiotanzini.it
> ha scritto nel messaggio
news:wm15y7d054sg$.u9rmmgy5zur3$.dlg@40tude.net...

Se la chiamata alla funzione la metti nella query in un campo calcolato
(vedi esempio) dovresti vedere il risultato appena visualizzi/esegui la
query. Se la visualizzi lo vedi a schermo, se la esegui lo vedi nella
tabella che crea l'INTO.
Occhio che l'esempio dice:
'---
L' unico problema di questo semplice approccio è che in questo modo ad ogni
esecuzione della query la var globale non viene resettata, ed il progressivo
ricomincia sempre dall' ultimo valore ottenuto nell' esecuzione precedente !
'---
Quindi ogni volta che fai delle prove troverai valori sempre incrementati;
quando hai trovato la via "giusta" devi resettare la variabile globale
chiudendo e riaprendo l'mdb e poi eseguire la query.
> quindi "pesco una carta imprevisti e torno alla partenza".
In bocca al lupo.
> ciao
Ciao.
--
Sergio MAZZA


title: somme con riporti nei sottoreport

text:


scusa la mia estrema ignoranza in materia ma la chiamata nonè già nella
query in un campo calcolato?
Set cmd1 = New ADODB.Command
    With cmd1
    .ActiveConnection = CurrentProject.Connection
    .CommandText = "SELECT [voci2].[anno] AS Espr1, [voci2].[mese] AS
		Espr2, [voci2].[modo] AS Espr3, [voci2].[data] AS Espr4,
 		[voci2].[importo] AS Espr5, " & _
                "Progressione((importo)) AS Progressione INTO prov " & _
                "FROM [VOCI2] " & _
                "WHERE (((Progressione(""Azzera"")) = 0)) " & _
                "ORDER BY voci2.anno, voci2.mese, voci2.modo, voci2.data;"
        .CommandType = adCmdText
        .Execute
    End With
pensavo fosse "Progressione((importo)) AS Progressione" il campo calcolato
ho notato che tutto ciò che segue INTO prov non varia il risultato
ciao


title: somme con riporti nei sottoreport

text:
"superd" <
in...@studiotanzini.it
> ha scritto nel messaggio
news:1rxy3f7a6z379.1458732c149xx$.dlg@40tude.net...
>
> scusa la mia estrema ignoranza in materia ma la chiamata nonè già nella
> query in un campo calcolato?
Sì non avevo letto bene il messaggio.
> ho notato che tutto ciò che segue INTO prov non varia il risultato
Cioè crea la tabella e nel campo non trovi valori modificati?



title: somme con riporti nei sottoreport

text:


esatto
crea la tabella con le colonne
espr1, espr2, espr3, espr4, espr5, progressivo
per ogni record inserisce i valori da espr1 a espr5 mentre progressivo è
sempre 0
questo perchè, mi sembra, quando crea la tabella e inserisce i record,
effettua la chiamata a Function Progressione che deve sommare l'importo
(impo) a progressivo precedente (rval1 o rval2), ma impo è sempre vuoto
perchè lo riempivo dopo leggendolo dal recordset (che con INTO non viene
creato)
ciao


title: somme con riporti nei sottoreport

text:
"superd" <
in...@studiotanzini.it
> ha scritto nel messaggio news:1sd7q6vjjahgf.7liqz60pgarr$.dlg@40tude.net...
> esatto
>
> crea la tabella con le colonne
>
> espr1, espr2, espr3, espr4, espr5, progressivo
>
> per ogni record inserisce i valori da espr1 a espr5 mentre progressivo è
> sempre 0
>
> questo perchè, mi sembra, quando crea la tabella e inserisce i record,
> effettua la chiamata a Function Progressione che deve sommare l'importo
> (impo) a progressivo precedente (rval1 o rval2), ma impo è sempre vuoto
> perchè lo riempivo dopo leggendolo dal recordset (che con INTO non viene
> creato)
>
> ciao
(cerco di capire) Ma allora se fai prima il calcolo di [impo], sempre in quella tabella, e poi fai girare la query del progressivo
(stavolta in aggiornamento invece di creazione)?
Ciao.
--
Sergio MAZZA


title: somme con riporti nei sottoreport

text:


scusa cosa intendi per fare il calcolo in quella tabella?
e come faccio?
poi se faccio girare la query del progressivo in aggiornamento posso
inserirlo nella tabella?
ciao


title: somme con riporti nei sottoreport

text:
"superd" <
in...@studiotanzini.it
> ha scritto nel messaggio
news:yv9l6z62f8eu.19vfjq5gmcwab$.dlg@40tude.net...
>
> scusa cosa intendi per fare il calcolo in quella tabella?
Mi sembra di aver capito che il progressivo deve essere calcolato da un
altro valore ([impo]) che a sua volta deve essere calcolato.
Ora se non calcoli prima quest'ultimo rischiamo di fare la fine del cane che
si morde la coda.
La tabella che conterrà il calcolo è identica nella struttura a [VOCI2] ma
con in più i due campi [impo] e [progressivo] (oppure solo [impo] visto che
[progressivo] è calcolato dalla query+funzione).
> e come faccio?
Come facevi prima, con i recordset.
> poi se faccio girare la query del progressivo in aggiornamento posso
> inserirlo nella tabella?
L'esempio utilizza una query di selezione per utilizzarla come origine dati
di un form/report ma nulla ti vieta di trasformarla in query di
aggiornamento e indicare il campo (calcolato) [progressivo] come origine del
campo di tabella [progressivo].
> ciao
Si tratta di separare in due le operazioni; prima il calcolo di [impo] e poi
il [progressivo]...
Ciao.
--
Sergio MAZZA


title: somme con riporti nei sottoreport

text:


non mi mandare a quel paese, e sopratutto non so perchè ma ho ripescato un
aversione precedente del codice e adesso funziona tutto.
Set cmd2 = New ADODB.Command
    With cmd2
    .ActiveConnection = CurrentProject.Connection
    .CommandText = "SELECT [voci2].[anno] AS Espr1, [voci2].[mese] AS
			Espr2, [voci2].[modo] AS Espr3, [voci2].[data] AS
			Espr4, [voci2].[importo] AS Espr5, " & _
                   "Progressione((importo)) AS Progressione " & _
                   "FROM [VOCI2] " & _
                   "WHERE (((Progressione(""Azzera"")) = 0)) " & _
                   "ORDER BY voci2.anno, voci2.mese, voci2.modo desc,
			voci2.data;"
        .CommandType = adCmdText
        .Execute
    End With
rst2.Open cmd2, , adOpenKeyset, adLockOptimistic
Do Until rst2.EOF
    For Each fldMyField In rst2.Fields
        If rst2.EOF = "falso" Then
            impo = rst2(4) 'usati per avere l'importo in Function
				Progressione
            modo1 = rst2(2) 'usati per controllare il gruppo in Function
				Progressione

            Dim cn As ADODB.Connection
            Dim rs As ADODB.Recordset
            Dim stringa As String
            Set rs = New ADODB.Recordset
            With rs
                .ActiveConnection = CurrentProject.Connection
                .CursorType = adOpenKeyset
                .LockType = adLockOptimistic
                .Source = "SELECT * FROM provvisoria"
                .Open
            End With

            rs.AddNew
            rs("anno") = rst2(0)
            rs("mese") = rst2(1)
            rs("modo") = rst2(2)
            rs("data") = rst2(3)
            rs("importo") = rst2(4)
            rs("progressivo") = rst2(5)
            rs.Update

            Set cn = Nothing
            Set rs = Nothing

        rst2.MoveNext
        End If
    Next fldMyField
Loop
poi gli faccio aprire il report basato sulla tabella provvisoria
DoCmd.OpenReport "QP", acViewPreview
scusa per le rotture di scatole
ciao


title: somme con riporti nei sottoreport

text:
"superd" <
in...@studiotanzini.it
> ha scritto nel messaggio
news:143sprtvvurzq.u...@40tude.net...

Tutto è bene quel che finisce bene...
Ciao.
--
Sergio MAZZA


title: Gestione librerie di codice

author: Maremma Impestata

text:
Venendo dai vecchi C e PASCAL sono abituato a realizzare il codice il
piu' possible atomizzato in obj e librerie.
Col vecchio ACCESS 2000 non credo si possa fare.
Con le nuove versioni č possibile ?
Mi serve perche' ho una applicazione ormai stabile che non vorrei
modificare quando dovro' aggiungere funzionalita'.
Grazie !


title: Gestione librerie di codice

author: MA

text:
Maremma Impestata wrote:
> Venendo dai vecchi C e PASCAL sono abituato a realizzare il codice il
> piu' possible atomizzato in obj e librerie.
> Col vecchio ACCESS 2000 non credo si possa fare.
> Con le nuove versioni è possibile ?
> Mi serve perche' ho una applicazione ormai stabile che non vorrei
> modificare quando dovro' aggiungere funzionalita'.
>
> Grazie !
Puoi usare tutti i moduli che vuoi
e poi importarteli gestirteli come vuoi
Sono interni al file ma non appartengono a nessuna maschera
Poi se ti crei una libreria a parte, una dll o un ocx lo puoi mettere nei riferimenti e il tuo file lo legge senza problemi
Ah questo già da Access 97
--
--
MAssimiliano Amendola
www.accessgroup.it
Cisa - Conferenza Italiana Sviluppatori Access


title: Gestione librerie di codice

author: Alessandro Baraldi

text:
On 15 Apr, 12:17, Maremma Impestata <
Chepa...@rottura.biz
> wrote:
> Venendo dai vecchi C e PASCAL sono abituato a realizzare il codice il
> piu' possible atomizzato in obj e librerie.
> Col vecchio ACCESS 2000 non credo si possa fare.
> Con le nuove versioni è possibile ?
> Mi serve perche' ho una applicazione ormai stabile che non vorrei
> modificare quando dovro' aggiungere funzionalita'.
>
> Grazie !
Non puoi realizzare Librerie nel senso di Oggetti Activex(dll), ma
puoi crearti Librerire di funzioni
da raggruppare in un MDB esterno da referenziare nel tuo progetto.
Le classi devono essere Manipolate in quanto di default sono Private e
non vengono Esposte...
Se invece sei pratico di C puoi sempre crearti DLL da usare come
Activex nel tuo progetto inserendole(o meno ma non ho mai provato con
DLL) nel progetto come Referenza.
Questa 2° strada sarebbe da perseguire per Funzioni che richiedono
ottimizzazioni di Calcoli, la dove il C è decisamente più
performante,... ma per cose normali direi che è meglio evitare ed
usare il 1° metodo.
@Alex


title: Gestione librerie di codice

author: VT @ home

text:
Il Tue, 15 Apr 2008 04:22:28 -0700 (PDT), Alessandro Baraldi <
ik2...@libero.it
> ha scritto:
>(.....)
>Non puoi realizzare Librerie nel senso di Oggetti Activex(dll), ma
>puoi crearti Librerire di funzioni
>da raggruppare in un MDB esterno da referenziare nel tuo progetto.
Puņ essere anche un mde.
(...)
Vincenzo Turturro
Certificato Eucip Core Level
ITA 0000-002299 del 14/05/2007
---------------------------------------------
il sito comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------
risorse Access:
http://www.accessgroup.it
---------------------------------------------
Il sito comune di it.comp.as400
http://www.faq400.com
---------------------------------------------