title: Messaggio per Roberto

author: Roberto da casa

text:
"Naponet" <
nap...@tin.it
> ha scritto nel messaggio
news:1FLf8.26251$_u5.7...@news1.tin.it...
> Intanto ti voglio ringraziare per l'interessamento e mi scuso se ho
> insistitoun pò volevo dirti che in tanti anni che uso il computer è la
prima
> volta che consulto una news, in effetti il conteggio delle ore non sarebbe
> male come hai proposto, se non fosse che, nella maschera dove si
inseriscono
> i turni di ogni dipendente non vi è con esattezza un campo entrata ed uno
> uscita, ma bensì una casella combinata da dove mi ricerco la tipologia del
> turno e poi in base a quella una query mi visualizza sulla stessa riga, in
> una sottomaschera, la data turno, l'orario(dalla casella combinata) e il
> corrispondente orario in eccesso, previsto per quel turno che viene
> conteggiato come straordinario, dopodichè nel piè di pagina della
> sottomaschera ho una casella di testo adibita a somma([Orario
> straordinario]) e ad essa, non essendo quest'ultima visibile dalla
maschera
> pricipale, vi è collegata un'altra casella di testo della maschera
primaria
> tipo sottomaschera straordinario!forms![somma di orario
> straordinario](pressapoco dovrebbe essere così!), per cui la somma delle
ore
> nella sua interezza deve essere necessariamente conteggiata in questi due
> campi, tra l'altro non deve essere arrotondata, la cifra finale, ma deve
> contenere l'effettivo numero di ore:minuti prestato.
> Spero di essere stato + chiaro, ringraziandoti anticipatamente.
> Naponet
Probabilmente sono io che sono stato poco chiaro nel risponderti, pertanto
cercherò di spiegare meglio alcuni concetti che ho scritto nel mio messaggio
precedente.
Intanto un dato di fatto incontrovertibile: con Access tutto ciò che in un
campo Data/ora eccede le 24 ore lo ritrovi nella parte intera del campo,
ovvero nei giorni: quindi 10 ore + 20 ore non ti restituisce 30 ore, ma 1
giorno e 6 ore; la rappresentazione interna di 30 ore è 1,25, dove la parte
intera (1) rappresenta i giorni e i decimali (25) rappresentano le ore e i
minuti espressi in frazione di giorno. E' proprio per questo che, come ti
dicevo nel messaggio precedente, moltiplicando l'oggetto che contiene la
somma delle ore per 24 ottieni il totale espresso in ore (1,25 * 24 = 30);
naturalmente il formato di questo oggetto dovrà avere un formato possibile
per un oggetto numerico (nel mio messaggio precedentte ho suggerito Fisso,
ma se preferisci potrebbe essere Numerico generico).
Ritornando al tuo caso, se nell'origine controllo della casella di testo non
associata che hai inserito nel piè di pagina della sottomaschera hai
scritto:
=Somma([Orario straordinario])
devi invece scrivere:
 =Somma([Orario straordinario])*24
ed impostare a Numero generico il formato della casella di testo.
Così il valore non subirà alcun arrotondamento, conterrà le ore e i minuti
effettivamente prestati, con l'unica differenza che il valore sarà espresso
in ore e frazioni di ora, anzichè in ore e minuti. Nulla toglie che, in due
campi numerici diversi, potrai avere in uno il numero di ore (la parte
intera del valore contenuto nella casella di testo) e nell'altro il valore
dei minuti (moltiplicando i decimali della casella di testo per 60).
D'altra parte, per quello che so io, in Access non esiste la possibilità
offerta in Excel per la rappresentazione di un campo ore:minuti maggiori di
24; non a caso, come ti dicevo nel mio messaggio precedente, Silvio Berruti,
in alternativa alla mia moltiplicazione per 24, ha scritto sul Sito Comune
una routine che somma separatamente le ore ed i minuti.
Spero questa volta di essere stato più chiaro della volta precedente.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: visualizzazione immaggini su form diversi

author: gionlap

text:
salve, ho un problema al quale spero di trovare una risposta,
sto creando un'applicazione in VBA con diversi form, ma il mio problema
nasce quando in un form avendo creato due pulsanti di opzione, e alla
selezione di uno dei due dovrei in un altro form diverso visualizzare
un'immagine che cambi al cambiare della selezione dei due pulsanti, ma non
riesco a farlo, in quanto VBA mi dice che non riesce a trovare il form con
un "errore 424".
questo è il listato che ho scritto
Private Sub optverticale_Click()
If optverticale.Value = True Then
imgverticale.Visible = True
Else
imgverticale.Visible = False
End If
'Disattiva l'altra immagine
imgorizzontale.Visible = False
End Sub
Grazie a quinque mi possa aiutare.
Saluti


author: Nick

text:
"gionlap" <
gio...@tin.it
> ha scritto nel messaggio news:5smZc.233407$5D1.10...@news4.tin.it...
> salve, ho un problema al quale spero di trovare una risposta,
>
> sto creando un'applicazione in VBA con diversi form, ma il mio problema
> nasce quando in un form avendo creato due pulsanti di opzione, e alla
> selezione di uno dei due dovrei in un altro form diverso visualizzare
> un'immagine che cambi al cambiare della selezione dei due pulsanti, ma non
> riesco a farlo, in quanto VBA mi dice che non riesce a trovare il form con
> un "errore 424".
> questo č il listato che ho scritto
>
> Private Sub optverticale_Click()
> If optverticale.Value = True Then
> imgverticale.Visible = True
> Else
> imgverticale.Visible = False
> End If
>
> 'Disattiva l'altra immagine
> imgorizzontale.Visible = False
> End Sub
>
>
> Grazie a quinque mi possa aiutare.
>
> Saluti
>
>
l'immagine č sull'altra form giusto?
quindi diventa
 Private Sub optverticale_Click()
 If optverticale.Value = True Then
 Forms!nomeform!imgverticale.Visible = True
 Else
 Forms!nomeform!imgverticale.Visible = False
 End If
 'Disattiva l'altra immagine
 Forms!nomeform!imgorizzontale.Visible = False
 End Sub
se non č cosě spiega meglio.. :)
ciao
Nick


text:
> l'immagine č sull'altra form giusto?
> quindi diventa
>
>  Private Sub optverticale_Click()
>  If optverticale.Value = True Then
>  Forms!nomeform!imgverticale.Visible = True
>  Else
>  Forms!nomeform!imgverticale.Visible = False
>  End If
>
>  'Disattiva l'altra immagine
>  Forms!nomeform!imgorizzontale.Visible = False
>  End Sub
>
> se non č cosě spiega meglio.. :)
> ciao
> Nick
ti ringrazio e hai capito bene, solo che provando quello che tu mi
suggerisci ottengo sempre lo stesso errore "424  necessaio oggetto"
saresti cosě gentile da spiegarmi meglio.
Grazie
Ciao


text:
"gionlap" <
gio...@tin.it
> ha scritto nel messaggio news:_ynZc.233997$5D1.10...@news4.tin.it...

la maschera č aperta?
prova ad inserire prima di tutto un
docmd.openform "nomeform"
ciao
Nick


text:
> la maschera è aperta?
> prova ad inserire prima di tutto un
> docmd.openform "nomeform"
>
> ciao
> Nick
>
ho riprovato quest'altra dicitura ma ho sempre l'errore "424 necessario
oggetto"
Ciao


text:
"gionlap" <
gio...@tin.it
> ha scritto nel messaggio
news:qXnZc.234178$5D1.10...@news4.tin.it...

questo è il listato:
Private Sub optverticale_Click()
If optverticale.Value = True Then
docmd.openform frmbordo!imgverticale.Visible = True
Else
docmd.openform frmbordo!imgverticale.Visible = False
End If
'Disattiva l'altra immagine
docmd.openform frmbordo!imgorizzontale.Visible = False
End Sub


text:
"gionlap" <
gio...@tin.it
> ha scritto nel messaggio news:OYnZc.234187$5D1.10...@news4.tin.it...

ops forse ho dato troppe cose per scontato :D
Private Sub optverticale_Click()
on error goto errore_sub
docmd.openform "frmbordo"
 If optverticale.Value = True Then
 forms!frmbordo!imgverticale.Visible = True
 Else
 forms!frmbordo!imgverticale.Visible = False
 End If
 'Disattiva l'altra immagine
 forms!frmbordo!imgorizzontale.Visible = False
Uscita_Sub:
exit sub
Errore_Sub:
msgbox err.number & " " & err.description
resume uscita_sub
 End Sub
se non va posta pure il testo del messaggio..
ciao
Nick


text:
> ops forse ho dato troppe cose per scontato :D
> Private Sub optverticale_Click()
> on error goto errore_sub
> docmd.openform "frmbordo"
>  If optverticale.Value = True Then
>  forms!frmbordo!imgverticale.Visible = True
>  Else
>  forms!frmbordo!imgverticale.Visible = False
>  End If
>
>  'Disattiva l'altra immagine
>  forms!frmbordo!imgorizzontale.Visible = False
> Uscita_Sub:
> exit sub
>
> Errore_Sub:
> msgbox err.number & " " & err.description
> resume uscita_sub
>  End Sub
>
> se non va posta pure il testo del messaggio..
>
> ciao
> Nick
>
scusami ma ho riprovato anche quest'altra soluzione ma c'e sempre quel "424
necessarioo oggetto"
ciao gionlap


text:
"gionlap" <
gio...@tin.it
> ha scritto nel messaggio news:1doZc.234323$5D1.10...@news4.tin.it...

controlla che i nomi scritti siano giusti (nome della maschera e del campo immagine da visualizzare)
se č tutto giusto non vorrei che dalla maschera x non puoi rendere visibile il campo nella maschera y...
se fosse cosě devi spostare il codice (tranne in docmd.openform...) su apertura della maschera frmbordo sostituendo il forms! con
me.
cmq metti i punti di interruzione e dicci in che punto si ferma il codice...
ciao
Nick


text:
> controlla che i nomi scritti siano giusti (nome della maschera e del campo
immagine da visualizzare)
>
> se č tutto giusto non vorrei che dalla maschera x non puoi rendere
visibile il campo nella maschera y...
> se fosse cosě devi spostare il codice (tranne in docmd.openform...) su
apertura della maschera frmbordo sostituendo il forms! con
> me.
>
> cmq metti i punti di interruzione e dicci in che punto si ferma il
codice...
>
>
> ciao
> Nick
ho provato nuovamente e non riesco a fare funzionare il programma come
vorrei, volevo chiederti se per te non č un grosso disturbo, se posso
inviarti il programma cosě gli dai un'occhiata, se si cortesemente dovresti
darmi la tua e-mail.
Ciao


text:
"gionlap" <
gio...@tin.it
> ha scritto nel messaggio news:8cpZc.234845$5D1.10...@news4.tin.it...

ok manda a
nick (chiocchiola) accessgroup (punto) it
...poi ricordiamo ci di scrivere la soluzione sul NG :)
ciao
Nick


title: liquidazione trimestrale

author: badush

text:
Ciao Amici della news,
vorrei calcolare la liquidazione trimestrale dell'Iva in base ad una data di
inizio e una data finale che stabilisco io volta per volta. Esempio dal
01/01/2003 al 31/03/2003, dal 1/04/2003 al 30/06/2003, ecc.
La differenza tra la somma dell'Iva a Debito e quella dell'Iva a Credito
deve rientrare in quel intervallo di tempo. L'Iva a debito deriva dalla
query Prestazioni L'iva a Credito dalla Query Acquisti dove sulla base dei
dati delle rispettivie tabelle vengono calcolate.
Grazie


title: liquidazione trimestrale

text:
"badush" <
bad...@martucci.com
> ha scritto nel messaggio
news:t7b6a.150328$ZE.43...@twister2.libero.it...

Usando due funzioni di aggregazione sui dominii DSum (vedi help) calcolati
il totale dell'iva a debito (tabella Prestazioni) e dell'iva a credito
(Query Acquisti) di quel trimestre.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: liquidazione trimestrale

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:0xm6a.150064$YG2.4...@twister1.libero.it...
>
> "badush" <
bad...@martucci.com
> ha scritto nel messaggio
> news:t7b6a.150328$ZE.43...@twister2.libero.it...
>>
> Usando due funzioni di aggregazione sui dominii DSum (vedi help) calcolati
> il totale dell'iva a debito (tabella Prestazioni) e dell'iva a credito
> (Query Acquisti) di quel trimestre.
>
> --
> Roberto
>
> ---------------------------------------------
> il Sito Comune di it.comp.appl.access:
>
http://www.sitocomune.com
> ---------------------------------------------
>
Provero come mi hai suggerito.
Grazie Roberto


title: fatturazione 2013

author: Lucky

text:
Buongiorno a tutti.
Il mio database di fatturazione contiene il campo IDFattura (campo
contatore) che ovviamente corrisponde al numero fattura progressivo.
Se volessi aggiungere, dopo il numero della fattura, il testo "/2013" cosa
dovrei scrivere nelle
propriet� del campo e cio� nella riga "origine controllo" ?
Grazie a chi vorr� fornirmi un aiuto.
Saluti
Lucky


title: fatturazione 2013

author: Pablitomf

text:
Lucky <
tecn...@fastwebnet.it
> ha scritto:

> Buongiorno a tutti.
> Il mio database di fatturazione contiene il campo IDFattura (campo
> contatore) che ovviamente corrisponde al numero fattura progressivo.
> Se volessi aggiungere, dopo il numero della fattura, il testo "/2013" cosa
> dovrei scrivere nelle
> proprietà del campo e cioè nella riga "origine controllo" ?
> Grazie a chi vorrà fornirmi un aiuto.
> Saluti
> Lucky
>

= [IDFattura] & "/2013"

--
------------
Pablitomf
Napoli sempre nel "Q"uore!
"mammasantissima" si nasce, non si diventa.

TheSpaceCowboy :
Britos deve recuperare per arrivare in forma al prossimo
infortunio - 24/10/12


title: fatturazione 2013

text:
Il giorno domenica 6 gennaio 2013 00:33:58 UTC+1, Lucky ha scritto:
> Buongiorno a tutti.
>
> Il mio database di fatturazione contiene il campo IDFattura (campo
>
> contatore) che ovviamente corrisponde al numero fattura progressivo.
>
> Se volessi aggiungere, dopo il numero della fattura, il testo "/2013" cosa
>
> dovrei scrivere nelle
>
> proprietà del campo e cioè nella riga "origine controllo" ?
>
> Grazie a chi vorrà fornirmi un aiuto.
>
> Saluti
>
> Lucky

Ciao,
Utilizzando come numerazione delle fatture il campo contatore, riesci a gestire le cancellazioni?
Ad esempio se l'ultima fattura che hai inserito questa mattina, oggi pomeriggio la devi cancellare perchè annullata o non andata a buon fine. Il campo contatore continua ad incrementare? O sbaglio.
Io ad esempio ho preferito creare una funzione che controlla il numero di fatture inserite e mi restituisce l'ultimo numero fattura, quindi all'inserimento di un nuovo record si incrementa di 1.
Nicola


title: fatturazione 2013

text:
Interessante, puoi dirmi come hai fatto ?
Grazie
Saluti
Lucky
============================

<
cnic...@gmail.com
> ha scritto nel messaggio
news:6bdba815-fca6-424c...@googlegroups.com...
Il giorno domenica 6 gennaio 2013 00:33:58 UTC+1, Lucky ha scritto:
> Buongiorno a tutti.
>
> Il mio database di fatturazione contiene il campo IDFattura (campo
>
> contatore) che ovviamente corrisponde al numero fattura progressivo.
>
> Se volessi aggiungere, dopo il numero della fattura, il testo "/2013" cosa
>
> dovrei scrivere nelle
>
> propriet� del campo e cio� nella riga "origine controllo" ?
>
> Grazie a chi vorr� fornirmi un aiuto.
>
> Saluti
>
> Lucky

Ciao,
Utilizzando come numerazione delle fatture il campo contatore, riesci a
gestire le cancellazioni?
Ad esempio se l'ultima fattura che hai inserito questa mattina, oggi
pomeriggio la devi cancellare perch� annullata o non andata a buon fine. Il



title: fatturazione 2013

text:
Il giorno martedì 8 gennaio 2013 08:49:15 UTC+1, Lucky ha scritto:
> Interessante, puoi dirmi come hai fatto ?
>
> Grazie
>
> Saluti
>
> Lucky
>
> ============================
>
Ciao Lucky io ho fatto così, sicuramente qualcuno molto più esperto di me potrà consigliarti meglio.
Ho comunque un campo numerico contatore invisibile come chiave primaria
Ho un campo di testo  "NumeroFattura" nel quale come proprietà valore predefinito ho settato la funzione = AssegnaNumeroFattura().
e questa è la funzione globale che ho creato nel modulo.

Function AssegnaNumeroFattura()
On Error Resume Next
Set Gestione = DBEngine.Workspaces(0).Databases(0)
Set Dettagli = Gestione.OpenRecordset("Fatture") 'Apro la tabella di origine "Fatture"
Dettagli.Index = "primarykey"
Dettagli.MoveLast ' Mi porto sull'ultimo record inserito
Ultimafattura = Dettagli.NumeroFattura 'Assegno a Ultimafattura il numero dell'ultima fattura

LunNumFat = Len(Ultimafattura) 'Analizzo la lunghezza della stringa numero fattura
Ultimafattura = Left(Ultimafattura, LunNumFat - 5) 'tolgo la parte destra(/2013)
Ultimafattura = CInt(Ultimafattura) + 1 'Converto la stringa in intero e'incremento di 1 il numero fattura.
Ultimafattura = Ultimafattura & "/" & Year(Date) 'Aggiungo (/2013)
AssegnaNumeroFattura = Ultimafattura ' assegno il valore alla funzione
Dettagli.Close
Ultimafattura = Ultimafattura - 1
End Function


title: fatturazione 2013

text:
Grazie mille !!!
Far� immediatamente tesoro del tuo prezioso consiglio.
Saluti
Lucky
==============================
>
Ciao Lucky io ho fatto cos�, sicuramente qualcuno molto pi� esperto di me
potr� consigliarti meglio.
Ho comunque un campo numerico contatore invisibile come chiave primaria
Ho un campo di testo  "NumeroFattura" nel quale come propriet� valore
predefinito ho settato la funzione = AssegnaNumeroFattura().
e questa � la funzione globale che ho creato nel modulo.



title: fatturazione 2013

text:
Il giorno martedì 8 gennaio 2013 17:16:51 UTC+1, Lucky ha scritto:
> Grazie mille !!!
>
> Farò immediatamente tesoro del tuo prezioso consiglio.
>
> Saluti
>
> Lucky
>
> ==============================
>
> >
>
> Ciao Lucky io ho fatto così, sicuramente qualcuno molto più esperto di me
>
> potrà consigliarti meglio.
>
> Ho comunque un campo numerico contatore invisibile come chiave primaria
>
> Ho un campo di testo  "NumeroFattura" nel quale come proprietà valore
>
> predefinito ho settato la funzione = AssegnaNumeroFattura().
>
> e questa è la funzione globale che ho creato nel modulo.
>
>
>
> Function AssegnaNumeroFattura()
>
> On Error Resume Next
>
> Set Gestione = DBEngine.Workspaces(0).Databases(0)
>
> Set Dettagli = Gestione.OpenRecordset("Fatture") 'Apro la tabella di origine
>
> "Fatture"
>
> Dettagli.Index = "primarykey"
>
> Dettagli.MoveLast ' Mi porto sull'ultimo record inserito
>
> Ultimafattura = Dettagli.NumeroFattura 'Assegno a Ultimafattura il numero
>
> dell'ultima fattura
>
>
>
> LunNumFat = Len(Ultimafattura) 'Analizzo la lunghezza della stringa numero
>
> fattura
>
> Ultimafattura = Left(Ultimafattura, LunNumFat - 5) 'tolgo la parte
>
> destra(/2013)
>
> Ultimafattura = CInt(Ultimafattura) + 1 'Converto la stringa in intero
>
> e'incremento di 1 il numero fattura.
>
> Ultimafattura = Ultimafattura & "/" & Year(Date) 'Aggiungo (/2013)
>
> AssegnaNumeroFattura = Ultimafattura ' assegno il valore alla funzione
>
> Dettagli.Close
>
> Ultimafattura = Ultimafattura - 1
>
> End Function

Ciao Lucky,
Guarda se può esserti utile questa modifica.
In pratica da la numerazione da 1 a 9 sarà così 001/2013
da 10 a 99 sarà così 020/2013
da 100 in poi sarà così 101/2013.

Function AssegnaNumeroFattura()
On Error Resume Next
Set Gestione = DBEngine.Workspaces(0).Databases(0)
Set Dettagli = Gestione.OpenRecordset("Fatture") 'Apro la tabella di origine "Fatture"
Dettagli.Index = "primarykey"
Dettagli.MoveLast ' Mi porto sull'ultimo record inserito
ultimafattura = Dettagli.NumeroFattura 'Assegno a Ultimafattura il numero dell'ultima fattura

LunNumFat = Len(ultimafattura) 'Analizzo la lunghezza della stringa numero fattura
ultimafattura = Left(ultimafattura, LunNumFat - 5) 'tolgo la parte destra(/2013)
IntUltimaFattura = ultimafattura
ultimafattura = CInt(ultimafattura) + 1 'Converto la stringa in intero e'incremento di 1 il numero fattura.
IntUltimaFattura = CInt(ultimafattura)
Select Case IntUltimaFattura
Case 1 To 9
ultimafattura = "00" & ultimafattura & "/" & Year(Date) 'Aggiungo (/2013)
'MsgBox IntUltimaFattura, vbOKOnly, "Minore di 10"
AssegnaNumeroFattura = ultimafattura
Case 10 To 99
'MsgBox IntUltimaFattura, vbOKOnly, "Minore di 100"
ultimafattura = "0" & ultimafattura & "/" & Year(Date) 'Aggiungo (/2013)
AssegnaNumeroFattura = ultimafattura
Case Else
ultimafattura = ultimafattura & "/" & Year(Date) 'Aggiungo (/2013)
AssegnaNumeroFattura = ultimafattura
End Select
 ' assegno il valore alla funzione
Dettagli.Close
ultimafattura = ultimafattura - 1
End Function


title: fatturazione 2013

author: Oriano

text:
"Lucky" <
tecn...@fastwebnet.it
> ha scritto nel messaggio
news:BL2Gs.21745$5b....@tornado.fastwebnet.it...
> Buongiorno a tutti.

non devi fare nulla:

La Risoluzione Ministeriale 1/E del 10/01/2013 l'Agenzia delle Entrate ha
confermato, a dispetto di quanto riportato sulla stampa specializzata, che
le indicazioni riportate sulla Legge di stabilit� (L.228/2012) sono da
intendersi in modo estensivo (come ulteriore possibilit� per le aziende) e
non come limitative (quindi senza l'eliminazione della possibilit� di
ripartire dal numero 1 ogni anno).

Si pu� utilizzare pertanto una delle seguenti modalit�:

- partire da 1 dal 01/01/2013
- proseguire col numero del 2012 a partire dal 01/01/2013
- usare la serie per anno
- non usare la serie per anno e ricominciare da 1 ogni anno
- non usare la serie per anno e continuare dall'anno precedente.

Di conseguenza, non sar� eseguito alcun intervento software potendo
proseguire le numerazioni dei documenti con le consuete modalit�.


title: errore 3022

author: Alessandro Spagnolo

text:
> Alessandro Spagnolo <
Alessandr...@lazio.cgil.it
> wrote in message
> ZoPH0Dzb$GA....@news-02.uni.net...
> > Mi succede una cosa strana di cui non vengo a capo.
> > Ho una sottomaschera che visualizza dati da una query, modifica i dati
delle tabelle sottostanti e/o aggiunge record.
> > Dopo aver inserito cosi' dei dati, all'improvviso smette di incrementare
il campo contatore (che è l'unica chiave primaria e l'unico indice delle
tabelle sottostanti la maschera)  tentando di aggiornare i campi ponendo lui
uguale a 0 (gli altri campi contengono invece i loro regolari valori).
> > Da quel momento in poi, ogniqualvolta si cerca di aggiungere un record,
appare l'err in questione, che si verifica al momento di "refreshare" la
maschera dopo i controlli sull'integrità dei dati effettuati via codice.
> >
> > ----L'apporto modifiche non è riuscito perché si è cercato di duplicare
i
> > valori nell'indice, nella chiave primaria o nella relazione. (3022)
> > Si è cercato di duplicare un valore in un campo che è la chiave primaria
> > della tabella sottostante o un indice che non consente duplicati.----
>
> Quasi certamente l'errore sta' nella query.
> Io credo che tu abbia una situazione di questo tipo:
> Tabella1
> ID (contatore), Dato1, Dato2, ecc.
>
> Tabella2
> ID (Numerico in relazione con Tabella1!ID), Dato, ecc
>
> Quindi hai fatto una query in cui il campo ID che viene fuori e' quello
della tabella2 e non della tabella1, quindi, dato che la maschera fa
riferimento a Tabella2!ID, il controllo ID non viene automaticamente
incrementato, ma ti resta a 0 in qunto e' un campo contatore.
> Soluzione:
> Nella query di origine imposta il campo ID in modo che venga preso da
> tabella1 e NON da tabella2
Ciao Sib,
Temo che il problema sia più rognoso del previsto. In effetti la situazione
della query era quella da te denunciata, ma solo perchè avevo provato di
tutto per ovviare, anche a fare quell'illogico cambiamento.
Invece sembra che tutto derivi dal codice. Infatti isolando due routine
della subform incriminata, si riesce (manualmente, infatti le routine
automatizzano l'inserimento dei dati) ad aggiungere records, quindi penso
che tabelle e query siano rigth. Ora sto stampandomi le pagine di codice per
analizzarlo ben bene. Speriamo...bene perchè mi sono proprio bloccato.
Dopo che ho finito tutto 'sto casino avrei intenzione di entrare nel giro
del sito comune e di partecipare attivamente al newsgroup, e non solo per
provare a dare qualche risposta utile ai neofiti. E' bello trovare un
riscontro utile quando si ha un problema apparentemente irrisolvibile.
Sarebbe bello riuscire a rispondere a tutti (anche se a volte le domande
sono al limite del comprensibile ;-)
Ciao a tutti


title: errore 3022

author: Antonio Biso

text:
Alessandro Spagnolo ha scritto nel messaggio
<9VgrRB8b$
GA....@news-02.uni.net
>...
>Dopo che ho finito tutto 'sto casino avrei intenzione di entrare nel giro
>del sito comune e di partecipare attivamente al newsgroup, e non solo per
>provare a dare qualche risposta utile ai neofiti. E' bello trovare un
>riscontro utile quando si ha un problema apparentemente irrisolvibile.
>Sarebbe bello riuscire a rispondere a tutti (anche se a volte le domande
>sono al limite del comprensibile ;-)
Ci vedrei bene un sottofondo tipo la colonna sonora di "Via col vento" ...
Eh eh eh
Antonio


title: errore 3022

author: RoDAgo

text:
Antonio Biso <
ch...@etruria.net
> wrote in message
87gvf2$c5m$1...@lacerta.tiscalinet.it...

ROTFL!


title: Problemino

author: Bobbygol

text:
Al solito ormai, quando sono in difficoltà vi chiedo aiuto.
Il mio problema è questo: ho una tabella clienti ed una tabella contatti,
che contiene più nominativi per ogni cliente.
Il mio desiderio è creare una maschera nella quale digitare prima il
cliente, con una casella a discesa che mi permette di scegliere fra tutti i
clienti, e quindi il contatto, con una casella a discesa che mi presenti
solo i contatti del cliente precedentemente scelto.
Per la prima fase non c'e' problema: ho creato una casella combinata che
prenda i dati dalla tabella clienti, visualizzando codice e ragione sociale
e memorizzando il codice; poi ho creato una query che riporta tutti i
contatti per ogni cliente, e ho messo nella maschera una casella combinata,
che prenda i dati da questa query, aggiungendo alla istruzione select che
trovo nelle proprietà/dati/origine riga la clausola where codice cliente=
casella combinata di cui sopra.
Appena entro nella maschera e seleziono un cliente, quando passo nella
casella contatti mi vengono correttamente visualizzati solo i contatti di
quel cliente, ma se torno sopra e cambio il codice cliente, quando ritorno
nella casella contatti  mi ritrovo ancora i contatti del primo cliente.
Dove sbaglio?
MI potete dare una mano (sempre che sia riuscito a spiegare il mio
problema)?
Grazie comunque
***mauro


title: Problemino

author: MA

text:
> Al solito ormai, quando sono in difficoltà vi chiedo aiuto.
> Il mio problema è questo:
No il tuo problema è un subject generico.
Riposta la domanda con un subject attinente
MAssimiliano


title: Stampa report in 2 copie

text:
Si può via codice impostare la stampa di un report in duplice copia?
Grazie
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Stampa report in 2 copie

text:
"fe_lo" <
fe_l...@yahoo.it
> ha scritto nel messaggio
news:clb1kn$a1l$1...@news.newsland.it...
> Si può via codice impostare la stampa di un report in duplice copia?
> Grazie
>
scrivi due volte l'istruzione di stampa.
MAssimiliano


title: Stampa report in 2 copie

text:
"fe_lo" <
fe_l...@yahoo.it
> ha scritto nel messaggio
news:clb1kn$a1l$1...@news.newsland.it...

oggetto printer vedi help


title: Stampa report in 2 copie

author: ALESSANDRO Baraldi

text:
---------------------------------------------------------------------------
"fe_lo" <
fe_l...@yahoo.it
> ha scritto nel messaggio
news:clb1kn$a1l$1...@news.newsland.it...
> Si può via codice impostare la stampa di un report in duplice copia?
> Grazie
Hai diverse possibilità, alcune vincolate dalla versione di Access che non
hai menzionato:
1)[Access>= Xp]     Puoi accedere all'oggetto Printer che ti permette di
Impostare anche il Numero di copie.
2)[Tutte le versioni] Se non necessiti del Preview ovvero l'Anteprima puoi
usare il Metodo PrintOut dopo aver
    aperti il Report non Visibile...!
3)[Tutte le versioni] Se necessiti del Preview creati un Menù dedicato che
su Pulsante STAMPA
    ti renda il preview non visibile e ti lanci la Stampa del Report con
PrintOut sull'oggetto Report e chiuda tutto.
Ciao
--
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.mantuanet.it/alessandro.baraldi/


title: Medie mobili exp

author: GhanaWay

text:
Come si possono ricavare le medie mobili esponenziali di un set di valori
posti sequenzialmente dentro una tabella ?
thks


title: Medie mobili exp

author: Bruno Campanini

text:
"GhanaWay" <
buff...@virgilio.it
> wrote in message
news:43cb5ea5$0$1077$4faf...@reader3.news.tin.it...
> Come si possono ricavare le medie mobili esponenziali di un set di valori
> posti sequenzialmente dentro una tabella ?
>
> thks
Cosa intendi per "esponenziali"?
Volevi dire potenziate? Tipo la media quadratica,
quella armonica o che?
Bruno


title: Medie mobili exp

text:
è un tipo di media ove la base è "e^x", media exp = sum_i(e ^x_i) quindi non
si possono utlizzare le funzioni di acces !
Es: la media exp a 5 periodi precedenti, calcola il valore medio exp
all'interno di quel periodo. Ergo, in una serie di dati lunga a piacere,
estrapolo consecutivamente 5 dati e ne calcolo la nmedia exp.
Come si pu' implementare, magari in VB ?
Thanks
"Bruno Campanini" <
bruno.c...@tin.it
> ha scritto nel messaggio
news:43cb80d4$0$1088$4faf...@reader1.news.tin.it...



title: Medie mobili exp

text:
"GhanaWay" <
buff...@virgilio.it
> wrote in message
news:43cb9467$0$1077$4faf...@reader3.news.tin.it...
>è un tipo di media ove la base è "e^x", media exp = sum_i(e ^x_i) quindi
>non si possono utlizzare le funzioni di acces !
> Es: la media exp a 5 periodi precedenti, calcola il valore medio exp
> all'interno di quel periodo. Ergo, in una serie di dati lunga a piacere,
> estrapolo consecutivamente 5 dati e ne calcolo la nmedia exp.
> Come si pu' implementare, magari in VB ?
Non riesco a capire che tipo di media tu voglia calcolare.
Per fare una media, mobile o fissa, occorre una serie (seriazione)
di modalità (x) e di frequenze (y).
In funzione di x, y e del parametro che la determina, qual è
la formula della tua media (fissa, non mobile; poi si vedrà
per quella mobile quanti termini debbono essere compresi)?
Bruno


title: convertire un importo scritto in euro numerico in lettere testo

text:
esempio
3627,81
deve resittuirmi
tremilaseicentoventisettevirgolaottantuno
almeno credo! confermatemi in caso.
sul sito comune cè un databse dei bollettini che fà questo ma non gestisce
la virgola.
qualcuno di voi sa coem fare?
grazie.


author: Graziano Franchi (Dal Client)

text:
Fatti Furbo
3627,81 cerchi la virgola e lo dividi in due e usi il programma sul sito
comune
Saluti
G.Franchi
"@----- Pinco --@-- Pallino -----@" <
tos...@libero.it
> ha scritto nel
messaggio news:13z09.8592$n04.2...@twister2.libero.it...



author: Alberto S.

text:
"@----- Pinco --@-- Pallino -----@" <
tos...@libero.it
> ha scritto nel
messaggio news:13z09.8592$n04.2...@twister2.libero.it...
> esempio
>
> 3627,81
>
> deve resittuirmi
>
> tremilaseicentoventisettevirgolaottantuno
>
> almeno credo! confermatemi in caso.
Le "raccomandazioni" per la compilazione degli assegni in euro (devi poi
vedere tu se possono essare applicate anche al caso tuo) dicono
in cifre: 3627,81
in lettere: tremilaseicentoventisette/81
> sul sito comune cè un databse dei bollettini che fà questo ma non gestisce
> la virgola.
>
> qualcuno di voi sa coem fare?
>
> grazie.
>
Ciao
--
Alberto


text:
"Graziano Franchi (Dal Client)" <
franchi....@tiscalinet.it
> ha scritto
nel messaggio news:ahus7o$pt$1...@lacerta.tiscalinet.it...
> Fatti Furbo
Esatto, anche tu!
Scrivi DOPO il quoting!!!
Antonio


title: Importare file in Access da ODBC

author: Martac

text:
Se da Microsoft Access importo un file ODBC mi scrive come intestazione
dei campi il nome che ho dato ai campi in As400 se volessi dargli
direttamente l'etichetta è possibile con qualche keyword As400, ho provato
TEXT e COLHDG ma niente.
Grazie.
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Importare file in Access da ODBC

text:
Martac wrote:
> Se da Microsoft Access importo un file ODBC mi scrive come
> intestazione dei campi il nome che ho dato ai campi in As400 se
> volessi dargli direttamente l'etichetta è possibile con qualche
> keyword As400, ho provato TEXT e COLHDG ma niente.
> Grazie.
Creati una query con tutti gli alias che vuoi ed invece di usare la tabella usa la query
--
--
MAssimiliano Amendola
www.accessgroup.it
Cisa - Conferenza Italiana Sviluppatori Access


title: Importare file in Access da ODBC

text:
MA ha scritto:
> Martac wrote:
> > Se da Microsoft Access importo un file ODBC mi scrive come
> > intestazione dei campi il nome che ho dato ai campi in As400 se
> > volessi dargli direttamente l'etichetta č possibile con qualche
> > keyword As400, ho provato TEXT e COLHDG ma niente.
> > Grazie.
> Creati una query con tutti gli alias che vuoi ed invece di usare la tabella
usa la query
Dici di crearmi una query in As400 e poi di importare quella?
Volevo saper se ci fosse stato un metodo piů rapido, comunque grazie.



title: Array di controlli

author: Walter

text:
Ciao a tutti, e' possibile creare un array di controlli in access cosi' come
si fa in visual basic?
Grazie
Walter


title: Array di controlli

author: GeKODE

text:
"Walter" <
wal...@libero.it
> ha scritto nel messaggio
news:oxO3f.7849$65.1...@twister1.libero.it...

Tecnicamente mi sembra non si possa fare ... ma laddove non puoi fare ...
puoi giocare di escmotage!!!
Puoi nominare i controlli con un Indice progressivo:
ctrl1
ctrl2
ctrl3
ctrl4
ctrl...etc...
'ora cicliamo il tutto
for x = 1 to ....
me.controls("ctrl"&y).left=...il tuo dato...
next
Valuta quanto detto e fai dei test, secondo me cosě potresti farcela.
(sottolineo perň che sono forse il meno adatto in queste forme di help!!!).
--
Ciao
GeKODE


title: Array di controlli

text:
> Ciao
>
>
> GeKODE
Io ci provo !!
Grazie


title: SE CAMPO E' NUMERICO FUNZIONA SE E' TESTO NO......

author: guggenheim

text:
In una query ho:
CAMPO1: DLookUp("[CAMPO2]";"TABELLA1";"[mese] = " & [mese]-1 & "and" &
"[COD_SOTTOCONTO]=" & [COD_SOTTOCONTO])
Se il campo COD_SOTTOCONTO è numerico funziona se invece è testo mi da
#errore
Dato che non posso cambiare il formato al campo, Cosa devo cambiare?
Grazie
            \ | /
         (@ @)
---o00-(_)-00o-----


author: Alessandro Cara

text:
guggenheim wrote:
> In una query ho:
>
> CAMPO1: DLookUp("[CAMPO2]";"TABELLA1";"[mese] = " & [mese]-1 & "and" &
> "[COD_SOTTOCONTO]=" & [COD_SOTTOCONTO])
>
> Se il campo COD_SOTTOCONTO è numerico funziona se invece è testo mi da
> #errore
>
> Dato che non posso cambiare il formato al campo, Cosa devo cambiare?
Se e' testo devi racchiudere fra delimitatori (apici o virgolette)
--
ac
y-1=x


author: Alessandro Baraldi

text:
Alessandro Cara ha scritto:

Facciamo che sono meglio gli apici a patto di usare il Replace,
funziona con tutti i DB e risolve sicuramente più inghippi...!
@Alex


title: [3/7 OT] Firma digitale aggratisse ?

author: RobertoA

text:
Per le comunicazioni con la pubblica amministrazione e' necessario
utilizzare dei certificati per la firma digitale
Sono tutti accrocchietti + software che costano dai 70-80 ai 200 euri
Non e' che esiste qualche ente, di quelli autorizzati certificati Cnipa, che
forniscono sistemi piu' economici ?
Ciao e grazie
RobertoA


title: [3/7 OT] Firma digitale aggratisse ?

author: Sergio MAZZA

text:
"RobertoA" <
amor...@tiscalinet.it
> ha scritto nel messaggio
news:49bd...@newsgate.x-privat.org...

Non so' se hai già risolto; comunque ti segnalo questo Ente:
www.thawte.com
.
Alla pagina:
www.thawte.com/secure-email/personal-email-certificates/index.html?click=DoYouNeedTo-SecureMail#

puoi ottenere il certificato gratuitamente...
Ciao.
--
Sergio MAZZA


title: problemi con findfirst e posizionamento record

author: pone

text:
Salve a tutti
ho un problema abbastanza strano. Da una sottomaschera
all'aggiornamento dei dati in un campo (chiamiamolo "mio") voglio
verificare se esistono corrispondenze con un altra tabella non
relazionata a quella sulla quale opero verificando che "mio" e "x"
nella tabella uno esistano in uno dei record della tabella2. Nel caso
esistano il valore di mio della tabella1 dovrebbe sommarsi a quello
corrispondente nella tabella2, senno aggiungere un nuovo record.
ho provato cosi
private sub mio_afterupdate
dim db as dao.database
dim rst as dao.recordset
set db = currentdb
set rst = db.openrecordset("tabella2", dbopendynaset)
rst.findfirst "mio =" & rst.[mio]
tralascio il resto perchè il problema è qui.... in effetti verificato
con msgbox il metodo trova il record, o almeno credo, perchè poi in
realtà l'aggiunta la fa sul PRIMO record di tabella2 e non su quello
trovato....
non capisco....
ho provato con una select.... ho provato con un semplice if cercando
di far scorrere il recordset con un do .... loop fino alla fine, però
non si muove dal primo, per cui se i criteri sono soddisfatti al primo
record bene sennò niente, non si schioda da lì. Che può essere?
preciso che uso un access2007 e sono caricate le librerie vba,
microsoft 12.0 object library, dao 3.6, ole automation
grazie a chi potrà essermi di aiuto e buon fine anno a tutti


text:

niente trovato.... problema di sintassi... come l'avevo scritto io il
findfirst trovava soddisfatti i criteri alla prima occorrenza sempre
perchè il "mio =" era il campo nel quale cercare e rst![mio] lo stesso
campo quindi....
adesso ho provato a fargli fare la ricerca su tutti e due i campi
"mio" e "x" ed ho scritto
rst.findfirst "mio =" & 'variabile del valore' And "x =" & 'seconda
variabile'
ma mi dice tipo non corrispondente....
non è possibile stabilire più di un criterio con findfirst?


text:
"pone" <
p.o...@gmail.com
> wrote in message
news:bcc9b095-42fd-47e0...@y1g2000pra.googlegroups.com...
On 29 Dic, 00:19, pone <
p.on...@gmail.com
> wrote:
> Salve a tutti
>
> ho un problema abbastanza strano. Da una sottomaschera
> all'aggiornamento dei dati in un campo (chiamiamolo "mio") voglio
> verificare se esistono corrispondenze con un altra tabella non
> relazionata a quella sulla quale opero verificando che "mio" e "x"
> nella tabella uno esistano in uno dei record della tabella2. Nel caso
> esistano il valore di mio della tabella1 dovrebbe sommarsi a quello
> corrispondente nella tabella2, senno aggiungere un nuovo record.
>
> ho provato cosi
>
> private sub mio_afterupdate
>
> dim db as dao.database
> dim rst as dao.recordset
> set db = currentdb
> set rst = db.openrecordset("tabella2", dbopendynaset)
> rst.findfirst "mio =" & rst.[mio]
Immaginando che [mio] sia il campo NUMERICO
di una tabella ed anche il controllo di una scheda:
rst.FindFirst "[mio]=" & [mio]
deve funzionare, essendo il primo [mio] il campo
della tabella, il secondo il controllo della scheda.
Se poni rst! davanti al secondo... cerca nelle sue tasche
e si trova sempre.
Con più condizioni:
rst.FindFirst "[mio]=" & [mio] & " And  [tuo]=" & [tuo]
I primi sono campi della tabella, i secondi controlli della scheda.
Parliamo sempre di campi NUMERICI.
Bruno


text:
On 29 Dic, 02:23, "Bruno Campanini" <
B...@gmail.com
> wrote:
> "pone" <
p.on...@gmail.com
> wrote in message

grazie
e nel caso, e questo è il caso, che mio sia numerico e tuo sia un
campo di testo (per la precisione una lista di valori di testo) che si
fa?


text:

fatto
rst.findfirst "mio=" & mio "and tuo=' " & tuo.value & " ' "
cioè una questione di apici.... funziona anche se non ho capito bene
il perchè (ho solo trovato un esempio di sistemazione degli apici)
grazie e buon anno
Peppe


text:
"pone" <
p.o...@gmail.com
> wrote in message
news:10e80b93-49d1-4d0f...@o40g2000prn.googlegroups.com...
fatto
rst.findfirst "mio=" & mio "and tuo=' " & tuo.value & " ' "
cioč una questione di apici.... funziona anche se non ho capito bene
il perchč (ho solo trovato un esempio di sistemazione degli apici)
grazie e buon anno
Peppe
================================
Io la scriverei cosě:
rst.FindFirst "[mio]=" & [mio] & " And [tuo]='" & [tuo] & "'"
senza  .Value o inutili spazi.
Questione di stile, unicuique suum.
Bruno


text:
On 29 Dic, 14:15, "Bruno Campanini" <
B...@gmail.com
> wrote:
> "pone" <
p.on...@gmail.com
> wrote in message
>
> news:10e80b93-49d1-4d0f...@o40g2000prn.googlegroups.com...
>
> fatto
> rst.findfirst "mio=" & mio "and tuo=' " & tuo.value & " ' "
> cioè una questione di apici.... funziona anche se non ho capito bene
> il perchè (ho solo trovato un esempio di sistemazione degli apici)
> grazie e buon anno
> Peppe
> ================================
> Io la scriverei così:
>
> rst.FindFirst "[mio]=" & [mio] & " And [tuo]='" & [tuo] & "'"
>
> senza  .Value o inutili spazi.
>
> Questione di stile, unicuique suum.
>
> Bruno
Hai ragione Bruno sul .Value... sugli spazi e solo perchè chi legga il
post alla ricerca di una soluzione per lo stesso o simile problema
capisca quali sono le virgolette e quali gli apici che spesso non si
capisce... nel codice ovviamente non ho lasciato spazi inutili...
Comunque ti ringrazio molto per l'interesse.. frequentando il NG mi
sono reso conto che spesso anche solo la possibilità di confronto
aiuta a trovare soluzioni... Buon Anno
Peppe


text:
"pone" <
p.o...@gmail.com
> wrote in message
news:e744b687-5ffd-4cb5...@r10g2000prf.googlegroups.com...



============================
Buon Anno!
Bruno


title: Query di eliminazione che si comporta stranamente...

author: Io

text:
Ho creato una query di eliminazione che prende l'IDCliente da una Casella di
Testo, va a cercare nella tabella Clienti il cliente con l'ID corrispondente
e lo elimina. Il Cliente viene eliminato ma succede una cosa strana: il
cliente con l'ID = 1 viene modificato con il nome cliente del cliente
eliminato! Come è possibile??? Sto impazzendo HELPPPP...
Ciao


text:
"Io" <I...@Io.it> ha scritto nel messaggio
news:2jfp0jF...@uni-berlin.de...

Se il campo ID è contatore (valori univoci) è impossibile; descrivi meglio
le operazioni che fai e la tipologia dei campi (in tabella)...
Ciao.
--
Sergio MAZZA


text:
"Sergio MAZZA" <
sergi...@tiscali.it
> ha scritto nel messaggio
news:caucpq$nhr$1...@canarie.caspur.it...

Il campo ID non è di tipo contatore ma è univoco (tramite codice faccio in
modo che lo sia) ed è un campo numerico mentre il campo nomecliente è un
campo di testo...
La query è DELETE clienti.nomecliente, clienti.idcliente FROM clienti WHERE
idcliente = forms!eliminacliente!idcliente_txt.value
Ho provato a cancellare il cliente con id = 16 (in mezzo alla tabella) che è
stato cancellato però il nome cliente del id=16 è diventato il nome cliente
dell' id=1 (che è stato quindi sovrascritto e perso)... Spero di essermi
spiegato meglio...
Ciao


text:
"Io" <I...@Io.it> ha scritto nel messaggio
news:2jfrroF...@uni-berlin.de...
> > > e lo elimina. Il Cliente viene eliminato ma succede una cosa strana:
il
> > > cliente con l'ID = 1 viene modificato con il nome cliente del cliente
> > > eliminato! Come è possibile??? Sto impazzendo HELPPPP...
> > > Ciao
> > >
> >
> > Se il campo ID è contatore (valori univoci) è impossibile; descrivi
meglio
> > le operazioni che fai e la tipologia dei campi (in tabella)...
>
> Il campo ID non è di tipo contatore ma è univoco (tramite codice faccio in
> modo che lo sia) ed è un campo numerico mentre il campo nomecliente è un
> campo di testo...
> La query è DELETE clienti.nomecliente, clienti.idcliente FROM clienti
WHERE
> idcliente = forms!eliminacliente!idcliente_txt.value
> Ho provato a cancellare il cliente con id = 16 (in mezzo alla tabella) che
è
> stato cancellato però il nome cliente del id=16 è diventato il nome
cliente
> dell' id=1 (che è stato quindi sovrascritto e perso)... Spero di essermi
> spiegato meglio...
> Ciao
>
Aggiornamento: ho creato una query analoga per le commesse per i clienti
(altra tabella) che funziona perfettamente! Non ci capisco un 'azz di questo
access: a volte una cosa funziona in una maschera e la stessa identica cosa
non funziona più in un'altra maschera o controllo: come è possibile?
Ciao


author: 'gnurant

text:
> Il campo ID non è di tipo contatore ma è univoco (tramite codice faccio in
> modo che lo sia) ed è un campo numerico mentre il campo nomecliente è un
> campo di testo...
> La query è DELETE clienti.nomecliente, clienti.idcliente FROM clienti
WHERE
> idcliente = forms!eliminacliente!idcliente_txt.value
> Ho provato a cancellare il cliente con id = 16 (in mezzo alla tabella)
che è
> stato cancellato però il nome cliente del id=16 è diventato il nome
cliente
> dell' id=1 (che è stato quindi sovrascritto e perso)... Spero di essermi
> spiegato meglio...
> Ciao
>
il where dovresti basarlo sull'id cliente...dal momento che è univoco come
dici tu, cancelli il cliente giusto. :o)
Ciauz
--
'gnurant come una cucuzza
Inviato da
www.mynewsgate.net


text:
"'gnurant" <
6751i...@mynewsgate.net
> ha scritto nel messaggio
news:200406181...@mynewsgate.net...
> > Il campo ID non è di tipo contatore ma è univoco (tramite codice faccio
in
> > modo che lo sia) ed è un campo numerico mentre il campo nomecliente è un
> > campo di testo...
> > La query è DELETE clienti.nomecliente, clienti.idcliente FROM clienti
> WHERE
> > idcliente = forms!eliminacliente!idcliente_txt.value
> il where dovresti basarlo sull'id cliente...dal momento che è univoco come
> dici tu, cancelli il cliente giusto. :o)
Forse non hai letto bene ma mi pare che sia proprio così!
Ciao


text:
"Io" <I...@Io.it> ha scritto nel messaggio
news:2jfrroF...@uni-berlin.de...
>
> Il campo ID non è di tipo contatore ma è univoco (tramite codice faccio in
> modo che lo sia) ed è un campo numerico mentre il campo nomecliente è un
> campo di testo...
> La query è DELETE clienti.nomecliente, clienti.idcliente FROM clienti
WHERE
> idcliente = forms!eliminacliente!idcliente_txt.value
> Ho provato a cancellare il cliente con id = 16 (in mezzo alla tabella) che
è
> stato cancellato però il nome cliente del id=16 è diventato il nome
cliente
> dell' id=1 (che è stato quindi sovrascritto e perso)... Spero di essermi
> spiegato meglio...
> Ciao
>
Se il campo contatore "univoco" lo crei tu ci sarà un problema nella routine
che lo gestisce; prova a fare un requery della form dopo aver cancellato il
cliente...
Ciao.
--
Sergio MAZZA


text:
> Forse non hai letto bene ma mi pare che sia proprio così!
> Ciao
>
ahahah..scusami hai ragione...ho letto proprio male :o)



text:
"Sergio MAZZA" <
sergi...@tiscali.it
> ha scritto nel messaggio
news:caufcu$o78$1...@canarie.caspur.it...

Io visualizzando la tabella in modalità foglio dati vedo che gli id sono
corretti: partono da 1 fino a 35 e se ne aggiungo uno nuovo diventa il 36mo
quindi per la gestione del contatore non ho problemi... la form che uso
serve solo per cancellare il cliente ed è modale quindi di quale form
intendi fare il requery?
Ciao e grazie per l'aiuto


text:
"Io" <I...@Io.it> ha scritto nel messaggio
news:2jfui8F...@uni-berlin.de...
>
> Io visualizzando la tabella in modalità foglio dati vedo che gli id sono
> corretti: partono da 1 fino a 35 e se ne aggiungo uno nuovo diventa il
36mo
> quindi per la gestione del contatore non ho problemi... la form che uso
> serve solo per cancellare il cliente ed è modale quindi di quale form
> intendi fare il requery?
> Ciao e grazie per l'aiuto
Quindi apri la tabella con il doppio clic dalla finestra database?
Ciao.
--
Sergio MAZZA


text:
"Sergio MAZZA" <
sergi...@tiscali.it
> ha scritto nel messaggio
news:cauhlm$oru$1...@canarie.caspur.it...

Esatto la ho aperta da li per verificare che la query avesse effettivamente
cancellato il record e per caso mi sono accorto che la descrizione del
record con ID=1 era stata sovrascritta... Suggerimenti???
Ciao


text:
"Io" <I...@Io.it> ha scritto nel messaggio
news:2jg8luF...@uni-berlin.de...
>
> Esatto la ho aperta da li per verificare che la query avesse
effettivamente
> cancellato il record e per caso mi sono accorto che la descrizione del
> record con ID=1 era stata sovrascritta... Suggerimenti???
> Ciao
La form "eliminacliente" č a maschere continue? Come fai la cancellazione
con un bottone che esegue la query? Se sě, invia il codice.
Piů informazioni dai e prima si arriva ad una soluzione...
Ciao.
--
Sergio MAZZA


text:
"Sergio MAZZA" <
sergi...@tiscali.it
> ha scritto nel messaggio
news:caur1g$rdk$1...@canarie.caspur.it...
> La form "eliminacliente" è a maschere continue? Come fai la cancellazione
> con un bottone che esegue la query? Se sì, invia il codice.
La maschera elimina cliente è una maschera che ha solo una combobox che
carica tutti i committenti, una textbox con l'idcommittente passatogli dalla
combobox (dato che la query non vuole funzionare con combobox.column(1)), un
pulsante per eseguire la query ed uno per chiudere la maschera senza fare
nulla... cosa intendi per maschere continue???
Query:
DELETE [Committenti].[IDCommittente], [Committenti].[Committente]
FROM Committenti
WHERE
((([Committenti].[IDCommittente])=([Forms]![EliminaCommittente]![IDCommitten
te].Value)));
Codice del pulsante eliminacommittente:
Private Sub EliminaCommittente_Click()
    Dim Response As Variant
    If DCount("[IDCommittente]", "Commesse", "[IDCommittente] =
Forms![EliminaCommittente].[IDCommittente].Value") = 0 Then
        Dim stDocName As String
        stDocName = "EliminaCommittente_Query"
        DoCmd.OpenQuery stDocName, , stLinkCriteria
        DoCmd.Close
    Else
        Response = MsgBox("Il committente selezionato non può essere
eliminato perchè ha delle commesse collegate: selezionare un altro
committente da eliminare oppure rivolgersi all'amministratore del
DataBase!", vbExclamation + vbOKOnly, "Attenzione!")
    End If
End Sub
Esempio tabella committenti:
IDCommittente Committente
1  pippo
2  pluto
3  minnie
4  paperino
Se ti occorre altro chiedi pure... io DEVO risolvere questo problema!
Ciao


text:
"Io" <I...@Io.it> ha scritto nel messaggio
news:2jga94F...@uni-berlin.de...
>
> "Sergio MAZZA" <
sergi...@tiscali.it
> ha scritto nel messaggio
> news:caur1g$rdk$1...@canarie.caspur.it...
> > La form "eliminacliente" č a maschere continue? Come fai la
cancellazione
> > con un bottone che esegue la query? Se sě, invia il codice.
>
> La maschera elimina cliente č una maschera che ha solo una combobox che
> carica tutti i committenti, una textbox con l'idcommittente passatogli
dalla
> combobox (dato che la query non vuole funzionare con combobox.column(1)),
un
> pulsante per eseguire la query ed uno per chiudere la maschera senza fare
> nulla... cosa intendi per maschere continue???
>
> Query:
>
> DELETE [Committenti].[IDCommittente], [Committenti].[Committente]
> FROM Committenti
> WHERE
>
((([Committenti].[IDCommittente])=([Forms]![EliminaCommittente]![IDCommitten
> te].Value)));
>
>
> Codice del pulsante eliminacommittente:
>
> Private Sub EliminaCommittente_Click()
>     Dim Response As Variant
>     If DCount("[IDCommittente]", "Commesse", "[IDCommittente] =
> Forms![EliminaCommittente].[IDCommittente].Value") = 0 Then
>         Dim stDocName As String
>         stDocName = "EliminaCommittente_Query"
>         DoCmd.OpenQuery stDocName, , stLinkCriteria
>         DoCmd.Close
>     Else
>         Response = MsgBox("Il committente selezionato non puň essere
> eliminato perchč ha delle commesse collegate: selezionare un altro
> committente da eliminare oppure rivolgersi all'amministratore del
> DataBase!", vbExclamation + vbOKOnly, "Attenzione!")
>     End If
> End Sub
>
>
> Esempio tabella committenti:
>
> IDCommittente Committente
> 1  pippo
> 2  pluto
> 3  minnie
> 4  paperino
>
> Se ti occorre altro chiedi pure... io DEVO risolvere questo problema!
> Ciao
>
Prova ad utilizzare sono VBA:
(es.)
Private Sub EliminaCommittente_Click()
    Dim Response As Variant
    If DCount("[IDCommittente]", "Commesse", "[IDCommittente] =
Forms![EliminaCommittente].[IDCommittente].Value") = 0 Then
        DoCmd.RunSQL "DELETE [Committenti].[IDCommittente],
[Committenti].[Committente] FROM Committenti WHERE
((([Committenti].[IDCommittente])=" & Me![EliminaCommittente]));"
    Else
        MsgBox "Il committente selezionato non puň essere eliminato perchč
ha delle commesse collegate: selezionare un altro committente da eliminare
oppure rivolgersi all'amministratore del DataBase!", vbExclamation +
vbOKOnly, "Attenzione!"
    End If
End Sub
Praticamente fai tutto nel clic del bottone; la MsgBox puoi utilizzarla
anche come istruzione, senza il ritorno del tasto premuto visto che non lo
intercetti dopo.
Sono (quasi) convinto che non c'entri nulla ma con questi pochi elementi non
so' cosa proporti...
Ciao.
--
Sergio MAZZA


text:
"Sergio MAZZA" <
sergi...@tiscali.it
> ha scritto nel messaggio
news:cb6hoe$t2l$1...@canarie.caspur.it...
[CUT]
> Praticamente fai tutto nel clic del bottone; la MsgBox puoi utilizzarla
> anche come istruzione, senza il ritorno del tasto premuto visto che non lo
> intercetti dopo.
>
> Sono (quasi) convinto che non c'entri nulla ma con questi pochi elementi
non
> so' cosa proporti...
Forse ho trovato una cosa che non va ma ancora non riesco... La form era
impostata con consenti modifiche su si, e consenti eliminazioni era
impostato a no...
Ho modificato modifiche = no e eliminazioni = si ma ora non mi fa scegliere
dalla combobox: anche se clicco su di un nome da eliminare non mi viene
selezionato...
HELPPPPPPP!!!!
Ciao e grazie comunque dei consigli che mi hai fornito sinora!


author: MA

text:
"Io" <I...@Io.it> ha scritto nel messaggio
news:2k2papF...@uni-berlin.de...

l'eliminazione è una modifica.
MAssimiliano


author: Marco Antonioli

text:
"Io" <I...@Io.it> wrote in message
news:2jfp0jF...@uni-berlin.de
> Ho creato una query di eliminazione che prende l'IDCliente da una Casella di
> Testo, va a cercare nella tabella Clienti il cliente con l'ID corrispondente
> e lo elimina. Il Cliente viene eliminato ma succede una cosa strana: il
> cliente con l'ID = 1 viene modificato con il nome cliente del cliente
> eliminato! Come č possibile??? Sto impazzendo HELPPPP...
> Ciao
Ho seguito il dialogo tra te e Sergio Mazza.
Ho l'impressione che ci sia del codice (evento dopo
eliminazione,aggiornamento.
corrente che parte a tua insaputa. Definisci un punto di interruzione
sull'evento click del bottone e segui con il debug.
Ciao
Marco
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


text:
"MA" <
mas...@massimilianoamendola.it
> ha scritto nel messaggio
news:EsXCc.9534$%l2....@news.edisontel.com...

Ho risolto!!! EVVIVA!!! Quando chiudo la maschera dico di non salvare il
record corrente (il primo) e cosi è tutto a posto!
Ciao


text:
"Marco Antonioli" <
in...@echovr.it
> ha scritto nel messaggio
news:036146dbf276b96d14e...@mygate.mailgate.org...
> "Io" <I...@Io.it> wrote in message
news:2jfp0jF...@uni-berlin.de
>
> > Ho creato una query di eliminazione che prende l'IDCliente da una
Casella di
> > Testo, va a cercare nella tabella Clienti il cliente con l'ID
corrispondente
> > e lo elimina. Il Cliente viene eliminato ma succede una cosa strana: il
> > cliente con l'ID = 1 viene modificato con il nome cliente del cliente
> > eliminato! Come è possibile??? Sto impazzendo HELPPPP...
> > Ciao
>
>
> Ho seguito il dialogo tra te e Sergio Mazza.
> Ho l'impressione che ci sia del codice (evento dopo
> eliminazione,aggiornamento.
> corrente che parte a tua insaputa. Definisci un punto di interruzione
> sull'evento click del bottone e segui con il debug.
> Ciao
> Marco
Ho risolto... non devo salvare il record corrente (che rimane il primo)
quando chiudo la form... Finalmente me ne sono accorto! comunque grazie a
tutti!
Ciao


title: ridimensionamento maschera

author: doubleg

text:
Salve a tutti. Ho un problemino... (oltre al caldo)
Ho creato un Db e, nel pannello comandi, ho inserito un'immagine che ha sfondo blu con un'ovale grigio nel quale ho posizionato le voci di comando, ma se viene aperto con uno schermo di dimensioni diverse le scritte dei comandi non si trovano pi� nella stessa posizione ed essendo blu come lo sfondo diventano parzialmente illeggibili. c'� un modo per far si che le scritte siano sempre nella stessa posizione?
Grazie in anticipo
--
Questo articolo e` stato inviato dal sito web
http://www.nonsolonews.it


title: ridimensionamento maschera

text:
On 26 Mag, 10:20, doubleg<
gual...@hotmail.it
> wrote:
> Salve a tutti. Ho un problemino... (oltre al caldo)
> Ho creato un Db e, nel pannello comandi, ho inserito un'immagine che ha sfondo blu con un'ovale grigio nel quale ho posizionato le voci di comando, ma se viene aperto con uno schermo di dimensioni diverse le scritte dei comandi non si trovano più nella stessa posizione ed essendo blu come lo sfondo diventano parzialmente illeggibili. c'è un modo per far si che le scritte siano sempre nella stessa posizione?
> Grazie in anticipo
>
> --
> Questo articolo e` stato inviato dal sito webhttp://
www.nonsolonews.it
prova a dare un'occhiata sul
www.sitocomune.com
 sezione forms faq
3.116
oppure potresti provare con un Docmd.Movesize gestendo le dimensioni
della form


title: Concatenamento caratteri

author: Giorgio A.

text:
Cortesemente un aiuto
Con un Command1 come da codice rilevo in TextBox1 delle stringhe e sono il
frutto di una selezione di vari ckBox (casella di controllo di spunta)
Posto il codice
Private Sub Command1_Click()
TextBox1= TextBox2.Value & " " & _
                            TextBox3.Value & " " & _
                            TextBox4.Value & " " & _
                           TextBox5.Value
End Sub
Il problema st� nel fatto che non riesco a controllare gli spazi da una
parola all'altra
Ho provato con la funzione Trim ma senza esito
esempio:
Se le spunto tutte mi ritrovo in TextBox1
12 12 12 12
se spunto textbox 2 e textbox4
mi ritrovo 12        12 con degli spazi di troppo
se spunto textbox 2 e textbox5
mi ritrovo 12                            12 con degli spazi ancora maggiori
Forse non � fattibile quello che chiedo.
Grazie 1000 e cordialit�
Giorgio


title: Concatenamento caratteri

author: Karl Donaubauer

text:
Giorgio A. wrote:
...
Vedi le risposte in mpioa. I multipost sono una cosa brutta:
http://faq.news.nic.it/wiki/ItNewsAiutoBase#head-e8c6e2928adb186ba888142038d7d0474a156810
--
cu
Karl
*********
Access FAQ:
www.donkarl.com/it


title: Campo "untima modifica"

author: Simone

text:
Salve,
ci ho provato in vari modi ma non ci riesco... ci sto perdendo la testa!!!
1. ho una maschera con i dati di un anagrafica
2. ma maschera contiene anche il campo UltimaModifica formato DataOra
3. voglio che all'uscita della maschera se č stato cambiato un qualsiasi
campo venga aggiornato il campo DataOra con la data corrente
Ho provato ad intercetare l'evento AfterUpdate della machera in questo modo:
Private Sub Form_AfterUpdate()
Me.UltimaModifica = Date
End Sub
ma se inserisco questo codice i pulsanti anche se viene aggiornato il campo
di spostamento tra record non funzionano piů.
Qualcuno mi aiuta?
Grazie
imone


title: Campo "untima modifica"

author: Antonio Biso

text:
"Simone" <
sp1...@katamail.com
> ha scritto nel messaggio
news:ebvaj1$2g4s$1...@newsreader1.mclink.it...

Prova su evento su chiusura della maschera e ci metti
if me.dirty then Me.UltimaModifica = Date
Antonio


title: Campo "untima modifica"

text:
Simone ha scritto:
> Salve,
> ci ho provato in vari modi ma non ci riesco... ci sto perdendo la testa!!!
>
> 1. ho una maschera con i dati di un anagrafica
> 2. ma maschera contiene anche il campo UltimaModifica formato DataOra
> 3. voglio che all'uscita della maschera se è stato cambiato un qualsiasi
> campo venga aggiornato il campo DataOra con la data corrente
>
> Ho provato ad intercetare l'evento AfterUpdate della machera in questo modo:
>
> Private Sub Form_AfterUpdate()
> Me.UltimaModifica = Date
> End Sub
>
> ma se inserisco questo codice i pulsanti anche se viene aggiornato il campo
> di spostamento tra record non funzionano più.
>
> Qualcuno mi aiuta?
>
> Grazie
>
> imone
Private Sub campo1_AfterUpdate()
Me.UltimaModifica = Date
End Sub
Private Sub campo2_AfterUpdate()
Me.UltimaModifica = Date
End Sub
Private Sub campo3_AfterUpdate()
Me.UltimaModifica = Date
End Sub
Private Sub campoN_AfterUpdate()



title: Campo "untima modifica"

text:
"Antonio Biso" <ch...@NOSPAMetruria.net> ha scritto nel messaggio
news:nAGEg.72757$zy5.1...@twister1.libero.it...
> "Simone" <
sp1...@katamail.com
> ha scritto nel messaggio
> news:ebvaj1$2g4s$1...@newsreader1.mclink.it...
>
> Prova su evento su chiusura della maschera e ci metti
> if me.dirty then Me.UltimaModifica = Date
E se invece di chidere la maschera passo al record successivo?


title: Campo "untima modifica"

text:
"BR1" <
bona...@gmail.com
> ha scritto nel messaggio
news:1155741172.3...@74g2000cwt.googlegroups.com...
Private Sub campoN_AfterUpdate()
Me.UltimaModifica = Date
End Sub
La maschera ha circa una trentina di campi, mi sembra unasoluzione
macchinosa, dovrei intercettare l'after update di tutti e 30 i campi.
Hai un'altro suggerimento?


title: Campo "untima modifica"

text:
Simone ha scritto:

con i moduli di classe è possibile farlo in automatico, ma non
usandoli non so bene come si fa, prova a sviluppare il codice seguente,
e se hai problemi dovresti chiedere a Baraldi.
Option Compare Database
Option Explicit
Private WithEvents controllo As TextBox
Public Sub associa(tuocontrollo As TextBox)
    Set controllo = tuocontrollo
    controllo.afterupdate = "[Event Procedure]"
End Sub
Private Sub controllo_afterupdate()



title: Campo "untima modifica"

text:
Simone ha scritto:
> Salve,
> ci ho provato in vari modi ma non ci riesco... ci sto perdendo la testa!!!
>
> 1. ho una maschera con i dati di un anagrafica
> 2. ma maschera contiene anche il campo UltimaModifica formato DataOra
> 3. voglio che all'uscita della maschera se è stato cambiato un qualsiasi
> campo venga aggiornato il campo DataOra con la data corrente
>
> Ho provato ad intercetare l'evento AfterUpdate della machera in questo modo:
>
> Private Sub Form_AfterUpdate()
> Me.UltimaModifica = Date
> End Sub
>
> ma se inserisco questo codice i pulsanti anche se viene aggiornato il campo
> di spostamento tra record non funzionano più.
>
> Qualcuno mi aiuta?
>
> Grazie
>
> imone
Hai sbagliato evento...!
Leggi questo:
http://www.alessandrobaraldi.it/DettaglioFaq.asp?IdFAQ=112
@Alex


title: Campo "untima modifica"

text:
"Simone" <
sp1...@katamail.com
> ha scritto nel messaggio
news:ebvdud$2grj$1...@newsreader1.mclink.it...

Evento On Current
Antonio


title: Sottomaschera appuntamenti

author: Pietro Muzii

text:
Ho creato un database così costituito:
Tabella anagrafica contente:ID (chiave primaria), Cognome, Nome, Indirizzo, Com_res, Dt_nascita, Com_nascita ecc..
Tabella vaccinazioni : ID (chiave primaria) , Data_vaccinazione, Dose, Tipo_vaccinazione, Lotto, Id_anagrafica. Con relazione uno-a-molti.
Ho poi creato una maschera Dettagli_anagrafica con una sottomaschera-vaccinazioni.
Così per ogni utente posso visualizzare l’anagrafica con le relative vaccinazioni.
Nella medesima scheda vorrei inserire un’altra sotto-maschera chiamata Appuntamenti così da visualizzare solo gli appuntamenti dell’utente selezionato.
Tutti gli appuntamenti andranno nella tabella Appuntamenti, e per mezzo di una query potranno essere raggruppati per giorno.
Per realizzare quanto desiderato ho trovato in rete un file appuntamenti.mdb che fa proprio al caso mio.
http://www.dorianovillaverla.it/joomla/index.php?option=com_rokdownloads&view=file&task=download&id=83%3Aappuntamenti&Itemid=27

La particolarità di questo file è che nel menù a tendina della campo “ora” della maschera appuntamenti vengono visualizzati soltanto gli orari liberi del giorno selezionato. Mi sembra un sistema molto utile.
Ho riprodotto separatamente il database appuntamenti secondo le mie necessità, e tutto ha funzionato a dovere.
Successivamente,  per evitare di scrivere ogni volta Nome, Cognome, N° di telefono dell’utente, ho cercato di inserire la sottomaschera appuntamenti nella scheda dettagli anagrafica (con relazione uno-a-molti).
Per inserire l’appuntamento di un utente avrei dovuto selezionare la maschera dettagli anagrafica dell’utente interessato ed inserire data, ora, motivo nella sottomaschera appuntamenti.
Quando ho provato ad inserire alcuni appuntamenti ho visto che il menù a tendina della campo “ora” della sottomaschera appuntamenti  non é più selettivo e mi visualizza sempre TUTTI gli orari non permettendomi di vedere quali sono quelli liberi e quali già impegnati.  Quando inserisco un orario che  già presente mi appare l’avviso “Hai cercato di duplicare una chiave primaria” e quindi non mi permette di salvare quanto inserito.
Nel campo “Ora” della sottomaschera appuntamenti ho inserito lo stesso codice presente nella maschera appuntamenti del file demo.
Il codice è il seguente:
SELECT Q_Agenda_Ore.Orario FROM Q_Agenda_Ore LEFT JOIN Q_Ore_Occupate ON Q_Agenda_Ore.Orario=Q_Ore_Occupate.Ora WHERE (((Q_Ore_Occupate.Id) Is Null));

Perché nella maschera_appuntamenti funziona ma quando lo inserisco nella sottomaschera_appuntamenti non funziona più?

Spero di essermi spiegato.
Grazie anticipato per i suggerimenti
Pietro


title: Sottomaschera appuntamenti

author: Fabrizio Alessandri

text:
Dipende da come è strutturata la maschera degli appuntamenti.
Evidentemente c'è un conflitto nelle relazioni uno-molti.
Puoi risolvere facilmente utilizzando quella degli appuntamenti.
Su di essa posizioni una combo che ha origine dalla tabella angrafica_utente e prenderai il campo ID e il campo del nome. Sempre nella combo sceglierai di visualizzare il nome, ma attribuirai al campo della tabella appuntamenti, l'ID.
Ad ogni appuntamento attribuirai il nome dalla combo.
Ciao.


title: Sottomaschera appuntamenti

text:
Ti ringrazio molto.
La tabella anagrafica_utente contiene circa 3500 record. Posso fare una combobox con un menù così grande?
Intanto ho creato una query dalla tabella anagrafica_utente con il campo ID ed un campo dove sono concatenati Cognome_nome. Ora provo a fare la combo avente origine dalla query.
Grazie ancora.



title: Sottomaschera appuntamenti

text:
Il giorno domenica 6 maggio 2012 09:10:06 UTC+2, Pietro Muzii ha scritto:
> La tabella anagrafica_utente contiene circa 3500 record. Posso fare una combobox con un menù così grande?
> Intanto ho creato una query dalla tabella anagrafica_utente con il campo ID ed un campo dove sono concatenati Cognome_nome. Ora provo a fare la combo avente origine dalla query.
> Grazie ancora.
Come da te osservato, una combo da 3.500 records è sicuramente tanto. Dipende da cosa vuoi ottenere. L'ideale sarebbe creare un filtro, ma solitamente gli utenti desiderano poter visualizzare. Tieni solo presente che al caricamento della form, influirà sui tempi.

F.


title: Sottomaschera appuntamenti

text:
Ho abbandonato l'idea di inserire una combobox convinto che oltre a rallentare permarrebbero i problemi di  conflitto.
Anche per inserire un filtro penso debba necessariamente istaurarsi una relazione tra tabelle.
Ho deciso allora di modificare il demo_appuntamenti inserendo semplicemente un campo per l’ ID_anagrafica da compilare manualmente (oltre ovviamente data_appuntamento, ora_appuntamento, e motivo_appuntamento).
Lavorando abitualmente sulla maschera anagrafica non mi costa nulla leggere il valore ID di un utente ed inserirlo manualmente nella maschera appuntamenti che apro in finestra.
Fin qui, procedendo così, il sistema del menù a tendina delle sole ore disponibili funziona.
Quando, (per recuperare Cognome, Nome, Data di Nascita, Telefono,) vado a collegare l’ID_anagrafica della maschera appuntamenti con l’ID_anagrafica della maschera_anagrafica il sistema del menù a tendina perde la capacità di mostrare solo le ore disponibili.
Non mi sembra possano esserci altri sistemi poiché comunque si devono instaurare delle relazioni che inevitabilmente confliggono.  O quantomeno non sono alla mia portata.


title: filtrare record con un ampo in carticolare vuoto

text:
ciao a tutti,
forse mi sto perdendo in un bicchier d'acqua ma non riesco a realizzare
quanto segue:
ho una maschera (realizzata su una semplicissima query) con visualizzazione
a maschere continue di dati di pagamenti...
in particolare la maschera visualizza
dataoperazione/cliente/agente/dataversamento
vorrei inserire un interruttore che:
se premuto mi visualizza solo i pagamenti non effettuati (in cui il campo
dataversamento è vuoto)
se rilasciato mi visualizza tutti i dati
ci sto smanettando da questo pomeriggio senza venirne a capo...
ringrazio chiunque mi illuminerà
Nicola


text:

Rendi pubblico il fatto che hai postato lo stesso messaggio su più NG,
la cosa può essere seguita da tutti.
@Alex


title: creare delle cartelle con il runtime di access

text:
al termine del processo di installazione del runtime di access xp dovrei
creare in quel percorso delle cartelle e copiargli dentro dei file, sapete
se la creazione pacchetti permette questo?
Grazie.


author: Jonathan Canova

text:
"Simba883" <
simb...@libero.it
> ha scritto nel messaggio
news:bjcjdr$h99$1...@lacerta.tiscalinet.it...
> al termine del processo di installazione del runtime di access xp dovrei
> creare in quel percorso delle cartelle e copiargli dentro dei file, sapete
> se la creazione pacchetti permette questo?
Che sappia, no. Ma sarei felice di essere smentito :-)
--
Jonathan Canova
www.aladinoinformatica.com


author: AEOM

text:
"Simba883" <
simb...@libero.it
> ha scritto nel messaggio
news:bjcjdr$h99$1...@lacerta.tiscalinet.it...

Forse non ho capito bene....
durante la creazione del pacchetto puoi aggiungere tutti i file che vuoi e
impostare a tuo piacimento la cartella dove metterlo.
Non ho capito dov'è il problema
ciao, AEOM


text:
> >
>
> Forse non ho capito bene....
> durante la creazione del pacchetto puoi aggiungere tutti i file che vuoi e
> impostare a tuo piacimento la cartella dove metterlo.
> Non ho capito dov'è il problema
>
> ciao, AEOM
>
allora il mio programma è strutturato in questo modo, ho una cartella
principale e poi o delle sotto cartelle una che si chiama audio e contiene
dei file wave una che si chiama img che contiene immagini ecc...
come gli dico al runtime di crearmi la struttura esatta con tutte le
sottocartelle e di ficcarci dentro i relativ file, wav nell'audio e .jpg
nella img?
spero di essere stato chiaro


text:
"Simba883" <
simb...@libero.it
> ha scritto nel messaggio
news:bjdai5$tv1$1...@lacerta.tiscalinet.it...
> > >
> >
> > Forse non ho capito bene....
> > durante la creazione del pacchetto puoi aggiungere tutti i file che vuoi
e
> > impostare a tuo piacimento la cartella dove metterlo.
> > Non ho capito dov'č il problema
> >
> > ciao, AEOM
> >
>
> allora il mio programma č strutturato in questo modo, ho una cartella
> principale e poi o delle sotto cartelle una che si chiama audio e contiene
> dei file wave una che si chiama img che contiene immagini ecc...
> come gli dico al runtime di crearmi la struttura esatta con tutte le
> sottocartelle e di ficcarci dentro i relativ file, wav nell'audio e .jpg
> nella img?
>
> spero di essere stato chiaro
>
>
supponi di dover creare la sottocartella audio...creati un file audio.txt...
quando crei il pacchietto e arrivi alla schermata dove scegli i file da
installare selezioni audio.txt alla schemata successiva chiamata modifica
percorsi di installazione, ti chiede dove i file selezionati vano creati,
nel caso di audio.txt ti propone $(appPath) tu cambialo con $(appPath)\audio
ti creera in automatico la cartella che ti serve.... ma scusa c'č pure
scritto che si fa cosě sulla parte superiore della maschera!!!
ciao, AEOM


text:
ti creera in automatico la cartella che ti serve.... ma scusa c'č pure
> scritto che si fa cosě sulla parte superiore della maschera!!!
>
> ciao, AEOM
nno ci avevo fatto caso AOEM tu non hai mai delle sviste ;?


text:
"Simba883" <
simb...@libero.it
> ha scritto nel messaggio
news:bjg8ta$28o$1...@lacerta.tiscalinet.it...

cos'hai la canalis che ti gira nuda in ufficio?
scherzo, ciao, aeom


title: Query difficile, per favore aiuto.

author: Pietro Favaro

text:
Vi espongo il mio problema:
1^  Tabella: Clienti
---campi: IDCliente, Descrizione, ...
2^ Tablella: Articoli
---campi: IDArticolo, descrizione, ...
3^  Tabella: Listini:
---campi: IDCliente, IDArticolo, Prezzo, ...
4^ Tabella: TestataOrdine:
---campi: IDOrdine, IDCliente, ...
5^ Tabella: RigheOrdine:
---campi: IDOrdine, IDarticolo, Quantita', Prezzo, ...
Il problema si pone in fase di inserimento dell'ordine, una maschera
iniziale prevede la selezione del cliente, della data ed altre informazioni
classiche. Da qui si dovrebbe passare all'inserimento dell'ordine in una
maschera che dovrebbe essere basata su di una query composta dai seguenti
campi:
---Articolo (descrizione), Quantita', Prezzo
Nella maschera dovranno essere visualizzati tutti gli articoli presenti nel
listino del cliente selezionato in testata ovviamente con quantita' a zero
nel caso non vi sia alcun inserimento, altrimenti con le quantita'
preventivamente inserite.
Come procedere: (da qui in poi ipotizzo perche' sono arenato)
1) prima query selettiva nella tab listini in base al codice cliente (in
ogni caso come faccio a fare una query condizionata dal codice cliente?)
2) seconda query (o forse ne basta una sola) tra i record precedentemente
selezionati in tab listini ed
    eventuali quantita' inserite nelle righe d'ordine in base al IDOrdine
(stesso problema di query1)
3) in ogni caso, come abbinare le info delle righe ordine alle info del
listino del cliente?
Se ho scritto cagate insultatemi pure, ma aiutatemi altrimenti mi mangio il
PC.
(Non conosco molto bene access, si sara' capito, vengo dalla vecchia gloria
del clipper e per questo sono un po' castrato mentalmente)
Grazie, Pietro
pie...@distro.it


title: Query difficile, per favore aiuto.

author: Stefano Bettini

text:
"Pietro Favaro" <
pie...@distro.it
> wrote in message
news:91pt2r$i1g$1...@fe1.cs.interbusiness.it...
> Vi espongo il mio problema:
>
> 1^  Tabella: Clienti
> ---campi: IDCliente, Descrizione, ...
>
> 2^ Tablella: Articoli
> ---campi: IDArticolo, descrizione, ...
>
> 3^  Tabella: Listini:
> ---campi: IDCliente, IDArticolo, Prezzo, ...
<caldo suggerimento>
Vacca boia, che brutta 'sta tabella così!
Ti *costringe* a fare un listino per ogni utente, sarebbe molto più
flessibile
una tabella listini a sè stante ed un puntatore apposito sul cliente
(potresti
riutilizzare i listini, fare un "listino standard" ecc. ecc).
E dovrebbe sicuramente sviluppata in testata/righe...
</caldo suggerimento>
> 4^ Tabella: TestataOrdine:
> ---campi: IDOrdine, IDCliente, ...
>
> 5^ Tabella: RigheOrdine:
> ---campi: IDOrdine, IDarticolo, Quantita', Prezzo, ...
>
> Il problema si pone in fase di inserimento dell'ordine, una maschera
> iniziale prevede la selezione del cliente, della data ed altre
informazioni
> classiche. Da qui si dovrebbe passare all'inserimento dell'ordine in una
> maschera che dovrebbe essere basata su di una query composta dai seguenti
> campi:
>
> ---Articolo (descrizione), Quantita', Prezzo
>
> Nella maschera dovranno essere visualizzati tutti gli articoli presenti
nel
> listino del cliente selezionato in testata ovviamente con quantita' a zero
> nel caso non vi sia alcun inserimento, altrimenti con le quantita'
> preventivamente inserite.
???
Se sei in fase di inserimento che quantità potrebbero esserci mai?
> Come procedere: (da qui in poi ipotizzo perche' sono arenato)
> 1) prima query selettiva nella tab listini in base al codice cliente (in
> ogni caso come faccio a fare una query condizionata dal codice cliente?)
Un cliente dovrebbe avere un solo listino (testata listini), eventualmente
un articolo potrebbe avere prezzi diversi a seconda della quantità (righe
listini)
In ogni caso qui non userei una query, andrei a beccare il listino corretto
per quella
combinazione articolo/quantità solo un attimo prima della scrittura della
riga
(BeforeUpdate)...
> 2) seconda query (o forse ne basta una sola) tra i record precedentemente
> selezionati in tab listini ed
>     eventuali quantita' inserite nelle righe d'ordine in base al IDOrdine
> (stesso problema di query1)
Come sopra.
> 3) in ogni caso, come abbinare le info delle righe ordine alle info del
> listino del cliente?
Bhè, una funzioncina VB per quanto semplice-semplice dovrai pure scriverla,
no?
Fare tutto con delle query mi pare una mezza follia....
> Se ho scritto cagate insultatemi pure, ma aiutatemi altrimenti mi mangio
il
> PC.
> (Non conosco molto bene access, si sara' capito, vengo dalla vecchia
gloria
> del clipper e per questo sono un po' castrato mentalmente)
Alla fin fine non c'è poi questa grande differenza!
Bye, Ste


title: Query difficile, per favore aiuto.

text:
Meraviglia,
sei il primo che mi porta lontano dalle query e mi fa usare il codice, che
quantomeno riesco a stendere bene.
/*
Il suggerimento del listino l'avevo gia' preso in considerazione, ma la
tipologia del prodotto fa si' che non vi siano o quasi prezzi uguali per
differenti clienti, quindi inutile il passaggio dal listino a se' stante.
*/
Come mi suggerisci di procedere?
1) faccio una tabella temporanea, RigheOrdine:
---campi: IDOrdine, IDArticolo, Quantita', Prezzo, ...
che riempio subito prima di andare in inserimento ordine pescando l'articolo
ed il prezzo dal listino per quel cliente ?
nel pratico:
    FindFirst ( IDCliente in Listini)
    ciclo finche' codice cliente = IDCliente
        AddNewRec ( in RigheOrdine)
    fine ciclo
Potrebbe andare?
Puoi mica scrivere un esempio di codice anche semplice?
Pietro Favaro


title: Query difficile, per favore aiuto.

text:
"Pietro Favaro" <
pie...@distro.it
> wrote in message
news:91q7l3$ahf$1...@fe2.cs.interbusiness.it...
> Meraviglia,
> sei il primo che mi porta lontano dalle query e mi fa usare il codice, che
> quantomeno riesco a stendere bene.
>
Bhè, per fare un'applicazione che ci voglia del codice è matematico!
> /*
> Il suggerimento del listino l'avevo gia' preso in considerazione, ma la
> tipologia del prodotto fa si' che non vi siano o quasi prezzi uguali per
> differenti clienti, quindi inutile il passaggio dal listino a se' stante.
> */
>
Mmmmm, io comunque tornerei sui miei passi, non si può mai sapere
un domani cosa dovrà fare la tua applicazione ed è comunque sempre
meglio (potendo) scegliere la strada + flessibile.
> Come mi suggerisci di procedere?
> 1) faccio una tabella temporanea, RigheOrdine:
> ---campi: IDOrdine, IDArticolo, Quantita', Prezzo, ...
>
> che riempio subito prima di andare in inserimento ordine pescando
l'articolo
> ed il prezzo dal listino per quel cliente ?
>
> nel pratico:
>
>     FindFirst ( IDCliente in Listini)
>     ciclo finche' codice cliente = IDCliente
>
>         AddNewRec ( in RigheOrdine)
>
>     fine ciclo
>
> Potrebbe andare?
O mamma, e perchè mai una cosa del genere?
Dunque, *il* modo giusto non esiste, dipende da quello che si vuole
ottenere....
Ipotizziamo che la maschera di inseriemento ordini sia suddivisa in 3 aree
fondamentali,
1) intestazione
   contiene i dati di testata dell'ordine, il controllo fondamentale è
sicuramente
   la "combo" sui clienti
2) corpo
   contiene le righe-ordini correnti
3) piede
   contiene i totali dell'ordine (imponibile, aliquota iva, imposta, ecc.
ecc.)
   I totali ovviamente non saranno modificabili bensì verranno aggiornati
automaticamente
   ad ogni modifica/cancellazione/inseriemento di una riga.
Suggerimenti:
a) nella combo del cliente metti n colonne nascoste su cui memorizzare tutti
i dati
della tabella clienti che ti occorrono (listino, trasporto ecc. ecc.), così
non dovrai più
preoccuparti di aprire la tabella clienti
b) il corpo fallo in due pezzi, uno superiore contenente una list-box che
visualizzerà
tutte le righe-ordine in essere (per display/selezione/cancellazione), uno
inferiore
consistente di un piedino su cui  materialmente scrivere (utilizzato in fase
di inseriemento/aggiornamento).
c) Sul piedino del corpo ovviamente dovrai avere una combo caricata con gli
articoli
disponibili per il cliente (la basi su una query parametrica o aggiorni la
record-source
al volo da VB ad ogni cambio-cliente sulla maschera principale)
d) selezionato l'articolo -> input text-box per la quantità
e) sul tasto ok del piedino ovviamente provvedereai a scrivere il record
righe-ordini
(ovviamente stiamo parlando di una mascherina di tipo unbound),
il cliente ce l'hai sulla maschera principale (me.parent.IDCLiente o
qualcosa del genere),
il codice articolo ce l'hai sulla maschera corrente, la quantità pure;
apriti un bel recordset
"volante" che ti calcoli l'importo corretto recuperando i dati dalla tabella
listini, scrivi
la riga ed aggiorna la parte superiore del corpo (me.ListaRighe.Requery())
in modo che rifletta
l'inseriemnto/modifica appena fatta....
f) se hai fatto correttamente i controlli calcolati sul piede generale
questi si aggiorneranno
in automatico (c'è un discreto esempio sul db Northwind)
Voilà.
> Puoi mica scrivere un esempio di codice anche semplice?
Fammi sapere se quanto ho scritto ti suona familiare, bisogna capire
quanta dimestichezza hai coi recordset...
Bye, Ste


title: Query difficile, per favore aiuto.

text:
> 1) intestazione
>
>    contiene i dati di testata dell'ordine, il controllo fondamentale è
> sicuramente
>    la "combo" sui clienti
OK, fin qui ci siamo gia'
> 2) corpo
>
>    contiene le righe-ordini correnti
Il problema e' qui:
in genere il listino del cliente prevede 4 o 5 articoli a lui riservati,
pertanto all'entrata nel corpo ordine bisognerebbe presentare tutti gli
articoli previsti dal listino (ovviamente senza quantita' in ordine) e non
una listbox vuota con l'inserimento di un articolo alla volta.
per capirci:
---intestazione: Cliente: XXX ddddddddddd
                           Numero ordine: XXXXX, del: XX/XX/XX
---corpo:
    articolo                 q.ta'          prezzo
    ddddddddddd                       1.500
    ddddddddddd                       1.000
    ddddddddddd                       1.200
    ddddddddddd                          900
(spero renda l'idea)
....
Come procedo?


title: Query difficile, per favore aiuto.

author: Roberto dal portatile

text:
"Pietro Favaro" <
pie...@distro.it
> ha scritto nel messaggio
news:91pt2r$i1g$1...@fe1.cs.interbusiness.it...

Visto che la struttura delle tue tabelle è sostanzialmente esatta,
aggiungiamo un paio di campi, facciamo qualche precisazione, lavoriamo un pò
sul modo di mettere le tabelle in relazione fra di loro e usiamo un pò di
autocomposizione ricerca. Insomma lavoriamo di più sulle tabelle per creare
alcuni automatismi di Access e vedrai che con una piccola query, una
maschera ed una sottomaschera risolviamo il tuo problema.
Cominciamo con ripassare in rassegna le tue tabelle.
Clienti
-------
IDCliente            Contatore e chiave primaria
RagioneSociale    Testo
ecc. ecc.
Niente da commentare
----------------------------------------------
Articoli
--------
IDArticolo            Contatore e chiave primaria
Descrizione           Testo
ecc. ecc.
Niente da commentare
----------------------------------------------
Listini
------
IDListino            Contatore e chiave primaria
IDCliente            Numerico
IDArticolo          Numerico
Prezzo                Numerico
ecc. ecc.
Ho aggiunto il campo IDListino solo per adoperarlo come chiave primaria,
altrimenti avresti dovuto dichiararti come chiave primaria l'insieme dei due
campi IDCLiente e IDArticolo, con qualche piccola complicanza in più nei
passaggi successivi.
Per il campo IDCliente esegui l'Autocomposizione Ricerca... basandola sulla
tabella Clienti; ciò ti permetterà di memorizzare il codice cliente ma di
visualizzare automaticamente nel controllo delle maschere associato a questo
campo la ragione sociale del cliente e non il suo codice (tutto ciò senza
ricorrere esplicitamente a delle query, che mi sembra non sono il tuo
cavallo di battaglia); così facendo creerai inoltre implicitamente una
relazione tra la la tabella Clienti e la tabella Listini.
Per lo stesso motivo indicato nel precedente paragrafo, esegui
l'Autocomposizione Ricerca... anche per il campo IDArticolo e basala sulla
tabella Articoli.
-----------------------------------------
TestataOrdine
---------------
IDOrdine                Contatore e chiave primaria
IDCliente                Numerico
DataOrdine             Data/ora
ecc. ecc.
Per il campo IDCliente esegui l'Autocomposizione Ricerca... basandola sulla
tabella Clienti.
--------------------------------------------
RigheOrdini
------------
IDRigheOrdini        Contatore e chiave primaria
IDOrdine                Numerico
IDArticolo              Numerico
Prezzo                    Numerico
Quantità                 Numerico
ecc. ecc.
Ho aggiunto il campo IDRigheOrdine per lo stesso motivo per cui
precedentemente ho aggiunto il campo IDListino.
Per il campo IDAticolo esegui l'Autocomposizione Ricerca... basandola sulla
tabella Articoli.
-----------------------------------------------
Ora che abbiamo finito con le tabelle, sistemiamo il modo in cui sono in
relazione fra di loro.
Apri la finestra Relazioni: dovresti vedere le tue cinque tabelle con già
tracciate le relative relazioni; aggiungi per tutte le relazioni l'itegrità
referenziale.
Crea una relazione uno-a-molti tra la tabella TestateOrdine e la tabella
RigheOrdini, aggiungendo anche in questo caso l'integrità referenziale.
Ora che le relazioni stanno a posto, creati una query (chiamala Query1) che
abbia il seguente codice SQL:
SELECT Listini.IDArticolo, Articoli.Descrizione, Listini.Prezzo,
Listini.IDCliente
FROM Articoli INNER JOIN Listini ON Articoli.IDArticolo = Listini.IDArticolo
WHERE (((Listini.IDCliente)=[Forms]![Maschera]![IDCliente]));
Questa è l'unica query che devi crearti esplicitamente.
Ora tocca alle maschere.
Creati una maschera (chiamala Sottomaschera) che abbia come Origine record
la tabella RigheOrdine; deve avere una visualizzazione a Maschere continue;
dovrà contenere, nell'ordine, i controlli IDArticolo, Prezzo e Quantità
associati ai relativi campi della tabella RigheOrdine.
Con la struttura di Sottomaschera aperta indica Query1 come "Origine riga"
del controllo IDArticolo (dovresti vederlo come casella combinata).
Sempre per il il controllo IDArticolo, nella sezione Formato delle
Proprietà, indica 3 come Numero colonne e come Larhezza colonne scrivi
0cm;2,54cm,0cm ovvero dichiara a zero la lunghezza della prima e ultima
colonna.
A fronte dell'evento "Dopo aggiornamento" del controllo IDArticolo genera il
seguente codice VBA:
Private Sub IDArticolo_AfterUpdate()
Me!Prezzo = Me!IDArticolo.Column(2)
End Sub
Così facendo, scegliendo l'articolo, otterrai riempito automaticamente il
controllo Prezzo.
A questo punto creati una seconda maschera (chiamala Maschera) che abbia
come Origine record la tabella TestataOrdine; deve avere una visualizzazione
a Maschera singola; dovrà contenere, nell'ordine, i controlli IDOrdine,
IDCliente e DataOrdine associati ai relativi campi della tabella
TestataOrdine.
In Maschera inserisci, tramite l'Autocomposizione Controllo, un controllo
sottomaschera nel quale chiedi di inserire la maschera Sottomaschera di cui
sopra; indica che vuoi vedere solamente i record che hanno lo stesso
IDCliente di Maschera.
A fronte dell'evento "Dopo aggiornamento" di Maschera genera il seguente
codice VBA:
Private Sub Form_Current()
If Not IsNull(Me!IDCliente) Then
[Forms]![Maschera]![Sottomaschera]![IDArticolo].Requery
End If
End Sub
A fronte dell'evento "Dopo aggiornamento" del controllo IDCliente (che
dovresti vedere come casella combinata) genera il seguente codice VBA:
Private Sub IDCliente_AfterUpdate()
[Forms]![Maschera]![Sottomaschera]![IDArticolo].Requery
End Sub
Il gioco è fatto.
Apri Maschera, scegli il cliente dalla relativa casella combinata, digita la
data, spostati nella casella combinata dell'articolo posta nella
sottomaschera e scegli l'articolo di cui vuoi digitare la quantità, spostati
sul controllo Quantità e digitala; come vedrai per sceglire l'articolo ti si
presenterà un elenco contenente gli articoli contenuti nel listino di quel
cliente e il prezzo comparirà automaticamente, e sarà appunto quello
relativo a quel prodotto per quel cliente.
Dopo sta faticata, spero che sia quello che ti serviva.
Facci sapere.
Buon Natale.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://members.xoom.it/it_db_access/
---------------------------------------------


title: Query difficile, per favore aiuto.

text:
"Pietro Favaro" <
pie...@distro.it
> wrote in message
news:91qedr$juc$1...@fe1.cs.interbusiness.it...
> Il problema e' qui:
> in genere il listino del cliente prevede 4 o 5 articoli a lui riservati,
> pertanto all'entrata nel corpo ordine bisognerebbe presentare tutti gli
> articoli previsti dal listino (ovviamente senza quantita' in ordine) e non
> una listbox vuota con l'inserimento di un articolo alla volta.
> per capirci:
>
> ---intestazione: Cliente: XXX ddddddddddd
>                            Numero ordine: XXXXX, del: XX/XX/XX
>
> ---corpo:
>     articolo                 q.ta'          prezzo
>     ddddddddddd                       1.500
>     ddddddddddd                       1.000
>     ddddddddddd                       1.200
>     ddddddddddd                          900
>
> (spero renda l'idea)
> ....
>
> Come procedo?
>
>
OK, tutto chiaro.
In questo caso allora la soluzione obbligata è sicuramente l'utilizzo di una
tabella "temporanea" come avevi già proposto tu, sulla selezione del cli
la tronchi/ricrei ciclando in parole povere sulle righe dei listini; sulla
conferma
te la ricicli e per ogni riga con quantità valorizzata ti crei una
riga-ordine.
In questo caso allora l'applicazione si presta molto ad essere risolta con
un pesante utilizzo di sql da codice, ti facilita sicuramente la vita e
dovrebbe rendere
il tutto un poco più performante; con due docmd.runsql dovresti riuscire
ad troncare/inizializzare la tabella temporanea e lo stesso sulla conferma
(accodamento a righe-ordini e troncamento).
Ovviamente sarà difficile riuscire a fare inserimento/variazione con una
sola
maschera!
Bye, Ste


title: Query difficile, per favore aiuto.

author: Roberto da casa

text:
Quello che è qui di seguito è il messaggio che ho ricevuto da Pietro Favero
e la relativa mia risposta
-------------------------------------------------
> Ti ringrazio per l'aiuto, ho corretto alcune cosucce grazie ai tuoi
> consigli.
> Il problema principale e' qui:
>
> > Creati una maschera (chiamala Sottomaschera) che abbia come Origine
record
> > la tabella RigheOrdine; deve avere una visualizzazione a Maschere
> continue;
> > dovrà contenere, nell'ordine, i controlli IDArticolo, Prezzo e Quantità
> > associati ai relativi campi della tabella RigheOrdine.
> > Con la struttura di Sottomaschera aperta indica Query1 come "Origine
riga"
> > del controllo IDArticolo (dovresti vederlo come casella combinata).
> > Sempre per il il controllo IDArticolo, nella sezione Formato delle
> > Proprietà, indica 3 come Numero colonne e come Larhezza colonne scrivi
> > 0cm;2,54cm,0cm ovvero dichiara a zero la lunghezza della prima e ultima
> > colonna.
>
> Questo l'avevo gia' provato grazie anche all'esempio di NorthWind,
> nell'applicazione che sto' facendo, visto che gli articoli abbinati ad un
> cliente sono circa 5/6 per cliente, volevo che entrando nella
sottomaschera
> di inserimento quantita' ordinate si presentassero gia' tutti gli articoli
> di quel cliente, cosi' l'utente doveva solo spostarsi sulle righe degli
> articoli ed inserire le quantita'.
> Da qui il preblema di avere una tabella temporanea, o magari una soluzione
> piu' avanti che potresti avere tu. In entrambi i casi non so come fare!
> Ri-Grazie, Pietro.
>
Sai benissimo che avremmo dovuto continuare il dialogo nel NG, ma visto che
è Natale.....
Mi era sfuggito che per te fosse essenziale precompilare la sottomaschera;
non è un problema e secondo me non è necessario passare per una tabella
temporanea.
Alla soluzione che ti avevo dato con il mio messaggio precedente apporta le
seguenti modifiche:
Sottomaschera
---------------------
Ai controlli IDArticolo e Prezzo della maschera Sottomaschera setta la
proprietà Abilitato a NO, la proprietà Bloccato a SI e la proprietà
Seleziona con tabulazione a NO.
Elimina il codice VBA che hai generato a fronte dell'evento "Dopo
aggiornamento" del controllo IDArticolo.
Maschera
-------------
A fronte dell'evento "Su corrente" di Maschera genera il seguente codice
VBA:
Private Sub Form_Current()
If Not IsNull(Me!IDCliente) Then
    [Forms]![Maschera]![Sottomaschera]![IDArticolo].Requery
End If
End Sub
che nel messaggio precedente erroneamente ti avevo detto di generare a
fronte dell'evento "Dopo aggiornamento" di Maschera.
A fronte dell'evento "Dopo aggiornamento" del controllo IDCliente ora genera
(invece di quello che ti ho scritto nel messaggio precedente) il seguente
codice VBA:
Private Sub IDCliente_AfterUpdate()
' *** Salva il record corrente ***
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Dim dbMio As Database
Dim rstListino As Recordset
Dim qdfMio As QueryDef
Dim rstRighe As Recordset
' *** Apri il database e i due recordset ***
Set dbMio = CurrentDb
Set qdfMio = dbMio.QueryDefs("Query1")
qdfMio.Parameters("[Forms]![Maschera]![IDCliente]") = Me!IDCliente
Set rstListino = qdfMio.OpenRecordset
Set rstRighe = dbMio.OpenRecordset("RigheOrdini")
' *** Cancella gli eventuali record RigheOrdine già
' esistenti per l'ordine corrente ***
If Not IsNull([Forms]![Maschera]![Sottomaschera]![IDArticolo]) Then
    rstRighe.MoveFirst
    Do Until rstRighe.EOF
        If rstRighe!IDOrdine = Me!IDOrdine Then
            rstRighe.Delete
        End If
        rstRighe.MoveNext
    Loop
End If
' *** Precompila i record di Sottomaschera ***
rstListino.MoveFirst
Do Until rstListino.EOF
        rstRighe.AddNew
        rstRighe!IDOrdine = Me!IDOrdine
        rstRighe!IDArticolo = rstListino!IDArticolo
        rstRighe!Prezzo = rstListino!Prezzo
        rstRighe!Quantità = 0
        rstRighe.Update
        rstListino.MoveNext
Loop
[Forms]![Maschera]![Sottomaschera].Requery
[Forms]![Maschera]![Sottomaschera]![IDArticolo].Requery
' *** Chiudi i recordset e il database ***
rstRighe.Close
rstListino.Close
qdfMio.Close
dbMio.Close
End Sub
Così facendo, quando apri Maschera, dopo aver selezionato il cliente, nella
sottomaschera ti compaiono automaticamente gli articoli del listino di quel
cliente completi di prezzo e con la quantità a zero; puoi passare quindi a
digitare la quantità per i soli articoli venduti per quell'ordine.
Naturalmente nella tabella RigheOrdine avrai anche i record con la quantità
a zero che occuperanno spazio.
Se desideri eliminarli, creati una query di eliminazione (elimina i record
con quantità zero) che puoi eseguire periodicamente o al limite eseguila
automaticamente per ogni ordine, a fronte dell'evento "Dopo aggiornamento"
di Maschera (bisognerebbe però valutare, in questo caso, di quanto si
appesantisce l'esecuzione del programma).
Alla prossima nel NG.
Buon Natale
Roberto
---------------------------------------------
il sito comune di it.comp.appl.access:
http://members.xoom.it/it_db_access/
---------------------------------------------


title: Problemi con IIF

author: Mik Mark

text:
Ciao,
    scusate le mia ignoranza ma non so usare l'IIF:
Dove sbaglio?
IIF ("Me!InBaseCorso=True", "SELECT * FROM Calendario Where
IDCorso=Forms![maschera prereport calendario]!Corso", "SELECT * FROM
Calendario")


title: Problemi con IIF

author: Federico Luciani

text:

probabilmente e' una tua dimenticanza, ma iif restituisce qualcosa, nel
tuo caso credo tu voglia ottenere una stringa:
strSQL = IIF (Me!InBaseCorso=True, "SELECT * FROM Calendario Where
IDCorso=" & Forms![maschera prereport calendario]!Corso, "SELECT * FROM
Calendario")
che potrebbe essere ottimizzata in:
strSQL = "SELECT * FROM Calendario" & IIF (Me!InBaseCorso, " WHERE
IDCorso=" & Forms![maschera prereport calendario]!Corso,"")
e a seconda del valore in Me!InBaseCorso, restituisce:
strSQL = "SELECT * FROM Calendario"
oppure
strSQL = "SELECT * FROM Calendario WHERE IDCorso=" & Forms![maschera
prereport calendario]!Corso
--
Federico
----------------------------------
Rimuovi paperino. per e-mail
----------------------------------
Tutte le richieste che arrivano
in privato, vengono cestinate.
----------------------------------
Sito Comune di it.comp.appl.access
http://www.sitocomune.com
mailto:
webm...@sitocomune.com
----------------------------------


title: Problemi con IIF

text:
Credo che l'unico errore sia nella condizione: Vale a dire che devi togliere
le VIRGOLETTE """"
IIF (Me!InBaseCorso=True, "SELECT * FROM Calendario Where
IDCorso=Forms![maschera prereport calendario]!Corso", "SELECT * FROM
Calendario")
Ma in ogni caso questa funzione non fa nulla, se non l'associ ad una
Stringa:
Str=IIF(cond;Vero;Falso)
Alex.
>---------------------------------------------------------------------------
---------<
Alessandro B.
E-Mail        ----->
ik2...@libero.it
Sito web    ----->
http://digilander.iol.it/ik2zok/
>---------------------------------------------------------------------------
---------<
--
Posted from [212.141.54.102]
via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: Campo numerico.

author: Linea

text:
In una fattura il prezzo è inserito in un campo numerico ma se volessi che
lo stesso campo diventi "testo" ad esempio per scriverci "OMAGGIO" od altro
non so proprio come fare.
Mi date una soluzione, per favore.
Grazie a chiunque mi risolve il problema che sicuramente per molti di voi
potrebbe essere una banalità.


title: Campo numerico.

author: Wolverin

text:

Secondo me forse dovresti mettere 0 (zero) e poi eventualmente
trasformare lo zero in "omaggio" in fase di generazione del report per
la stampa, penso che poi la fattura la devi stampare.


title: Campo numerico.

text:
"Wolverin" <
g.s...@infinito.it
> ha scritto nel messaggio
news:46d9bd43$0$4788$4faf...@reader4.news.tin.it...

hai ragione potrebbe essere un'idea ma se la frase dovesse essere diversa da
"omaggio" e si dovesse scrivere qualcos'altro.
Grazie ancora per l'idea a cui non avevo pensato.
Ciao Lino


title: Campo numerico.

author: MA

text:

Metti un altro campo in cui inserisci la parola/frase che vuoi
e poi ci fai un controllo calcolato
=IIF(tuocampo<>""; tuocampo;Tuoprezzo)
--
--
MAssimiliano Amendola
www.accessgroup.it
Cisa - Conferenza Italiana Sviluppatori Access
Segrate (MI), 7-8 giugno 2007


title: valori tra maschere e sottomaschere?????

author: Andreina Gazzoni

text:
Salve!!
come posso riportare in una casella di testo di una maschera
i valori (sommati)di tutte le righe della sua sottomaschera????
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


author: Luciano (DOC)

text:
"Andreina Gazzoni" <
cich...@tin.it
> ha scritto nel messaggio
news:da521fc796058532f36...@mygate.mailgate.org...
> come posso riportare in una casella di testo di una maschera
> i valori (sommati)di tutte le righe della sua sottomaschera????
Nella sottomaschera setta a invisible il piedipaginamaschera e mettici una
casella di controllo con la somma.
Poi nela maschera principale metti un riferimento a
me.sottomaschera!tuacasella.
Saluti.
Luciano


title: Application.echo o Docmd.Echo

author: Francesco

text:
E' possibile leggere il valore di settaggio del comando ECHO ??
Mi spiego.
Quando il comando ECHO  è settato a TRUE e lancio una mascherina di
avviso, mi crea un piccolo problema nella visualizzazione; in pratica
quando la chiudo rimane l'impronta della mascherina sulla maschera
principale.
Avrei bisogno di conoscere all'apertura della mascherina, dell'attuale
settaggio di ECHO, in modo da disattivarlo e riattivarlo se questi era
attivato.
Grazie.