title: [aiuto] Si puo' fare con una query?

text:
"Via" <viaseg...@SPAMdespammed.com> ha scritto nel messaggio
news:WoPuc.84130$Qc.33...@twister1.libero.it...

Ciao,
puoi gestire l'errore o interrogare il database in modo appropriato a
seconda del tipo.
Per Sql Server puoi interrogare la vista INFORMATION_SCHEMA.TABLES
-------------------
SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE='BASE TABLE'
  AND TABLE_NAME='TuaTabella'
--------------------
Per Access puoi interrogare l'insieme tabledefs dell'oggetto Database
esempio in Access
--------------------
  Dim tb As Variant
    For Each tb In CurrentDb.TableDefs
        If
tb.name
 = "Tu Tabella" Then
           MsgBox "Trovata"
        End If
    Next
-------------------
per altri tipi di Db bisogna documentarsi.
Ciao Giorgio


title: Controllare se fattura già registrata per una det partita Iva

author: Giorgia

text:
Buonasera a tutti.
tempo fa avevo gi� chiesto il vostro aiuto per questo argomento ma non sono
ancora riuscita a risolvere.
Ho bisogno che mi venga segnalato quando una ft per un determinato fornitore
� gi� stata registrata.
Ho indicato:
Private Sub NUM_FT_AfterUpdate()
Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
[FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & Me.PARTITA_IVA &
Chr(34) & " AND [NUM FT]=" & Me.NUM_FT)
While rs.EOF
MsgBox rs![NUM FT] & " per il cliente, gi� registrato"
Exit Sub
Wend
Set rs = Nothing
End Sub
ma mi d� errore 3061 "parametri insufficienti".
Suggerimenti?
Grazie infinite
--
Giorgia


author: Karl Donaubauer

text:
Giorgia wrote:
> tempo fa avevo gi� chiesto il vostro aiuto per questo argomento ma
> non sono ancora riuscita a risolvere.
> Ho bisogno che mi venga segnalato quando una ft per un determinato
> fornitore � gi� stata registrata.
> ...
> Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
> [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & Me.PARTITA_IVA &
> Chr(34) & " AND [NUM FT]=" & Me.NUM_FT)
> ... ma mi d� errore 3061 "parametri insufficienti".
� il messaggio di errore completo?
> Suggerimenti?
Non l'hai rivelato ma presumo che l'errore venga nella riga con
l'OpenRecordset. Di solito viene se l'enunciato SQL non � corretto.
Allora fai la prova:
- Crea una nuova query.
- Copia e incolla questa stringa nella vis. SQL della query:
Select [PARTITA IVA], [NUM FT]
from [FATTURE ACQUISTO]
WHERE [PARTITA IVA]='Pippo'
- Apri la vis. struttura e/o dati della query e controlla se vedi un errore.
--
HTH
Karl
*********
Access FAQ:
www.donkarl.com/it


author: Pablitomf

text:
Giorgia wrote:
> Buonasera a tutti.
> tempo fa avevo gi� chiesto il vostro aiuto per questo argomento ma
> non sono ancora riuscita a risolvere.
> Ho bisogno che mi venga segnalato quando una ft per un determinato
> fornitore � gi� stata registrata.
>
> Ho indicato:
>
> Private Sub NUM_FT_AfterUpdate()
> Dim rs As DAO.Recordset
> Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
> [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & Me.PARTITA_IVA &
> Chr(34) & " AND [NUM FT]=" & Me.NUM_FT)
probabilmente una delle 2 variabili non sono valorizzate nel momento in cui
le passi al recordset...
fai il debug del codice e assicurati che Me.PARTITA_IVA e Me.NUM_FT siano
valorizzati...
F� cos�
Dim sqlString As String
sqlString = "Select [PARTITA IVA], [NUM FT] from [FATTURE ACQUISTO] WHERE
[PARTITA IVA]=" & Chr(34) & Me.PARTITA_IVA & Chr(34) & " AND [NUM FT]=" &
Me.NUM_FT
Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset(sqlString)
...
...
poi il resto del codice...
verifica che quando passi su sqlString, diventi l'sql che vuoi...



text:
"Giorgia" <
gio...@vitaletrasporti.com
> ha scritto nel messaggio
news:hc76ag$msb$1...@aioe.org...

Ciao Karl e Pablitomf,
con le vostre prove ho capito di avere dei problemi con il campo PARTITA IVA
in quanto � popolato solo nella maschera e non nella tabella FATTURE
ACQUISTO.
Allo stato attuale delle cose ho una tbl FATTURE ACQUISTO con il campo CONTO
FORNITORE senza la relativa partita iva collegata, il campo PARTITA IVA �
cio� vuoto.
Questo succede perch� i dati anagrafici del fornitore vengono inseriti
tramite la form ANAGRAFICA FORNITORI: c'� un modo per fare in una tabella un
discorso simile a quando nelle form si indica
CONTO FORNITORE.Column(1)  ?
--
Giorgia


author: pablitomf

text:
On 28 Ott, 12:58, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> "Giorgia" <
gior...@vitaletrasporti.com
> ha scritto nel messaggionews:hc76ag$msb$1...@aioe.org...
>
> > Buonasera a tutti.
> > tempo fa avevo già chiesto il vostro aiuto per questo argomento ma non
> > sono ancora riuscita a risolvere.
> > Ho bisogno che mi venga segnalato quando una ft per un determinato
> > fornitore è già stata registrata.
>
> > Ho indicato:
>
> > Private Sub NUM_FT_AfterUpdate()
> > Dim rs As DAO.Recordset
> > Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
> > [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & Me.PARTITA_IVA &
> > Chr(34) & " AND [NUM FT]=" & Me.NUM_FT)
>
> > While rs.EOF
>
> > MsgBox rs![NUM FT] & " per il cliente, già registrato"
>
> > Exit Sub
> > Wend
>
> > Set rs = Nothing
> > End Sub
>
> > ma mi dà errore 3061 "parametri insufficienti".
>
> > Suggerimenti?
>
> > Grazie infinite
>
> > --
> > Giorgia
>
> Ciao Karl e Pablitomf,
> con le vostre prove ho capito di avere dei problemi con il campo PARTITA IVA
> in quanto è popolato solo nella maschera e non nella tabella FATTURE
> ACQUISTO.
> Allo stato attuale delle cose ho una tbl FATTURE ACQUISTO con il campo CONTO
> FORNITORE senza la relativa partita iva collegata, il campo PARTITA IVA è
> cioè vuoto.
> Questo succede perchè i dati anagrafici del fornitore vengono inseriti
> tramite la form ANAGRAFICA FORNITORI: c'è un modo per fare in una tabella un
> discorso simile a quando nelle form si indica
> CONTO FORNITORE.Column(1)  ?
>
> --
> Giorgia
Il conto fornitore è quindi slegato dal fornitore stesso?


author: sv

text:
Giorgia ha scritto:

In tabella no, ma in una maschera puoi accedere a dati di altre tabelle
con Dlookup.
Es: Dlookup("PartitaIva","Anagrafica","IdAnagrafica=" & Me.IdFornitore)
supponendo che nella tua maschera si trovi un IdFornitore.
--
sv
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


text:
>> > --
>> > Giorgia
>> Ciao Karl e Pablitomf,
>> con le vostre prove ho capito di avere dei problemi con il campo PARTITA
>> IVA
>> in quanto � popolato solo nella maschera e non nella tabella FATTURE
>> ACQUISTO.
>> Allo stato attuale delle cose ho una tbl FATTURE ACQUISTO con il campo
>> CONTO
>> FORNITORE senza la relativa partita iva collegata, il campo PARTITA IVA �
>> cio� vuoto.
>> Questo succede perch� i dati anagrafici del fornitore vengono inseriti
>> tramite la form ANAGRAFICA FORNITORI: c'� un modo per fare in una tabella
>> un
>> discorso simile a quando nelle form si indica
>> CONTO FORNITORE.Column(1)  ?
>
> In tabella no, ma in una maschera puoi accedere a dati di altre tabelle
> con Dlookup.
> Es: Dlookup("PartitaIva","Anagrafica","IdAnagrafica=" & Me.IdFornitore)
>
> supponendo che nella tua maschera si trovi un IdFornitore.
>
> --
> sv
>
>
>
Grazie mi sembra interessante ma come posso integrare il fatto che trovo la
partita iva corrispondente con Dlookup con il resto della funzione?
Private Sub NUM_FT_AfterUpdate()
Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
[FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & Me.PARTITA_IVA &
Chr(34) & " AND [NUM FT]=" & Me.NUM_FT)
While rs.EOF
MsgBox rs![NUM FT] & " per il cliente, gi� registrato"
Exit Sub
Wend
Set rs = Nothing
End Sub
--
Giorgia


text:
On 28 Ott, 16:26, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> >> > --
> >> > Giorgia
> >> Ciao Karl e Pablitomf,
> >> con le vostre prove ho capito di avere dei problemi con il campo PARTITA
> >> IVA
> >> in quanto è popolato solo nella maschera e non nella tabella FATTURE
> >> ACQUISTO.
> >> Allo stato attuale delle cose ho una tbl FATTURE ACQUISTO con il campo
> >> CONTO
> >> FORNITORE senza la relativa partita iva collegata, il campo PARTITA IVA è
> >> cioè vuoto.
> >> Questo succede perchè i dati anagrafici del fornitore vengono inseriti
> >> tramite la form ANAGRAFICA FORNITORI: c'è un modo per fare in una tabella
> >> un
> >> discorso simile a quando nelle form si indica
> >> CONTO FORNITORE.Column(1)  ?
>
> > In tabella no, ma in una maschera puoi accedere a dati di altre tabelle
> > con Dlookup.
> > Es: Dlookup("PartitaIva","Anagrafica","IdAnagrafica=" & Me.IdFornitore)
>
> > supponendo che nella tua maschera si trovi un IdFornitore.
>
> > --
> > sv
>
> Grazie mi sembra interessante ma come posso integrare il fatto che trovo la
> partita iva corrispondente con Dlookup con il resto della funzione?
>
> Private Sub NUM_FT_AfterUpdate()
> Dim rs As DAO.Recordset
> Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
> [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & Me.PARTITA_IVA &
> Chr(34) & " AND [NUM FT]=" & Me.NUM_FT)
>
> While rs.EOF
>
> MsgBox rs![NUM FT] & " per il cliente, già registrato"
>
> Exit Sub
> Wend
>
> Set rs = Nothing
> End Sub
>
> --
> Giorgia
non và non và... così sta storia diventa un ACCROCCO troppo incasinato
(non che non si possa cmq risolvere ovviamente, ma se non ti decidi a
normalizzare il DB la vedo dura)... il tuo WHERE [PARTITA IVA]
dovrebbe diventare WHERE [CONTO FORNITORE] (peccato che tu in questo
registri la Ragione Sociale e non l'ID... Ragione Sociale che potrebbe
essere uguale per più CONTO FORNITORE diversi...)...


text:
Giorgia ha scritto:


> While rs.EOF

> Exit Sub
> Wend

Non facciamo agitare Maurizio :-))
anche perch� quello che tu vuoi fare lascia un po' il tempo che trova. Se
per caso digiti il nr. fattura errato duplichi tranquillamente una fattura
gi� esistente. Per cui il parametro NrFattura non ti da alcuna sicurezza.
Per il dlookup puoi fare

Dim rs As DAO.Recordset
Dim strDlk as string
strDlk=Dlookup("PartitaIva","Anagrafica","IdAnagrafica=" & Me.IdFornitore)
Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
 [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk &
 Chr(34) & " AND [NUM FT]=" & Me.NUM_FT)
--



text:
>> > In tabella no, ma in una maschera puoi accedere a dati di altre tabelle
>> > con Dlookup.
>> > Es: Dlookup("PartitaIva","Anagrafica","IdAnagrafica=" & Me.IdFornitore)
>> >
>> > supponendo che nella tua maschera si trovi un IdFornitore.
>> >
S� il mio IdFornitore corrisponde con IdAnagrafica e si chiama COD FORNITORE
>
> Non facciamo agitare Maurizio :-))
PECCARITA'!! ;-)
> anche perch� quello che tu vuoi fare lascia un po' il tempo che trova. Se
> per caso digiti il nr. fattura errato duplichi tranquillamente una fattura
> gi� esistente. Per cui il parametro NrFattura non ti da alcuna sicurezza.
Hai ragione, ma come potrei ovviare? Non credo che un db possa sempre
intervenire in caso di errore da parte dell'utente....
> Per il dlookup puoi fare
>
> Dim rs As DAO.Recordset
> Dim strDlk as string
> strDlk=Dlookup("PartitaIva","Anagrafica","IdAnagrafica=" & Me.IdFornitore)
>
> Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
> [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk &
> Chr(34) & " AND [NUM FT]=" & Me.NUM_FT)
>
> --
> sv
>
> --
--
Giorgia


text:
>
> Non facciamo agitare Maurizio :-))
> anche perch� quello che tu vuoi fare lascia un po' il tempo che trova. Se
> per caso digiti il nr. fattura errato duplichi tranquillamente una fattura
> gi� esistente. Per cui il parametro NrFattura non ti da alcuna sicurezza.
>
> Per il dlookup puoi fare
>
> Dim rs As DAO.Recordset
> Dim strDlk as string
> strDlk=Dlookup("PartitaIva","Anagrafica","IdAnagrafica=" & Me.IdFornitore)
>
> Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
> [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk &
> Chr(34) & " AND [NUM FT]=" & Me.NUM_FT)
>
> --
> sv
>
Allora, ho aggiornato la funzione secondo le mie presunte esigenze in questo
modo
Private Sub NUM_FT_AfterUpdate()
Dim rs As DAO.Recordset
Dim strDlk As String
strDlk = DLookup("PARTITA IVA", "ANAGRAFICA FORNITORI", "COD FORNITORE=" &
Me.COD_FORNITORE)
Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
[FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk & Chr(34) & "
AND [NUM FT]=" & Me.NUM_FT)
While rs.EOF
MsgBox rs![NUM FT] & " per il cliente, gi� registrato"
Exit Sub
Wend
Set rs = Nothing
End Sub
ma come risultato ho errore 3075: operatore mancante nell'espressione della
query 'PARTITA IVA'.
il Dlk non ha funzionato?
--
Giorgia


text:
On 29 Ott, 11:38, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> > Non facciamo agitare Maurizio :-))
> > anche perchè quello che tu vuoi fare lascia un po' il tempo che trova. Se
> > per caso digiti il nr. fattura errato duplichi tranquillamente una fattura
> > già esistente. Per cui il parametro NrFattura non ti da alcuna sicurezza.
>
> > Per il dlookup puoi fare
>
> > Dim rs As DAO.Recordset
> > Dim strDlk as string
> > strDlk=Dlookup("PartitaIva","Anagrafica","IdAnagrafica=" & Me.IdFornitore)
>
> > Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
> > [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk &
> > Chr(34) & " AND [NUM FT]=" & Me.NUM_FT)
>
> > --
> > sv
>
> Allora, ho aggiornato la funzione secondo le mie presunte esigenze in questo
> modo
>
> Private Sub NUM_FT_AfterUpdate()
> Dim rs As DAO.Recordset
> Dim strDlk As String
> strDlk = DLookup("PARTITA IVA", "ANAGRAFICA FORNITORI", "COD FORNITORE=" &
> Me.COD_FORNITORE)
>
> Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
> [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk & Chr(34) & "
> AND [NUM FT]=" & Me.NUM_FT)
>
> While rs.EOF
>
> MsgBox rs![NUM FT] & " per il cliente, già registrato"
>
> Exit Sub
> Wend
>
> Set rs = Nothing
> End Sub
>
> ma come risultato ho errore 3075: operatore mancante nell'espressione della
> query 'PARTITA IVA'.
>
> il Dlk non ha funzionato?
così come è fatto non potrebbe...
"PARTITA IVA" il campo
così come
"ANAGRAFICA FORNITORI" la tabella
hanno uno spazio nel loro nome, quindi vanno tra parentesi quadre


text:
Giorgia ha scritto:



> While rs.EOF

> Exit Sub
> Wend



L'uso delle denominazioni per gli oggetti i campi e le variabili di Access
� una cosa da non sottovalutare.
Vedi:
http://www.donkarl.com/it/FAQ/FAQ1Fondamentali.htm#1.5
Maurizio ti ha gi� fatto notare l'errore.



text:
>
>> ma come risultato ho errore 3075: operatore mancante nell'espressione
>> della
>> query 'PARTITA IVA'.
>
>
>> il Dlk non ha funzionato?
>
> L'uso delle denominazioni per gli oggetti i campi e le variabili di Access
> � una cosa da non sottovalutare.
>
> Vedi:
>
http://www.donkarl.com/it/FAQ/FAQ1Fondamentali.htm#1.5
>
> Maurizio ti ha gi� fatto notare l'errore.
>
> --
> sv
>
Grazie, ho corretto la mia distrazione ed ora in effetti il tipo di errore �
cambiato:
2465: "impossibile trovare il campo"I" a cui si fa riferimento
nell'espressione
Specifico per� che il campo COD_FORNITORE nella maschera � =[CONTO
FORNITORE].Column(4)
Forse dovrei trasformarlo in numero per paragonarlo al campo COD_ FORNITORE
della tabella che � un Id numerico?
Riposto la stringa incriminata
 strDlk = DLookup([PARTITA IVA], [ANAGRAFICA FORNITORI], [COD FORNITORE=] &
Me.COD_FORNITORE)
--
Giorgia


text:
On 2 Nov, 10:22, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> >> ma come risultato ho errore 3075: operatore mancante nell'espressione
> >> della
> >> query 'PARTITA IVA'.
>
> >> il Dlk non ha funzionato?
>
> > L'uso delle denominazioni per gli oggetti i campi e le variabili di Access
> > è una cosa da non sottovalutare.
>
> > Vedi:
> >
http://www.donkarl.com/it/FAQ/FAQ1Fondamentali.htm#1.5
>
> > Maurizio ti ha già fatto notare l'errore.
>
> > --
> > sv
>
> Grazie, ho corretto la mia distrazione ed ora in effetti il tipo di errore è
> cambiato:
> 2465: "impossibile trovare il campo"I" a cui si fa riferimento
> nell'espressione
>
> Specifico però che il campo COD_FORNITORE nella maschera è =[CONTO
> FORNITORE].Column(4)
>
> Forse dovrei trasformarlo in numero per paragonarlo al campo COD_ FORNITORE
> della tabella che è un Id numerico?
>
> Riposto la stringa incriminata
>
>  strDlk = DLookup([PARTITA IVA], [ANAGRAFICA FORNITORI], [COD FORNITORE=] &
> Me.COD_FORNITORE)
>
> --
> Giorgia
strDlk = DLookup([PARTITA IVA], [ANAGRAFICA FORNITORI], [COD
FORNITORE=] & Me.[CONTO
FORNITORE].Column(4) )
Ti eri risposta da sola


text:
"pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:f2ebc3e7-e034-4057...@v30g2000yqm.googlegroups.com...
On 2 Nov, 10:22, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> >> ma come risultato ho errore 3075: operatore mancante nell'espressione
> >> della
> >> query 'PARTITA IVA'.
>
> >> il Dlk non ha funzionato?
>
> > L'uso delle denominazioni per gli oggetti i campi e le variabili di
> > Access
> > � una cosa da non sottovalutare.
>
> > Vedi:
> >
http://www.donkarl.com/it/FAQ/FAQ1Fondamentali.htm#1.5
>
> > Maurizio ti ha gi� fatto notare l'errore.
>
> > --
> > sv
>
> Grazie, ho corretto la mia distrazione ed ora in effetti il tipo di errore
> �
> cambiato:
> 2465: "impossibile trovare il campo"I" a cui si fa riferimento
> nell'espressione
>
> Specifico per� che il campo COD_FORNITORE nella maschera � =[CONTO
> FORNITORE].Column(4)
>
> Forse dovrei trasformarlo in numero per paragonarlo al campo COD_
> FORNITORE
> della tabella che � un Id numerico?
>
> Riposto la stringa incriminata
>
> strDlk = DLookup([PARTITA IVA], [ANAGRAFICA FORNITORI], [COD FORNITORE=] &
> Me.COD_FORNITORE)
>
> --
> Giorgia
strDlk = DLookup([PARTITA IVA], [ANAGRAFICA FORNITORI], [COD
FORNITORE=] & Me.[CONTO
FORNITORE].Column(4) )
Ti eri risposta da sola
mi pareva strano fossi in grado di dare risposte.....
l'errore rimane lo stesso.....
sigh sob
--
Giorgia


text:
Giorgia ha scritto:



Ciao Giorgia
Ma ti dimentichi la corretta sintassi.. mancano le virgolette.
strDlk =DLookup("[PARTITA IVA]", "[ANAGRAFICA FORNITORI]", "[COD
FORNITORE]=" & Me.[CONTO FORNITORE].Column(4))
Le parentesi [] sei obbligata a metterle perch� utilizzi nomi separati da
spazi... purtroppo :-((



text:
On 3 Nov, 12:49,
salvinon...@accessgroup.it
 (sv) wrote:
> Giorgia ha scritto:
>
>
>
> > "pablitomf" <
pablit...@virgilio.it
> ha scritto nel messaggio
> >news:f2ebc3e7-e034-4057...@v30g2000yqm.googlegroups.com...
> > On 2 Nov, 10:22, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> > > >> ma come risultato ho errore 3075: operatore mancante nell'espressione
> > > >> della
> > > >> query 'PARTITA IVA'.
>
> > > >> il Dlk non ha funzionato?
>
> > > > L'uso delle denominazioni per gli oggetti i campi e le variabili di
> > > > Access
> > > > è una cosa da non sottovalutare.
>
> > > > Vedi:
> > > >
http://www.donkarl.com/it/FAQ/FAQ1Fondamentali.htm#1.5
>
> > > > Maurizio ti ha già fatto notare l'errore.
>
> > > > --
> > > > sv
>
> > > Grazie, ho corretto la mia distrazione ed ora in effetti il tipo di errore
> > > è
> > > cambiato:
> > > 2465: "impossibile trovare il campo"I" a cui si fa riferimento
> > > nell'espressione
>
> > > Specifico però che il campo COD_FORNITORE nella maschera è =[CONTO
> > > FORNITORE].Column(4)
>
> > > Forse dovrei trasformarlo in numero per paragonarlo al campo COD_
> > > FORNITORE
> > > della tabella che è un Id numerico?
>
> > > Riposto la stringa incriminata
>
> > > strDlk = DLookup([PARTITA IVA], [ANAGRAFICA FORNITORI], [COD FORNITORE=] &
> > > Me.COD_FORNITORE)
>
> > > --
> > > Giorgia
> > strDlk = DLookup([PARTITA IVA], [ANAGRAFICA FORNITORI], [COD
> > FORNITORE=] & Me.[CONTO
> > FORNITORE].Column(4) )
> > Ti eri risposta da sola
> > mi pareva strano fossi in grado di dare risposte.....
> > l'errore rimane lo stesso.....
> > sigh sob
>
> Ciao Giorgia
>
> Ma ti dimentichi la corretta sintassi.. mancano le virgolette.
>
> strDlk =DLookup("[PARTITA IVA]", "[ANAGRAFICA FORNITORI]", "[COD
> FORNITORE]=" & Me.[CONTO FORNITORE].Column(4))
>
> Le parentesi [] sei obbligata a metterle perchè utilizzi nomi separati da
> spazi... purtroppo :-((
>
> --
> sv
>
> --
>
> questo articolo e` stato inviato via web dal servizio gratuitohttp://
www.newsland.it/newssegnala
 gli abusi ad
ab...@newsland.it
ed eventualmente il &chr(34)& prima e dopo me.[CONTO FORNITORE].Column
(4)... nel caso in cui il contenuto fosse un testo


text:
>
> Ma ti dimentichi la corretta sintassi.. mancano le virgolette.
>
> strDlk =DLookup("[PARTITA IVA]", "[ANAGRAFICA FORNITORI]", "[COD
> FORNITORE]=" & Me.[CONTO FORNITORE].Column(4))
>
> Le parentesi [] sei obbligata a metterle perch� utilizzi nomi separati da
> spazi... purtroppo :-((
>
> --
> sv
>
TENTATIVO 1: corretta la sintassi dai miei "orrori", l'errore si sposta
nella riga successiva che posto qui:
Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
[FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk & Chr(34) & "
AND [NUM FT]=" & "Me.[CONTO FORNITORE].COLUMN(4)")
ed � il 3085: funzione ' Me.[CONTO FORNITORE].Column(4)' non definita nella
funzione
TENTATIVO 2: visto che il campo Me.[CONTO FORNITORE].Column(4) pur sembrando
numerico � un testo ho usato il consiglio di Pablitomf
"ed eventualmente il &chr(34)& prima e dopo me.[CONTO
FORNITORE].Column(4)... nel caso in cui il contenuto fosse un testo"
cos�:
Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
[FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk & Chr(34) & "
AND [NUM FT]=" & Chr(34) & "Me.[CONTO FORNITORE].Column(4)" & Chr(34))
ma l'errore diventa di run time n� 3061: 'parametri insufficienti. previsto
1'.
ho creato una storia infinita......
Grazie per la pazienza
--
Giorgia


author: Pablitomf (da casa)

text:
> TENTATIVO 1: corretta la sintassi dai miei "orrori", l'errore si
> sposta nella riga successiva che posto qui:
>
> Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
> [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk & Chr(34)
> & " AND [NUM FT]=" & "Me.[CONTO FORNITORE].COLUMN(4)")
>
> ed � il 3085: funzione ' Me.[CONTO FORNITORE].Column(4)' non definita
> nella funzione
>
>
> TENTATIVO 2: visto che il campo Me.[CONTO FORNITORE].Column(4) pur
> sembrando numerico � un testo ho usato il consiglio di Pablitomf
> "ed eventualmente il &chr(34)& prima e dopo me.[CONTO
> FORNITORE].Column(4)... nel caso in cui il contenuto fosse un testo"
>
> cos�:
>
> Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
> [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk & Chr(34)
> & " AND [NUM FT]=" & Chr(34) & "Me.[CONTO FORNITORE].Column(4)" &
> Chr(34))
> ma l'errore diventa di run time n� 3061: 'parametri insufficienti.
> previsto 1'.
>
>
> ho creato una storia infinita......
>
> Grazie per la pazienza
ma che roba sono quelle VIRGOLETTE prima di Me.[CONTO FORNITORE].Column(4)?
va scritta cos� perch� quello � un controllo:
....AND [NUM FT]=" & Me.[CONTO FORNITORE].COLUMN(4))
o cos�
....AND [NUM FT]=" & chr(34) & Me.[CONTO FORNITORE].COLUMN(4)& chr(34)& ";")


text:
>
> ma che roba sono quelle VIRGOLETTE prima di Me.[CONTO
> FORNITORE].Column(4)?
> va scritta cos� perch� quello � un controllo:
>
> ....AND [NUM FT]=" & Me.[CONTO FORNITORE].COLUMN(4))
>
> o cos�
>
> ....AND [NUM FT]=" & chr(34) & Me.[CONTO FORNITORE].COLUMN(4)& chr(34)&
> ";")
Nulla da fare l'errore 3061 mi si � affezionato.
Ho provato le 2 alternative ma niente


text:
On 5 Nov, 12:34, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> > ma che roba sono quelle VIRGOLETTE prima di Me.[CONTO
> > FORNITORE].Column(4)?
> > va scritta così perchè quello è un controllo:
>
> > ....AND [NUM FT]=" & Me.[CONTO FORNITORE].COLUMN(4))
>
> > o così
>
> > ....AND [NUM FT]=" & chr(34) & Me.[CONTO FORNITORE].COLUMN(4)& chr(34)&
> > ";")
>
> Nulla da fare l'errore 3061 mi si è affezionato.
> Ho provato le 2 alternative ma niente
prima di openrecordset
fa una prova...
debug.print "Select [PARTITA IVA], [NUM FT] from
[FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk & Chr(34)
& "
AND [NUM FT]=" & Chr(34) & Me.[CONTO FORNITORE].Column(4) & Chr(34)
quel che ti restituisce, provalo in una query e vedi se ti da errore...


text:
Giorgia ha scritto:


Ciao Giorgia..
intanto siamo sicuri dell'esistenza della Column(4)  :-))?
Sicuramente sai che la prima colonna della combo � Column(0).
Comunque riscrivila in questa maniera:
...AND [NUM FT]=" & chr(34) & Eval(Me.[CONTO FORNITORE].COLUMN(4)) &
chr(34) & ";")
--
sv
--
questo articolo e` stato inviato via web dal servizio gratuito



text:
"sv" <
salvi...@accessgroup.it
> ha scritto nel messaggio
news:hd1hdr$h5j$1...@news.newsland.it...
> Giorgia ha scritto:
>
>> >
>> > ma che roba sono quelle VIRGOLETTE prima di Me.[CONTO
>> > FORNITORE].Column(4)?
>> > va scritta cos� perch� quello � un controllo:
>> >
>> > ....AND [NUM FT]=" & Me.[CONTO FORNITORE].COLUMN(4))
>> >
>> > o cos�
>> >
>> > ....AND [NUM FT]=" & chr(34) & Me.[CONTO FORNITORE].COLUMN(4)& chr(34)&
>> > ";")
>
>
>> Nulla da fare l'errore 3061 mi si � affezionato.
>> Ho provato le 2 alternative ma niente
>
> Ciao Giorgia..
> intanto siamo sicuri dell'esistenza della Column(4)  :-))?
> Sicuramente sai che la prima colonna della combo � Column(0).
>
> Comunque riscrivila in questa maniera:
>
> ...AND [NUM FT]=" & chr(34) & Eval(Me.[CONTO FORNITORE].COLUMN(4)) &
> chr(34) & ";")
>
> --
> sv
Scusate, il ritardo non � dovuto al disinteresse ma all'influenza!
Salvino, grazie per l'ennesimo tentativo  ma neanche questa volta l'errore
3061 � stato eliminato, ora provo con il consiglio di Pablitomf.
La colomn(4) esiste....;-)
--
Giorgia


text:
Giorgia ha scritto:


Me.[CONTO FORNITORE].COLUMN(4) ti restituisce sempre un valore o per caso
ci sono valori nulli? E' testo o numerico?



text:
>> >
>> > Ciao Giorgia..
>> > intanto siamo sicuri dell'esistenza della Column(4)  :-))?
>> > Sicuramente sai che la prima colonna della combo � Column(0).
>> >
>> > Comunque riscrivila in questa maniera:
>> >
>> > ...AND [NUM FT]=" & chr(34) & Eval(Me.[CONTO FORNITORE].COLUMN(4)) &
>> > chr(34) & ";")
>> >
>> > --
>> > sv
>
>> Scusate, il ritardo non � dovuto al disinteresse ma all'influenza!
>> Salvino, grazie per l'ennesimo tentativo  ma neanche questa volta
>> l'errore
>> 3061 � stato eliminato, ora provo con il consiglio di Pablitomf.
>> La colomn(4) esiste....;-)
>
> Me.[CONTO FORNITORE].COLUMN(4) ti restituisce sempre un valore o per caso
> ci sono valori nulli? E' testo o numerico?
>
> --
> sv
>
> --
Non � mai un campo vuoto perch� nella tabella e relativa form originali,
cio� ANAGRAFICA FORNITORI, corrisponde all'ID.


text:
On 12 Nov, 09:02, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> >> > Ciao Giorgia..
> >> > intanto siamo sicuri dell'esistenza della Column(4)  :-))?
> >> > Sicuramente sai che la prima colonna della combo è Column(0).
>
> >> > Comunque riscrivila in questa maniera:
>
> >> > ...AND [NUM FT]=" & chr(34) & Eval(Me.[CONTO FORNITORE].COLUMN(4)) &
> >> > chr(34) & ";")
>
> >> > --
> >> > sv
>
> >> Scusate, il ritardo non è dovuto al disinteresse ma all'influenza!
> >> Salvino, grazie per l'ennesimo tentativo  ma neanche questa volta
> >> l'errore
> >> 3061 è stato eliminato, ora provo con il consiglio di Pablitomf.
> >> La colomn(4) esiste....;-)
>
> > Me.[CONTO FORNITORE].COLUMN(4) ti restituisce sempre un valore o per caso
> > ci sono valori nulli? E' testo o numerico?
>
> > --
> > sv
>
> > --
>
> Non è mai un campo vuoto perchè nella tabella e relativa form originali,
> cioè ANAGRAFICA FORNITORI, corrisponde all'ID.
Bhè e il consiglio di Pablitomf? ;)


text:
"pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:1b435862-cf47-45c0...@p8g2000yqb.googlegroups.com...
On 12 Nov, 09:02, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> >> > Ciao Giorgia..
> >> > intanto siamo sicuri dell'esistenza della Column(4) :-))?
> >> > Sicuramente sai che la prima colonna della combo � Column(0).
>
> >> > Comunque riscrivila in questa maniera:
>
> >> > ...AND [NUM FT]=" & chr(34) & Eval(Me.[CONTO FORNITORE].COLUMN(4)) &
> >> > chr(34) & ";")
>
> >> > --
> >> > sv
>
> >> Scusate, il ritardo non � dovuto al disinteresse ma all'influenza!
> >> Salvino, grazie per l'ennesimo tentativo ma neanche questa volta
> >> l'errore
> >> 3061 � stato eliminato, ora provo con il consiglio di Pablitomf.
> >> La colomn(4) esiste....;-)
>
> > Me.[CONTO FORNITORE].COLUMN(4) ti restituisce sempre un valore o per
> > caso
> > ci sono valori nulli? E' testo o numerico?
>
> > --
> > sv
>
> > --
>
> Non � mai un campo vuoto perch� nella tabella e relativa form originali,
> cio� ANAGRAFICA FORNITORI, corrisponde all'ID.
Bh� e il consiglio di Pablitomf? ;)
non mi ha restituito niente.....;-(


text:

quindi l'sql � sbagliato!


text:
Giorgia ha scritto:



Posta l'SQL della query che hai costruito con il consiglio di Pablito..



text:
"pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:65cfd597-8866-4f99...@g23g2000yqh.googlegroups.com...
On 5 Nov, 12:34, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> > ma che roba sono quelle VIRGOLETTE prima di Me.[CONTO
> > FORNITORE].Column(4)?
> > va scritta cos� perch� quello � un controllo:
>
> > ....AND [NUM FT]=" & Me.[CONTO FORNITORE].COLUMN(4))
>
> > o cos�
>
> > ....AND [NUM FT]=" & chr(34) & Me.[CONTO FORNITORE].COLUMN(4)& chr(34)&
> > ";")
>
> Nulla da fare l'errore 3061 mi si � affezionato.
> Ho provato le 2 alternative ma niente
prima di openrecordset
fa una prova...
debug.print "Select [PARTITA IVA], [NUM FT] from
[FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk & Chr(34)
& "
AND [NUM FT]=" & Chr(34) & Me.[CONTO FORNITORE].Column(4) & Chr(34)
quel che ti restituisce, provalo in una query e vedi se ti da errore...
Sto provando quanto mi hai suggerito ma mi da errore 2465 impossibile
trovare il campo "I" nell'espressione.
Premetto di non essere sicura di averlo collocato al posto giusto.....vedere
per credere.....
Private Sub NUM_FT_AfterUpdate()
Debug.Print "Select [PARTITA IVA], [NUM FT] from"
[FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk & Chr(34)& "AND
[NUM FT]=" & Chr(34) & Me.[CONTO FORNITORE].Column(4) & Chr(34)
Dim rs As DAO.Recordset
 Dim strDlk As String
strDlk = DLookup("[PARTITA IVA]", "[ANAGRAFICA FORNITORI]", "[COD
FORNITORE]=" & Me.[CONTO FORNITORE].Column(4))
Set rs = CurrentDb.OpenRecordset("Select [PARTITA IVA], [NUM FT] from
[FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk & Chr(34) & "
AND [NUM FT]=" & Chr(34) & Eval(Me.[CONTO FORNITORE].Column(4)) & Chr(34) &
";")
 While rs.EOF
 MsgBox rs![NUM FT] & " per il cliente, gi� registrato"
 Exit Sub
 Wend
 Set rs = Nothing
End Sub
uff...
Giorgia


text:
> Private Sub NUM_FT_AfterUpdate()
> Debug.Print "Select [PARTITA IVA], [NUM FT] from"
> [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk &
> Chr(34)& "AND [NUM FT]=" & Chr(34) & Me.[CONTO FORNITORE].Column(4) &
> Chr(34)
in questo Debug.Print c'� inclusa una variabile non ancora assegnata
(strDlk) per cui ti restituir� qualcosa di incompleto...quindi non va
bene...
> Dim rs As DAO.Recordset
> Dim strDlk As String
> strDlk = DLookup("[PARTITA IVA]", "[ANAGRAFICA FORNITORI]", "[COD
> FORNITORE]=" & Me.[CONTO FORNITORE].Column(4))
ecco, qua puoi mettere il Debug.Print, perch� hai finalmente valorizato
strDlk
segui il debug. e vedi nella finestra immediata cosa ti restituisce il
debug... prendi il risultato, incollalo in una query e vedi che errore ti d�
(o postalo qu�)


text:
Pablitomf (da casa) ha scritto:





Questa � errata comunque in quanto mancano spazi e virgolette:
"Select [PARTITA IVA], [NUM FT] from"
[FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk &
 Chr(34)& "AND [NUM FT]=" & Chr(34) & Me.[CONTO FORNITORE].Column(4) &
 Chr(34)
Deve essere:
"Select [PARTITA IVA], [NUM FT]" _
& " FROM [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" _
& Chr(34) & strDlk & Chr(34) _
& " AND [NUM FT]=" & Chr(34) & Me.[CONTO FORNITORE].Column(4) & Chr(34)
--
sv
--
questo articolo e` stato inviato via web dal servizio gratuito



text:
"Pablitomf (da casa)" <
pabl...@hotmail.it
> ha scritto nel messaggio
news:6MhLm.94625$9f6.1...@twister1.libero.it...

la query non mi sembra dare errori. chiede per� all'utente di inserire il
numero della fattura.
Questo � il cod. sql della query:
Select [PARTITA IVA], [NUM FT] FROM [FATTURE ACQUISTO] WHERE [PARTITA
IVA]="08862530014" AND [NUM FT]="27"
segnalo per� che il [NUM FT] corrente doveva essere "34" e questo 27 non so
da dove salti fuori.....
ne deduco che il problema stia nel dirgli di confrontare il NUM FT appena
inserito con quelli gi� presenti in tabella nella corrispondenza con la
partita Iva.
Ha una logica quello che scrivo?
Giorgia


text:
On 16 Nov, 10:15, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> "Pablitomf (da casa)" <
pablit...@hotmail.it
> ha scritto nel messaggionews:6MhLm.94625$9f6.1...@twister1.libero.it...
>
> >> Private Sub NUM_FT_AfterUpdate()
> >> Debug.Print "Select [PARTITA IVA], [NUM FT] from"
> >> [FATTURE ACQUISTO] WHERE [PARTITA IVA]=" & Chr(34) & strDlk &
> >> Chr(34)& "AND [NUM FT]=" & Chr(34) & Me.[CONTO FORNITORE].Column(4) &
> >> Chr(34)
>
> > in questo Debug.Print c'è inclusa una variabile non ancora assegnata
> > (strDlk) per cui ti restituirà qualcosa di incompleto...quindi non va
> > bene...
>
> >> Dim rs As DAO.Recordset
> >> Dim strDlk As String
> >> strDlk = DLookup("[PARTITA IVA]", "[ANAGRAFICA FORNITORI]", "[COD
> >> FORNITORE]=" & Me.[CONTO FORNITORE].Column(4))
>
> > ecco, qua puoi mettere il Debug.Print, perchè hai finalmente valorizato
> > strDlk
>
> > segui il debug. e vedi nella finestra immediata cosa ti restituisce il
> > debug... prendi il risultato, incollalo in una query e vedi che errore ti
> > dà (o postalo quà)
>
> la query non mi sembra dare errori. chiede però all'utente di inserire il
> numero della fattura.
> Questo è il cod. sql della query:
>
> Select [PARTITA IVA], [NUM FT] FROM [FATTURE ACQUISTO] WHERE [PARTITA
> IVA]="08862530014" AND [NUM FT]="27"
qual'è il TESTO che compare a video nella richiesta del numeri della
fattura? (scrivimelo per bene)
perchè se il testo è NUM FT, vuol dire che è un campo che nella
tabella [FATTURE ACQUISTO] non esiste.
> segnalo però che il [NUM FT] corrente doveva essere "34" e questo 27 non so
> da dove salti fuori.....
> ne deduco che il problema stia nel dirgli di confrontare il NUM FT appena
> inserito con quelli già presenti in tabella nella corrispondenza con la



text:
- posto qui quello che con outlook non ho ricevuto ma che ho trovato nel
nttp on line -
- Pablitomf wrote -
qual'� il TESTO che compare a video nella richiesta del numeri della
fattura? (scrivimelo per bene)
perch� se il testo � NUM FT, vuol dire che � un campo che nella
tabella [FATTURE ACQUISTO] non esiste.
--------
S� Pablitomf, il testo � proprio quello NUM FT e infatti nella tabella
[FATTURE ACQUISTO] � presente come FATTURA NUMERO.
Ho modificato la stringa e inserita nella query cos�
Select [PARTITA IVA], [FATTURA NUMERO] FROM [FATTURE ACQUISTO] WHERE
[PARTITA IVA]="08862530014" AND [FATTURA NUMERO]="27"
ma questo "27" ho scoperto essere il CONTO FORNITORE e non il numero della
fattura!
� forse sbagliato il dlookup?
strDlk = DLookup("[PARTITA IVA]", "[ANAGRAFICA FORNITORI]", "[COD
FORNITORE]=" & Me.[CONTO FORNITORE].Column(4))
non capisco....
Giorgia


text:
On 17 Nov, 12:04, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> - posto qui quello che con outlook non ho ricevuto ma che ho trovato nel
> nttp on line -
> - Pablitomf wrote -
>
> qual'è il TESTO che compare a video nella richiesta del numeri della
> fattura? (scrivimelo per bene)
> perchè se il testo è NUM FT, vuol dire che è un campo che nella
> tabella [FATTURE ACQUISTO] non esiste.
>
> --------
> Sì Pablitomf, il testo è proprio quello NUM FT e infatti nella tabella
> [FATTURE ACQUISTO] è presente come FATTURA NUMERO.
Grrrrrrrrrrrrrrrr!
> Ho modificato la stringa e inserita nella query così
> Select [PARTITA IVA], [FATTURA NUMERO] FROM [FATTURE ACQUISTO] WHERE
> [PARTITA IVA]="08862530014" AND [FATTURA NUMERO]="27"
>
> ma questo "27" ho scoperto essere il CONTO FORNITORE e non il numero della
> fattura!
> è forse sbagliato il dlookup?
bhè se hai messo sopra un NUM FT inesistente al posto di un FATTURA
NUMERO, potrebbe esser tutto... :D
> strDlk = DLookup("[PARTITA IVA]", "[ANAGRAFICA FORNITORI]", "[COD
> FORNITORE]=" & Me.[CONTO FORNITORE].Column(4))
strDlk, ti restituisce la PARTITA IVA giusta?... si? e bhè allora che
ti serve di più? se ti restituisce la P.Iva giusta vuol dire che è
fatto bene... e quindi passa oltre...
il problema sta nel fatto che tu nell'SQL passi in modo giusto il
parametro :
[PARTITA IVA]=" & chr(34) & strDlk & chr(34)....
mentre poi passi decisamente in maniera errata l'altro parametro :
AND [FATTURA NUMERO]=Me.[CONTO FORNITORE].Column(4)
cosa centra Me.[CONTO FORNITORE].Column(4) con il NUMERO FATTURA?...
se tu stessa hai impostato nel DLOOKUP il parametro :
"[COD FORNITORE]=" & Me.[CONTO FORNITORE].Column(4))
vorrà dire che hai capito che quel Me.[CONTO FORNITORE].Column(4)
contieni il codice fornitore e non il numero fattura... per cui perchè
poi lo passi all'SQL sul NUMERO FATTURA pretendendo che ti dia un
risultato diverso da quello ottenuto sopra?
 > non capisco....
no, non è vero, il problema è che non ti applichi... scrivi e basta...
a scuola di solito si dice "potrebbe fare di più ma non si impegna" :D
> Giorgia
;)


text:
 > non capisco....
no, non � vero, il problema � che non ti applichi... scrivi e basta...
a scuola di solito si dice "potrebbe fare di pi� ma non si impegna" :D
> Giorgia
;)
Grazie per l'incoraggiamento, mi sono impegnata ed ora la stringa SQL �
corretta:
Select [PARTITA IVA], [FATTURA NUMERO] FROM [FATTURE ACQUISTO] WHERE
[PARTITA IVA]="08862530014" AND [FATTURA NUMERO]="34"
per� non mi viene segnalato ci� per cui ho voluto creare questo post cio�
che la ft 34 per la partita Iva 08862530014 � gi� stata registrata.
Uso un If?
...praticamente oltre l'impegno ho bisogno di un insegnante di
sostegno......;-)
Giorgia


text:

Visto che quando ti impegni ci riesci? :D
cmq io farei :
SELECT Count([PARTITA IVA]) AS Tot
FROM [FATTURE ACQUISTO]
GROUP BY [PARTITA IVA], [FATTURA NUMERO]
HAVING [PARTITA IVA]="08862530014" AND [FATTURA NUMERO]="34";
in questo modo il tuo SQL conta le fatture che hanno i parametri che gli
passi...
per cui puoi avrai il tuo campo "Tot" che conterr� il numero delle fatture
gi� inserite con stesso cliente e stesso numero...
If nz(rs!Tot,0)>0 then
    Msgbox "Per questo cliente queta fattura � gi� stata inserita " & rs!Tot
& " volte",,"ATTENZIONE"
End If


text:
>
> Visto che quando ti impegni ci riesci? :D
>
> cmq io farei :
> SELECT Count([PARTITA IVA]) AS Tot
> FROM [FATTURE ACQUISTO]
> GROUP BY [PARTITA IVA], [FATTURA NUMERO]
> HAVING [PARTITA IVA]="08862530014" AND [FATTURA NUMERO]="34";
>
> in questo modo il tuo SQL conta le fatture che hanno i parametri che gli
> passi...
> per cui puoi avrai il tuo campo "Tot" che conterr� il numero delle fatture
> gi� inserite con stesso cliente e stesso numero...
>
> If nz(rs!Tot,0)>0 then
>    Msgbox "Per questo cliente queta fattura � gi� stata inserita " &
> rs!Tot & " volte",,"ATTENZIONE"
> End If
>
Grazie mille prof.
- un chiarimento a livello teorico: cosa specifica questa parte? "...&
rs!Tot  & " volte",,"ATTENZIONE""
- un chiarimento a livello pratico: dove � corretto inserire il SelectCount?
perch� a me d� "Istruzione non valida all'esterno del blocco Type" ed ho
provato a inserirlo subito dopo il Set rs e sia alla fine quando Set rs=
nothing
Thanks
Giorgia


text:
> Grazie mille prof.
figurati
> - un chiarimento a livello teorico: cosa specifica questa parte? "...&
> rs!Tot  & " volte",,"ATTENZIONE""
è il testo del messaggio...
se rs!Tot (che è il campo Tot del recordset aperto) è maggiore di 0,
vuol dire che sono già presenti in archivio (quindi registrate) "n"
fatture con quelle caratteristiche (perchè potresti pure aver voluto
forzare cmq la registrazione)... quindi rs!Tot indica il numero totale
(il conteggio dei record filtrati) delle fatture trovate...
Se sostituisci (non tu ovviamente) a rs!Tot il valore che ne ottieni
(Es. 5)
il Msgbox:
"Per questo cliente questa fattura è già stata inserita " & rs!Tot
& " volte" ,,"ATTENZIONE""
diverrà e quindi ti restituirà a video:
"Per questo cliente questa fattura è già stata inserita 5 volte" con
un bel titolo "ATTENZIONE"
AMMONIZIONE :
ma ogni tanto, tu un "F1" lo premi? Sai, sull'help troveresti tante
cose carine da imparare... se vai nel codice ad es. ed evidenzi con il
mouse Msgbox, pigiando il tastino F1 ti apparirà la meravigliosissima
e lussureggiante guida, filtrata proprio sul "Msgbox" e la sua
composizione... in questo modo scoprirai come si compone e quali sono
di conseguenza i suoi elementi... questo ovviamente lo puoi fare per
qualsiasi cosa. :-D
> - un chiarimento a livello pratico: dove è corretto inserire il SelectCount?
...ma a cosa ti serve SelectCount?
> Thanks
>
> Giorgia


text:
"pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:32283ac2-703e-4d1a...@l2g2000yqd.googlegroups.com...
> Grazie mille prof.
figurati
> - un chiarimento a livello teorico: cosa specifica questa parte? "...&
> rs!Tot & " volte",,"ATTENZIONE""
� il testo del messaggio...
se rs!Tot (che � il campo Tot del recordset aperto) � maggiore di 0,
vuol dire che sono gi� presenti in archivio (quindi registrate) "n"
fatture con quelle caratteristiche (perch� potresti pure aver voluto
forzare cmq la registrazione)... quindi rs!Tot indica il numero totale
(il conteggio dei record filtrati) delle fatture trovate...
Se sostituisci (non tu ovviamente) a rs!Tot il valore che ne ottieni
(Es. 5)
il Msgbox:
"Per questo cliente questa fattura � gi� stata inserita " & rs!Tot
& " volte" ,,"ATTENZIONE""
diverr� e quindi ti restituir� a video:
"Per questo cliente questa fattura � gi� stata inserita 5 volte" con
un bel titolo "ATTENZIONE"
AMMONIZIONE :
ma ogni tanto, tu un "F1" lo premi? Sai, sull'help troveresti tante
cose carine da imparare... se vai nel codice ad es. ed evidenzi con il
mouse Msgbox, pigiando il tastino F1 ti apparir� la meravigliosissima
e lussureggiante guida, filtrata proprio sul "Msgbox" e la sua
composizione... in questo modo scoprirai come si compone e quali sono
di conseguenza i suoi elementi... questo ovviamente lo puoi fare per
qualsiasi cosa. :-D.
Hai ragione, vedr� di sbrogliarmela un po' prima di postare.....pigra che
non sono altro!....che poi a volte ci si mette pi� a scrivere per descrivere
il problema che non a pigiare F1.....;-)
> - un chiarimento a livello pratico: dove � corretto inserire il
> SelectCount?
...ma a cosa ti serve SelectCount?
ehm.....non me l'hai suggerito te?
- cut -
cmq io farei :
SELECT Count([PARTITA IVA]) AS Tot
FROM [FATTURE ACQUISTO]
GROUP BY [PARTITA IVA], [FATTURA NUMERO]
HAVING [PARTITA IVA]="08862530014" AND [FATTURA NUMERO]="34";
> Thanks
>
> Giorgia


text:
On 19 Nov, 11:50, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> "pablitomf" <
pablit...@virgilio.it
> ha scritto nel messaggionews:32283ac2-703e-4d1a...@l2g2000yqd.googlegroups.com...
>
> > Grazie mille prof.
>
> figurati
>
> > - un chiarimento a livello teorico: cosa specifica questa parte? "...&
> > rs!Tot & " volte",,"ATTENZIONE""
>
> è il testo del messaggio...
> se rs!Tot (che è il campo Tot del recordset aperto) è maggiore di 0,
> vuol dire che sono già presenti in archivio (quindi registrate) "n"
> fatture con quelle caratteristiche (perchè potresti pure aver voluto
> forzare cmq la registrazione)... quindi rs!Tot indica il numero totale
> (il conteggio dei record filtrati) delle fatture trovate...
>
> Se sostituisci (non tu ovviamente) a rs!Tot il valore che ne ottieni
> (Es. 5)
>
> il Msgbox:
> "Per questo cliente questa fattura è già stata inserita " & rs!Tot
> & " volte" ,,"ATTENZIONE""
> diverrà e quindi ti restituirà a video:
> "Per questo cliente questa fattura è già stata inserita 5 volte" con
> un bel titolo "ATTENZIONE"
>
> AMMONIZIONE :
> ma ogni tanto, tu un "F1" lo premi? Sai, sull'help troveresti tante
> cose carine da imparare... se vai nel codice ad es. ed evidenzi con il
> mouse Msgbox, pigiando il tastino F1 ti apparirà la meravigliosissima
> e lussureggiante guida, filtrata proprio sul "Msgbox" e la sua
> composizione... in questo modo scoprirai come si compone e quali sono
> di conseguenza i suoi elementi... questo ovviamente lo puoi fare per
> qualsiasi cosa. :-D.
>
> Hai ragione, vedrò di sbrogliarmela un po' prima di postare.....pigra che
> non sono altro!....che poi a volte ci si mette più a scrivere per descrivere
> il problema che non a pigiare F1.....;-)
>
> > - un chiarimento a livello pratico: dove è corretto inserire il
> > SelectCount?
>
> ...ma a cosa ti serve SelectCount?
>
> ehm.....non me l'hai suggerito te?
> - cut -
> cmq io farei :
> SELECT Count([PARTITA IVA]) AS Tot
> FROM [FATTURE ACQUISTO]
> GROUP BY [PARTITA IVA], [FATTURA NUMERO]
> HAVING [PARTITA IVA]="08862530014" AND [FATTURA NUMERO]="34";
>
> > Thanks
>
> > Giorgia
uhauhauhauhauhauhauhauhauhauhauhauhauha
quello è il SELECT... da mettere nel recordset al posto di quello che
hai fatto tu. :D
una select che ti restituisce direttamente un campo Tot che calcola in
numero di record (se ne trova 1 restituirà 1,  se ne trova 3
restituirà 3...) senza far altro... basterà solo controllare il valore
di questo campo leggendolo e capirai se ci sono duplicati o meno...
a volte credo tu mi stia prendendo in giro :D


text:
"Pablitomf (da casa)" <
pabl...@hotmail.it
> ha scritto nel messaggio
news:hJWMm.95735$1s6....@twister2.libero.it...

Perdono, stresso ancora su questo argomento ma pur avendo cercato aiuto
sulla guida non ne sono venuta a capo.
Sembra che la sintassi per AS non sia corretta, mi chiede una fine
d'istruzione oppure ) ma non sono riuscita a sistemare.....
Giorgia


text:

Giorgina mi sorge un dubbione :
SELECT Count([PARTITA IVA]) AS Tot FROM [FATTURE ACQUISTO] GROUP BY [PARTITA
IVA], [FATTURA NUMERO] HAVING [PARTITA IVA]="08862530014" AND [FATTURA
NUMERO]="34";
ma la metti sulla stessa riga?


text:
>
> Giorgina mi sorge un dubbione :
> SELECT Count([PARTITA IVA]) AS Tot FROM [FATTURE ACQUISTO] GROUP BY
> [PARTITA IVA], [FATTURA NUMERO] HAVING [PARTITA IVA]="08862530014" AND
> [FATTURA NUMERO]="34";
>
> ma la metti sulla stessa riga?
>
S�, ho provato anche un'istruzione per riga ma non va comunque...


text:

impossibile...


text:
"Pablitomf (da casa)" <
pabl...@hotmail.it
> ha scritto nel messaggio
news:HBTQm.100818$1s6....@twister2.libero.it...

Usando il debug il problema di sintassi sembra nascere nell' "AS Tot"
continua a dirmi "fine istruzione o )"
che barba!
Giorgia


text:
"Giorgia" <
gio...@vitaletrasporti.com
> ha scritto nel messaggio
news:hf2mi6$v6f$1...@aioe.org...

Messa cos�
SELECT Count([PARTITA IVA]) AS Tot FROM [FATTURE ACQUISTO] GROUP BY[PARTITA
IVA], [FATTURA NUMERO] HAVING [PARTITA IVA]="08862530014"AND [FATTURA
NUMERO]="34";
mi d� "semplicemente" errore di sintassi senza ulteriori indicazioni
Giorgia


author: MA

text:
"Giorgia" <
gio...@vitaletrasporti.com
> ha scritto nel messaggio
news:hf2orr$2d0$1...@aioe.org...

Non ho seguito la discussione precedente ma se parli di debug ti evidenzio
che
kn VBA non puoi usare i doppi apici per i campi tsti
sostituiscili con l'apice singolo
NUMERO]='34';


text:
Ciao a tutti,
impazzisco ad ogni inserimento di nuova fattura!
l'errore � "argomento non facoltativo".
Private Sub NUM_FT_AfterUpdate()
Dim rs As DAO.Recordset
 Dim strDlk As String
strDlk = DLookup("[PARTITA IVA]", "[ANAGRAFICA FORNITORI]", "[COD
FORNITORE]=" & Me.[CONTO FORNITORE].Column(4))
Set rs = CurrentDb.OpenRecordset
SELECT Count([PARTITA IVA]) AS Tot FROM [FATTURE ACQUISTO] GROUP BY[PARTITA
IVA], [FATTURA NUMERO] HAVING [PARTITA IVA]='08862530014'AND [FATTURA
NUMERO]='34';
If Nz(rs!Tot, 0) > 0 Then
    MsgBox "Per questo cliente queta fattura � gi� stata inserita " & rs!Tot
& " volte", , "ATTENZIONE"
End If
While rs.EOF
Exit Sub
 Wend
 Set rs = Nothing
End Sub
Mi aiutate a correggere la sintassi di questa stringa malefica??
Grazie infinite
Set rs = CurrentDb.OpenRecordset
SELECT Count([PARTITA IVA]) AS Tot FROM [FATTURE ACQUISTO] GROUP BY[PARTITA
IVA], [FATTURA NUMERO] HAVING [PARTITA IVA]='08862530014'AND [FATTURA
NUMERO]='34';
Giorgia


text:
> Set rs = CurrentDb.OpenRecordset
> SELECT Count([PARTITA IVA]) AS Tot FROM [FATTURE ACQUISTO] GROUP
> BY[PARTITA IVA], [FATTURA NUMERO] HAVING [PARTITA
> IVA]='08862530014'AND [FATTURA NUMERO]='34';
Giorgiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa!!!!!!!!!
ma dico io, vuoi aprire il recordset? e le parentesi nd� stanno?...
il recordset si apre cos� :
Set rs = CurrentDb.OpenRecordset("...ci scrivi il testo della tua
select....")
:)


text:
"Pablitomf (da casa)" <
pabl...@hotmail.it
> ha scritto nel messaggio
news:WxWRm.102226$1s6....@twister2.libero.it...

Giurin giuretto..........
ho fatto mille prove prima.....con parentesi e "......
ora va....ho sostituito come suggerito da MA le" con '...
sar� quello......eh eh
Comunque, un'ultima (spero) cosa:
il messaggio
If Nz(rs!Tot, 0) > 0 Then
    MsgBox "Per questo cliente questa fattura � gi� stata inserita " &
rs!Tot & " volte", , "ATTENZIONE"
    Else
End If
viene visualizzato SEMPRE, e se � la prima volta che inserisco la fattura mi
viene indicato giustamente che � "stata registrata 1 volte".
Come posso far comparire il msg solo se � gi� stata inserita quella stessa
identica fattura?
ho provato con
If Nz(rs!Tot, 0) > 1 Then
ma cos� non mi viene segnalato mai niente!
Giorgia


text:
On 4 Dic, 12:16, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> "Pablitomf (da casa)" <
pablit...@hotmail.it
> ha scritto nel messaggionews:WxWRm.102226$1s6....@twister2.libero.it...>> Set rs = CurrentDb.OpenRecordset

giusto...
> ma cos non mi viene segnalato mai niente!
impossibile...
nel senso che rs!Tot è il conteggio telle fatture con un certo numero
di un certo cliente...
per cui se ce ne sta 1 in archivio, la "if" non  valuta rs!Tot
maggiore di 1 per cui non segnala... ma se rs!Tot è maggiore di 1 per
forza deve eseguire il MSGBOX... prima della IF, sulla riga subito
sopra, metti un :
MSGBOX "Conteggio : " & Nz(rs!Tot,0)
salva tutto, e prova a registrare una fattura 2 volte... vedi che ti
da come messaggio.


text:
"pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:371aabaf-3b60-401d...@z41g2000yqz.googlegroups.com...

giusto...
uao!...."giusto".....uao!
> ma cos non mi viene segnalato mai niente!
impossibile...
nel senso che rs!Tot � il conteggio telle fatture con un certo numero
di un certo cliente...
per cui se ce ne sta 1 in archivio, la "if" non  valuta rs!Tot
maggiore di 1 per cui non segnala... ma se rs!Tot � maggiore di 1 per
forza deve eseguire il MSGBOX... prima della IF, sulla riga subito
sopra, metti un :
MSGBOX "Conteggio : " & Nz(rs!Tot,0)
salva tutto, e prova a registrare una fattura 2 volte... vedi che ti
da come messaggio.
Seguite tue istruzioni alla lettera, il messaggio �
Conteggio:1
Sempre, che la fattura sia gi� stata inserita una volta o mai.
Giorgia


text:
On 4 Dic, 15:57, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> "pablitomf" <
pablit...@virgilio.it
> ha scritto nel messaggionews:371aabaf-3b60-401d...@z41g2000yqz.googlegroups.com...

> nel senso che rs!Tot è il conteggio telle fatture con un certo numero
> di un certo cliente...
> per cui se ce ne sta 1 in archivio, la "if" non  valuta rs!Tot
> maggiore di 1 per cui non segnala... ma se rs!Tot è maggiore di 1 per
> forza deve eseguire il MSGBOX... prima della IF, sulla riga subito
> sopra, metti un :
> MSGBOX "Conteggio : " & Nz(rs!Tot,0)
> salva tutto, e prova a registrare una fattura 2 volte... vedi che ti
> da come messaggio.
>
> Seguite tue istruzioni alla lettera, il messaggio è
> Conteggio:1
>
> Sempre, che la fattura sia già stata inserita una volta o mai.
>
> Giorgia
Mi sà che ho capito... inserisci la stessa fattura 3 volte e guarda
cosa ti dà... se in questo caso funziona, è perchè sul secondo
inserimento, non avendo ancora salvato il record, non lo conteggia...
dovrebbe bastare a sto punto, fare un operazione di salvataggio del
record con :
DoCmd.RunCommand acCmdSaveRecord
prima di ogni altra riga di codice... in questo caso, avendo salvato
il record, dovrebbe conteggiarlo nella query che lanci da recordset...
e quindi il messaggio dovrebbe apparirti correttamente...


text:
>
> nel senso che rs!Tot � il conteggio telle fatture con un certo numero
> di un certo cliente...
> per cui se ce ne sta 1 in archivio, la "if" non  valuta rs!Tot
> maggiore di 1 per cui non segnala... ma se rs!Tot � maggiore di 1 per
> forza deve eseguire il MSGBOX... prima della IF, sulla riga subito
> sopra, metti un :
> MSGBOX "Conteggio : " & Nz(rs!Tot,0)
> salva tutto, e prova a registrare una fattura 2 volte... vedi che ti
> da come messaggio.
>
>
> Seguite tue istruzioni alla lettera, il messaggio �
> Conteggio:1
>
> Sempre, che la fattura sia gi� stata inserita una volta o mai.
o pi� di una volta!
> Giorgia
>
>


text:
"pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:bbb2c8e3-de93-40a7...@d20g2000yqh.googlegroups.com...

> nel senso che rs!Tot � il conteggio telle fatture con un certo numero
> di un certo cliente...
> per cui se ce ne sta 1 in archivio, la "if" non valuta rs!Tot
> maggiore di 1 per cui non segnala... ma se rs!Tot � maggiore di 1 per
> forza deve eseguire il MSGBOX... prima della IF, sulla riga subito
> sopra, metti un :
> MSGBOX "Conteggio : " & Nz(rs!Tot,0)
> salva tutto, e prova a registrare una fattura 2 volte... vedi che ti
> da come messaggio.
>
> Seguite tue istruzioni alla lettera, il messaggio �
> Conteggio:1
>
> Sempre, che la fattura sia gi� stata inserita una volta o mai.
>
> Giorgia
Mi s� che ho capito... inserisci la stessa fattura 3 volte e guarda
cosa ti d�... se in questo caso funziona, � perch� sul secondo
inserimento, non avendo ancora salvato il record, non lo conteggia...
dovrebbe bastare a sto punto, fare un operazione di salvataggio del
record con :
DoCmd.RunCommand acCmdSaveRecord
prima di ogni altra riga di codice... in questo caso, avendo salvato
il record, dovrebbe conteggiarlo nella query che lanci da recordset...
e quindi il messaggio dovrebbe apparirti correttamente...
macch�.....anche salvando il record e registrando appositamente 3 volte la
stessa fattura il conteggio risulta = 1.
Eppure la definizione di Tot mi sembra corretta....
AS Tot FROM [FATTURE ACQUISTO] GROUP BY[PARTITA IVA], [FATTURA NUMERO]
non mi potr� mai fidare di questo comando......:-(
Giorgia


text:
On 4 Dic, 17:08, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> > nel senso che rs!Tot è il conteggio telle fatture con un certo numero
> > di un certo cliente...
> > per cui se ce ne sta 1 in archivio, la "if" non  valuta rs!Tot
> > maggiore di 1 per cui non segnala... ma se rs!Tot è maggiore di 1 per
> > forza deve eseguire il MSGBOX... prima della IF, sulla riga subito
> > sopra, metti un :
> > MSGBOX "Conteggio : " & Nz(rs!Tot,0)
> > salva tutto, e prova a registrare una fattura 2 volte... vedi che ti
> > da come messaggio.
>
> > Seguite tue istruzioni alla lettera, il messaggio è
> > Conteggio:1
>
> > Sempre, che la fattura sia già stata inserita una volta o mai.
>
> o più di una volta!
>
> > Giorgia
Giorgia, ti faccio una domanda più che stupida, ma a sto punto è
doverosissima visto che il tutto DEVE funzionare come ti ho detto...
ma la registrazione "PIU VOLTE" della fattura sullo stesso cliente per
la quale tu sostieni che il sistema non funziona, è registrata sul
cliente la cui partita iva e il cui numero sono quelle inserite nella
SELECT?...
Giusto per ricordartelo, tu nella select scegli di conteggiare LA
(quindi singola) fattura "34" del cliente "08862530014"...
che mi dici a riguardo?


text:
"pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:aa30df80-6afb-4c7d...@a21g2000yqc.googlegroups.com...
On 4 Dic, 17:08, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> > nel senso che rs!Tot � il conteggio telle fatture con un certo numero
> > di un certo cliente...
> > per cui se ce ne sta 1 in archivio, la "if" non valuta rs!Tot
> > maggiore di 1 per cui non segnala... ma se rs!Tot � maggiore di 1 per
> > forza deve eseguire il MSGBOX... prima della IF, sulla riga subito
> > sopra, metti un :
> > MSGBOX "Conteggio : " & Nz(rs!Tot,0)
> > salva tutto, e prova a registrare una fattura 2 volte... vedi che ti
> > da come messaggio.
>
> > Seguite tue istruzioni alla lettera, il messaggio �
> > Conteggio:1
>
> > Sempre, che la fattura sia gi� stata inserita una volta o mai.
>
> o pi� di una volta!
>
> > Giorgia
Giorgia, ti faccio una domanda pi� che stupida, ma a sto punto �
doverosissima visto che il tutto DEVE funzionare come ti ho detto...
ma la registrazione "PIU VOLTE" della fattura sullo stesso cliente per
la quale tu sostieni che il sistema non funziona, � registrata sul
cliente la cui partita iva e il cui numero sono quelle inserite nella
SELECT?...
Giusto per ricordartelo, tu nella select scegli di conteggiare LA
(quindi singola) fattura "34" del cliente "08862530014"...
che mi dici a riguardo?
no....."ovviamente" no.....
e in effetti non capivo il perch� avessimo specificato una determinata
partita iva e un det.numero di fattura nella Select......
Giorgia


text:

chiamami su MSN cos� ti UCCIDO!!!!!!!!!!!
quei numeri erano per provare se l'SQL funzionava!!!!
m� quei numeri non ti servono pi� cos� come sono!!!
devi sostituire il numero di P.Iva con quello prelevato con la strDlk, e il
numero della fattura prelevato dalla Form!!!! mannaggia a te! :D
Ci stai mandando al manicomio...


text:
>
> chiamami su MSN cos� ti UCCIDO!!!!!!!!!!!
> quei numeri erano per provare se l'SQL funzionava!!!!
>
> m� quei numeri non ti servono pi� cos� come sono!!!
>
> devi sostituire il numero di P.Iva con quello prelevato con la strDlk, e
> il numero della fattura prelevato dalla Form!!!! mannaggia a te! :D
> Ci stai mandando al manicomio...
ehm.....almeno non sarei sola in quella stanzetta del manicomio....
dunque, questo il mio tentativo
Set rs = CurrentDb.OpenRecordset("SELECT Count([PARTITA IVA]) AS Tot FROM
[FATTURE ACQUISTO] GROUP BY[PARTITA IVA], [FATTURA NUMERO] HAVING [PARTITA
IVA]=" & Chr(34) & strDlk & Chr(34) & " AND [FATTURA NUMERO]=" & Me.[NUM
FT])
ma errore di run time 3464 , "tipi di dati non corrispondenti
nell'espressione criterio"
ho provato senza chr ma neanche...
sono da uccidere anche stavolta o basta qualche insulto? ;-)
Giorgia


text:

Qualche insulto basta! :D
Perchè quando c'èra 34 al posto di Me.[NUM FT] la trattavi come testo
e nel tuo SQL lo vuoi trattare come numero?
se mettevi ='34' usando gli apici, vuol dire che era e quindi è un
testo... per cui:
".... AND [FATTURA NUMERO]=" & chr(34) & Me.[NUM FT] & chr(34))
prova


text:
"pablitomf" <
pabl...@virgilio.it
> ha scritto nel messaggio
news:be0c8dc5-f360-44dd...@v25g2000yqk.googlegroups.com...
On 10 Dic, 16:37, "Giorgia" <
gior...@vitaletrasporti.com
> wrote:
> > chiamami su MSN cos ti UCCIDO!!!!!!!!!!!
> > quei numeri erano per provare se l'SQL funzionava!!!!
>
> > m quei numeri non ti servono pi cos come sono!!!
>
> > devi sostituire il numero di P.Iva con quello prelevato con la strDlk, e
> > il numero della fattura prelevato dalla Form!!!! mannaggia a te! :D
> > Ci stai mandando al manicomio...
>
> ehm.....almeno non sarei sola in quella stanzetta del manicomio....
> dunque, questo il mio tentativo
>
> Set rs = CurrentDb.OpenRecordset("SELECT Count([PARTITA IVA]) AS Tot FROM
> [FATTURE ACQUISTO] GROUP BY[PARTITA IVA], [FATTURA NUMERO] HAVING [PARTITA
> IVA]=" & Chr(34) & strDlk & Chr(34) & " AND [FATTURA NUMERO]=" & Me.[NUM
> FT])
>
> ma errore di run time 3464 , "tipi di dati non corrispondenti
> nell'espressione criterio"
>
> ho provato senza chr ma neanche...
>
> sono da uccidere anche stavolta o basta qualche insulto? ;-)
>
> Giorgia
Qualche insulto basta! :D
Perch� quando c'�ra 34 al posto di Me.[NUM FT] la trattavi come testo
e nel tuo SQL lo vuoi trattare come numero?
se mettevi ='34' usando gli apici, vuol dire che era e quindi � un
testo... per cui:
".... AND [FATTURA NUMERO]=" & chr(34) & Me.[NUM FT] & chr(34))
prova
grandi notizie!
funziona tutto a meraviglia!
e ho finito di farvi ammattire!!
grazie mille per la pazienza!
Giorgia


author: Carlo Costarella

text:
"Giorgia" <
gio...@vitaletrasporti.com
> ha scritto nel messaggio
>cut grandi notizie!
> funziona tutto a meraviglia!
> e ho finito di farvi ammattire!!
> grazie mille per la pazienza!
>
> Giorgia
In realt� devi ringraziare solo Pablitomf che ti ha preso in carico fino
alla soluzione...Gli altri si sono arresi quasi subito.
Ciao, Carlo


title: raggruppamento in report...problemi

author: Rasputin

text:
salve a tutti... spero di riuscire a spiegare il mio problema...
ho un report in cui ho fatto il raggruppamento in quanto
nel corpo del report mi deve stampare il dettaglio dei prodotti
+ le quantitą... esempio...-
pane    100
latte        50
burro    200
ebbene noto che stampando il report  mi raddoppia tutti i prodotti in
questo modo...
pane    100
latte        50
burro    200
pane    100
latte        50
burro    200
come potrei risolvere ???
Grazie a tutti per l'aiuto


title: raggruppamento in report...problemi

author: Marco Pizzamiglio

text:
Rasputin ha scritto:




Verifica la query origine dati del report, probabilmente hai inserito un
campo di troppo con formula "Raggruppamento", o manca qualche relazione.
Aprila, ordinala e vedi se restituisce i record giusti o se li duplica.
Ciao.
-Marco-
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: raggruppamento in report...problemi

text:
"Marco Pizzamiglio" <
marco.pi...@gmail.com
> ha scritto nel
messaggio news:fopl76
>> ho un report in cui ho fatto il raggruppamento in quanto
>> nel corpo del report mi deve stampare il dettaglio dei prodotti
>> + le quantità... esempio...-
>> pane    100
>> latte        50
>> burro    200
>
>> ebbene noto che stampando il report  mi raddoppia tutti i prodotti in
>> questo modo...
>
>> pane    100
>> latte        50
>> burro    200
>> pane    100
>> latte        50
>> burro    200
>
>> come potrei risolvere ???
>> Grazie a tutti per l'aiuto
>
>
> Verifica la query origine dati del report, probabilmente hai inserito
> un
> campo di troppo con formula "Raggruppamento", o manca qualche
> relazione.
> Aprila, ordinala e vedi se restituisce i record giusti o se li
> duplica.
> Ciao.
> -Marco-
-------------
ciao Marco e grazie per aver risposto... sono cmq molto poco pratico di
access..
sono andato a vedere nella query di origine ed ho tolto il
raggruppamento a prodotto
e quantità.. ma il report non si apre più in quanto manca una funzione
di aggregazione...
potrei scegliere qualche altra voce nel menu ??
non è che il problema stà nel fatto che il raggruppamento è fatto sia
dalla query che dal report ??
Ciao


title: raggruppamento in report...problemi

text:
Rasputin ha scritto:


> ciao Marco e grazie per aver risposto... sono cmq molto poco pratico di
> access..
> sono andato a vedere nella query di origine ed ho tolto il
> raggruppamento a prodotto
> e quantità.. ma il report non si apre più in quanto manca una funzione
> di aggregazione...
> potrei scegliere qualche altra voce nel menu ??
> non è che il problema stà nel fatto che il raggruppamento è fatto sia
> dalla query che dal report ??
> Ciao
Se usi le funzioni di raggruppamento in una query devi per forza inserire
qualcosa nella riga "Formula", non puoi lasciarla vuota.
Metti Raggruppamento sotto il prodotto e Somma sotto la quantità.
Probabilmente ci sono anche altri campi, prova a toglierli dalla query o
se ti servono per impostare criteri mettici come formula "Dove".
Se hai impostato ordinamenti nella query toglili, per il report non
servono, vanno impostati in "Ordinamento e raggruppamento".
Quello che hai impostato nel report sotto "Ordinamento e raggruppamento"
non c'entra con questo problema, non ti può duplicare i record in quel
modo, serve solo per ordinare e creare livelli di gruppo.



title: raggruppamento in report...problemi

text:
"Marco Pizzamiglio" <
marco.pi...@gmail.com
> ha scritto nel
messaggio
[[  CUT ]]
> Se usi le funzioni di raggruppamento in una query devi per forza
> inserire
> qualcosa nella riga "Formula", non puoi lasciarla vuota.
e questo Ok...
> Metti Raggruppamento sotto il prodotto e Somma sotto la quantità.
provato ma mi provoca un errore dicendomi in altra finestrella datada
ed al posto delle quantità mi esce l'anno...
> Probabilmente ci sono anche altri campi, prova a toglierli dalla query
> o
> se ti servono per impostare criteri mettici come formula "Dove".
fatto ma ho vari errori
> Se hai impostato ordinamenti nella query toglili, per il report non
> servono, vanno impostati in "Ordinamento e raggruppamento".
> Quello che hai impostato nel report sotto "Ordinamento e
> raggruppamento"
> non c'entra con questo problema, non ti può duplicare i record in quel
> modo, serve solo per ordinare e creare livelli di gruppo.
> -Marco-
ok... ma penso la query sia troppa elaborata...in tutti i campi vi è il
raggruppamento
e solo nel campo DataScad (espressione) e DataFine (Dove)...
ad ogni buon conto ti mando il codice SQL..
ciao e grazie
SELECT assistiti.cognome+" "+assistiti.nome AS assistito,
comuni.comune+" "+IIf(IsNull(assistiti.via),"",assistiti.via) AS
indirizzo,
assistiti.cf
, esenzioni.codMinisteriale, prodotti.prodotto,
prodottiPrescritti.quantita, Prescrizione.Motivo,
prodottiPrescritti.codPrescrizione, Max(ricette.dataInizio+[durata]) AS
dataScad, Prescrizione.dataInizio
FROM prodotti INNER JOIN (((esenzioni INNER JOIN (comuni INNER JOIN
(assistiti INNER JOIN Prescrizione ON
assistiti.cf
 = Prescrizione.cf) ON
comuni.codComune = assistiti.comuneResidenza) ON esenzioni.codEsenzione
= Prescrizione.codEsenzione) INNER JOIN prodottiPrescritti ON
Prescrizione.codPrescrizione = prodottiPrescritti.codPrescrizione) LEFT
JOIN ricette ON Prescrizione.codPrescrizione = ricette.idPrescrizione)
ON prodotti.codProdotto = prodottiPrescritti.codProdotto
WHERE (((Prescrizione.dataFine) Is Null))
GROUP BY assistiti.cognome+" "+assistiti.nome, comuni.comune+"
"+IIf(IsNull(assistiti.via),"",assistiti.via),
assistiti.cf
,
esenzioni.codMinisteriale, prodotti.prodotto,
prodottiPrescritti.quantita, Prescrizione.Motivo,
prodottiPrescritti.codPrescrizione, Prescrizione.dataInizio;


title: raggruppamento in report...problemi

text:
Rasputin ha scritto:
> [[  CUT ]]

> e questo Ok...







E' troppo complicata, senza vedere la struttura e il contenuto delle
tabelle non ti so dire di preciso dov'è l'errore, ma se ti duplica i dati
manca una relazione tra due delle tabelle o un criterio sotto qualche
campo.
Prova a rifarla da zero, verificando passo a passo man mano che aggiungi
una tabella se restituisce i risultati che ti aspetti o se dà
qualcos'altro. Quando ti accorgi che duplica i dati sai che sull'ultima
tabella che hai aggiunto manca una relazione o un criterio.
Oppure parti dalla query già fatta e togli le tabelle una ad una, quando i
duplicati spariscono hai individuato il punto critico.
Ciao.



title: Utenti... Gestione da .ldb

author: Marco e Tony Dell'oste

text:
Ciao a tutti,
ho notato che il file .ldb registra tutte le 'presenze' nell'applicazione..
Mi chiedevo, posso in qualche modo 'estrarre' questi dati per potermeli
gestire??
Mi spiego meglio, ho creato un programma di cui sono l'amministratore,
talvolta mi capita di dover sospendere l'esecuzione di tale programma sul pc
'X'.
Attualmente il programma stesso contiene un modulo che mi chiude
l'applicativo sui pc che voglio (facendo un controllo sul nome del PC), però
devo ogni volta andare manualmente ad aprire il file .ldb, spulciare il nome
della macchina su cui voglio chiudere l'applicativo, e poi inserire il dato
in un form specifico del programma.
Posso in qualche altro modo estrarre questi dati direttamente da access???
(magari una volta estratti gestirli tramite una combo)
Grazie
Marco


title: Utenti... Gestione da .ldb

text:
"Marco e Tony Dell'oste" <
piet...@yahoo.com
> ha scritto nel messaggio
news:N1FL9.23874$TC5.7...@twister1.libero.it...

Beh, è un file Testo a tutti gli effetti, quindi creati una ROUTINETTA
che legge il file e separa nome utente e nome macchina........!
Sembra facile, ma in realtà il File.Ldb può non essere corretto, in quanto
viene generato dal primo utente che apre l'applicativo, aggiornato da ogni
ulteriore accesso, ma prova a vedere la sconnessione delgi utenti cosa
provoca, ovviamente non il primo che lo elimina......!!
Non viene aggiornato sul LOGOUT......!!!
Quindi se il tuo scopo è di sapere chi è collegato per fare il LOGOUT
credo devi usare un'altra strada.....!(Es una Tabella Accessi in un DB
accessi)
@Alex.


title: Utenti... Gestione da .ldb

text:
> Beh, è un file Testo a tutti gli effetti, quindi creati una ROUTINETTA
> che legge il file e separa nome utente e nome macchina........!
suggerimenti di come farla??  io non ne ho la più pallida idea... neanche da
che parte iniziare..
Come faccio a leggere il file ed a separare i dati da access?????????
Il fatto che il file non venga aggiornato non mi crea alcun problema, vorrà
dire che se l'applicazione su X pc è gia chiusa finche ne ho bisogno non
sarà possibile riaprirla.. (non so se mi sono capito..  ;)))  )
> Sembra facile, ma in realtà il File.Ldb può non essere corretto, in quanto
> viene generato dal primo utente che apre l'applicativo, aggiornato da ogni
> ulteriore accesso, ma prova a vedere la sconnessione delgi utenti cosa
> provoca, ovviamente non il primo che lo elimina......!!
> Non viene aggiornato sul LOGOUT......!!!
> Quindi se il tuo scopo è di sapere chi è collegato per fare il LOGOUT
> credo devi usare un'altra strada.....!(Es una Tabella Accessi in un DB
> accessi)
Un altro motivo per cui preferisco questa strada è il fatto che non serve un
identificativo per accedere all'applicazione, cosi chiunque potrà averne
accesso senza dover digitare una password o un nome utente, almeno in questa
fase dell'applicativo..
Ciao
Pardon, credo di avertelo inviato per mail prima....  excuse me
Marco


title: Utenti... Gestione da .ldb

author: Giorgio prx

text:
"Marco e Tony Dell'oste" <
piet...@yahoo.com
> ha scritto nel messaggio
news:T%KL9.25520$Ou4.7...@twister2.libero.it...

Ciao Marco se vuoi un esempiosu come estrarre i nomi utenti dal file LDB
cerca il Thread di Tony Bragagnolo del   27 Nov 2002  con Soggetto:
Controllare chi è Loggato.
Ciao Giorgio.


title: Utenti... Gestione da .ldb

text:
> Ciao Marco se vuoi un esempiosu come estrarre i nomi utenti dal file LDB
> cerca il Thread di Tony Bragagnolo del   27 Nov 2002  con Soggetto:
> Controllare chi č Loggato.
Grazie,
Ho cercato ma non sono riuscito a trovare niente o almeno non una risposta..
:(
potresti farmi un copia ed incolla qui nel NG??
Ti ringrazio
> Ciao Giorgio.
>
Ciao, grazie
Marco


title: Utenti... Gestione da .ldb

text:
"Marco e Tony Dell'oste" <
piet...@yahoo.com
> ha scritto nel messaggio
news:I43M9.29080$Ou4.8...@twister2.libero.it...

Ciao Marco ti posto l'esempio che avevo suggerito a Tony.
---------------------------------------------
Ciao Tony, ti posto un esempio di codice per ottenere una stringa con il
nome dei computer name che accedono al DB.
Dim stringa As Variant
Dim Utenti As Variant
Dim Utente As Variant
Dim i As Integer
Dim fs As Object
Dim f As Object
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.OpenTextFile("c:\database.ldb", 1, 0)
stringa = f.Read(640)  'Poniamo di leggere max 640 byte pari a 10 utenti
f.Close
'eseguo un loop per la lettura dei record da 64 Byte
For i = 0 To Len(stringa) / 64 - 1
      Utente = Trim(Mid(stringa, i * 64 + 1, 30))   'nei primi 30 caratteri
del record c'e il computer_name
      Utente = Left(Utente, InStr(Utente, Chr(0)) - 1) 'Filtro il carattere
di fine stringa
      Utenti = Utenti + Utente + vbCrLf  'Lo accodo a Utenti
Next
MsgBox Utenti     'Stampo l'elenco
Set f = Nothing
Set fs = Nothing
Lo svantaggio di questa tecnica č che se tre utenti aprono il database e
successivamente due utenti lo chiudono, la lista č sempre composta da tre
utenti perché il file LDB viene azzerato all'uscita dell'ultimo utente.
Ciao Giorgio


title: Utenti... Gestione da .ldb

text:
[MegaCUT]

> Lo svantaggio di questa tecnica è che se tre utenti aprono il database e
> successivamente due utenti lo chiudono, la lista è sempre composta da tre
> utenti perché il file LDB viene azzerato all'uscita dell'ultimo utente.
Mille grazie, ...provato, adattato alle esigenze ed inserito.. funzia alla
meraviglia!!!!!
> Ciao Giorgio
Ciao
Marco


title: Utenti... Gestione da .ldb

text:
[CUTone]
Prevedendo che l'applicazione potesse venire spostata, ho pensato di fare
una modifica alla linea qui sotto...
> Set f = fs.OpenTextFile("c:\database.ldb", 1, 0)
con
Set f = fs.OpenTextFile(GetAppDir, 1, 0)
Dove GetAppDir č:
Public Function GetAppDir()
    GetAppDir = Left(CurrentDb.Name, Len(CurrentDb.Name) -
Len(Dir(CurrentDb.Name)))
End Function
GetAppDir restituisce la path esatta, ma perche continua perņ a darmi
errore??
Ho anche provato ad inserire un
Dim dir
dir = GetAppDir
e chiaramente
Set f = fs.OpenTextFile(dir, 1, 0)
Tutto con esito negativo!!!
Esiste soluzione???
Grazie, ciao
Marco


title: Utenti... Gestione da .ldb

text:
"Marco e Tony Dell'oste" <
piet...@yahoo.com
> ha scritto nel messaggio
news:bmPM9.36868$TC5.1...@twister1.libero.it...
> [CUTone]
>
> Prevedendo che l'applicazione potesse venire spostata, ho pensato di fare
> una modifica alla linea qui sotto...
>
> > Set f = fs.OpenTextFile("c:\database.ldb", 1, 0)
> con
> Set f = fs.OpenTextFile(GetAppDir, 1, 0)
>
> Dove GetAppDir è:
>
> Public Function GetAppDir()
>     GetAppDir = Left(CurrentDb.Name, Len(CurrentDb.Name) -
> Len(Dir(CurrentDb.Name)))
> End Function
>
>
> GetAppDir restituisce la path esatta, ma perche continua però a darmi
> errore??
>
> Ho anche provato ad inserire un
>
> Dim dir
> dir = GetAppDir
>
> e chiaramente
>
> Set f = fs.OpenTextFile(dir, 1, 0)
>
> Tutto con esito negativo!!!
>
> Esiste soluzione???
>
> Grazie, ciao
>
> Marco
>
>
Ciao Marco, vista l'ora del tuo post posso comprendere la svista
(naturalmente scherzo).
La tua funzione GetAppDir() restituisce solo il path dell'applicazione (Non
puoi aprire il path per leggerne il contenuto),  devi aprire il file LDB del
database in esame che nel tuo caso è l'applicazione stessa.
Visto che GetAppDir può esserti utile in futuro crea una nuova finzione tipo
.....
Public Function GetAppLDB() as String
    GetAppLDB = Left(CurrentDb.Name, Len(CurrentDb.Name) - 4) + ".LDB"
End Function
In questo modo otterrai il nome del file LDB da aprire.
Ciao Giorgio.


title: Utenti... Gestione da .ldb

text:
> Ciao Marco, vista l'ora del tuo post posso comprendere la svista
> (naturalmente scherzo).
> La tua funzione GetAppDir() restituisce solo il path dell'applicazione
(Non
> puoi aprire il path per leggerne il contenuto),  devi aprire il file LDB
del
> database in esame che nel tuo caso è l'applicazione stessa.
> Visto che GetAppDir può esserti utile in futuro crea una nuova finzione
tipo
> .....
>
> Public Function GetAppLDB() as String
>
>     GetAppLDB = Left(CurrentDb.Name, Len(CurrentDb.Name) - 4) + ".LDB"
>
> End Function
>
> In questo modo otterrai il nome del file LDB da aprire.
>
> Ciao Giorgio.
Effettivamente ero un po' andato..
ma che dico andato....     PO'   ;)))))))
Ora gira a meraviglia!!!!!
Grazie e buone feste
Ciao, Marco


title: Crea link a form specifica in db, all'interno di body email

author: bigcef

text:
Ciao a tutti,
avrei l'esigenza di inviare un' email che contenga nel corpo un
collegamento ipertestuale a una specifica maschera di un mdb. Questa
soluzione sarà adottata all'interno di rete aziendale, pertanto chi
riceve l'email, cliccando sul lik, aprirà proprio la maschera
specificata.
Per l'invio dell'email non ci sono problemi, ma non so in VBA creare
il link con le specifiche richieste.
Grazie


author: Alessandro Cara

text:
Il 05/07/2011 16.09, bigcef ha scritto:
> Ciao a tutti,
> avrei l'esigenza di inviare un' email che contenga nel corpo un
> collegamento ipertestuale a una specifica maschera di un mdb. Questa
> soluzione sar� adottata all'interno di rete aziendale, pertanto chi
> riceve l'email, cliccando sul lik, aprir� proprio la maschera
> specificata.
>
> Per l'invio dell'email non ci sono problemi, ma non so in VBA creare
> il link con le specifiche richieste.
> Grazie
Mi togli una curiosita'?
Chi ha avuto questa idea? In base a quale ragionamento (e ambiente
locale) e' possibile? Tutto cio' aldila' dell'eventuale codice VBA
richiesto.
--
ac (x=y-1)


text:
On 5 Lug, 18:25, Alessandro Cara <
alessandro.c...@ay-1anetwork.it
>
wrote:
> Il 05/07/2011 16.09, bigcef ha scritto:
>
> > Ciao a tutti,
> > avrei l'esigenza di inviare un' email che contenga nel corpo un
> > collegamento ipertestuale a una specifica maschera di un mdb. Questa
> > soluzione sarà adottata all'interno di rete aziendale, pertanto chi
> > riceve l'email, cliccando sul lik, aprirà proprio la maschera
> > specificata.
>
> > Per l'invio dell'email non ci sono problemi, ma non so in VBA creare
> > illinkcon le specifiche richieste.
> > Grazie
>
> Mi togli una curiosita'?
> Chi ha avuto questa idea? In base a quale ragionamento (e ambiente
> locale) e' possibile? Tutto cio' aldila' dell'eventuale codice VBA
> richiesto.
>
> --
>
> ac (x=y-1)
Ciao Alessandro,
ho un file vbs che messo in operazioni pianificate di windows manda
una serie di email ad utenti di rete.
Il contenuto dell'email è una specie di memo cui è associato in
idmemo, generata automaticamente dall'amministratore, che contiene
anche il campo eseguito o no ed un campo descrizione
Io vorrei essendo magari il destinatario di tale email, aprire una
form del database che contiene idmemo ricevuta e flaggare eseguito.


text:
Il 05/07/2011 18.31, bigcef ha scritto:
> On 5 Lug, 18:25, Alessandro Cara<
alessandro.c...@ay-1anetwork.it
>
> wrote:
>> Il 05/07/2011 16.09, bigcef ha scritto:
>>
>>> Ciao a tutti,
>>> avrei l'esigenza di inviare un' email che contenga nel corpo un
>>> collegamento ipertestuale a una specifica maschera di un mdb. Questa
>>> soluzione sar� adottata all'interno di rete aziendale, pertanto chi
>>> riceve l'email, cliccando sul lik, aprir� proprio la maschera
>>> specificata.
>>
>>> Per l'invio dell'email non ci sono problemi, ma non so in VBA creare
>>> illinkcon le specifiche richieste.
>>> Grazie
>>
>> Mi togli una curiosita'?
>> Chi ha avuto questa idea? In base a quale ragionamento (e ambiente
>> locale) e' possibile? Tutto cio' aldila' dell'eventuale codice VBA
>> richiesto.
>>
>> --
>>
>> ac (x=y-1)
>
> Ciao Alessandro,
> ho un file vbs che messo in operazioni pianificate di windows manda
> una serie di email ad utenti di rete.
> Il contenuto dell'email � una specie di memo cui � associato in
> idmemo, generata automaticamente dall'amministratore, che contiene
> anche il campo eseguito o no ed un campo descrizione
> Io vorrei essendo magari il destinatario di tale email, aprire una
> form del database che contiene idmemo ricevuta e flaggare eseguito.
Sei cosciente che per aprire access lo devi avere sull'ambiente locale?
o essere in un ambiente di tipo terminal server?
Discorso diverso e se, in qualche modo, riesci a mandare una
segnalazione ad un access attivo (o da far partire) e chierdergli di
aggiornare un qualcosa su una sorgente dati, il form a quel punto e' una
sovrastruttura inutile. Tutto cio' probabilmente e' difficile da
ottenere con un semplice link. Normalmente i link attivano il programma
di default per l'estensione (o per il protocollo indicato) e possono
avere parametri che dicono al programma target che cosa fare, mai
provato con access.
E' possibile, comunque, fare del "clouding" con un access in ascolto di
qualche segnalazione che lo attivi.
--
ac (x=y-1)


text:
On 5 Lug, 19:41, Alessandro Cara <
alessandro.c...@ay-1anetwork.it
>
wrote:
> Il 05/07/2011 18.31, bigcef ha scritto:
>
>
>
>
>
>
>
>
>
> > On 5 Lug, 18:25, Alessandro Cara<
alessandro.c...@ay-1anetwork.it
>
> > wrote:
> >> Il 05/07/2011 16.09, bigcef ha scritto:
>
> >>> Ciao a tutti,
> >>> avrei l'esigenza di inviare un' email che contenga nel corpo un
> >>> collegamento ipertestuale a una specifica maschera di un mdb. Questa
> >>> soluzione sarà adottata all'interno di rete aziendale, pertanto chi
> >>> riceve l'email, cliccando sul lik, aprirà proprio la maschera
> >>> specificata.
>
> >>> Per l'invio dell'email non ci sono problemi, ma non so in VBA creare
> >>> illinkcon le specifiche richieste.
> >>> Grazie
>
> >> Mi togli una curiosita'?
> >> Chi ha avuto questa idea? In base a quale ragionamento (e ambiente
> >> locale) e' possibile? Tutto cio' aldila' dell'eventuale codice VBA
> >> richiesto.
>
> >> --
>
> >> ac (x=y-1)
>
> > Ciao Alessandro,
> > ho un file vbs che messo in operazioni pianificate di windows manda
> > una serie di email ad utenti di rete.
> > Il contenuto dell'email è una specie di memo cui è associato in
> > idmemo, generata automaticamente dall'amministratore, che contiene
> > anche il campo eseguito o no ed un campo descrizione
> > Io vorrei essendo magari il destinatario di tale email, aprire una
> > form del database che contiene idmemo ricevuta e flaggare eseguito.
>
> Sei cosciente che per aprire access lo devi avere sull'ambiente locale?
> o essere in un ambiente di tipo terminal server?
> Discorso diverso e se, in qualche modo, riesci a mandare una
> segnalazione ad un access attivo (o da far partire) e chierdergli di
> aggiornare un qualcosa su una sorgente dati, il form a quel punto e' una
> sovrastruttura inutile. Tutto cio' probabilmente e' difficile da
> ottenere con un semplice link. Normalmente i link attivano il programma
> di default per l'estensione (o per il protocollo indicato) e possono
> avere parametri che dicono al programma target che cosa fare, mai
> provato con access.
> E' possibile, comunque, fare del "clouding" con un access in ascolto di
> qualche segnalazione che lo attivi.
>
> --
>
> ac (x=y-1)
Ciao Alessandro forse non è chiaro quanto espresso.
Il file vbs è residente sulle varie workstation aziendali interroga un
db di rete e in base a determinate criteri, invia all'utente di
exchange una email contenente un idmemo, una descrizione di quello che
bisogna fare e un testo effettuato si/no (campi del db centrale).
L'utente riceve questa email, che non è altro che un memo, e fino a
quando non dice aver effettuato l'attivià/email, questa viene
reinviata nuovamente all'utente. Di qui la necessità di dare al'utente
la possibilità di aprire in seno all'email direttamente il db
centrale, meglio la form con i dati che riguardano la sua idmemo e
cosi poterla chiudere flaggando eseguito si.
Immagina un servizio web in cui un server web centrale invii ad una
lista di utenti email contenenti i dati dei loro ordini. L'email
conterrà ad esempio il campo n.ordine e campo annulla ordine. l'utente
cliccando sul relativo link apre pagina web(nel mio caso form)ed
elimina magari il suo ordine.


text:

Grazie ho risolto, utilizzando vba outlook.
L'utente che riceve messaggio, se vuole chiudere il memo, esegue una
sub che legge idmemo nell'oggetto dell'email ed apre form
corrispondente(chiudimemo) dove idmemo=idmemo nell'oggetto email.
Rettifica il vbs schedulato risiede su server.
Grazie


author: Paolo opg

text:
bigcef <
val...@libero.it
> wrote in
news:1b45788e-c97e-4f67...@hd10g2000vbb.googlegroups.com
:
[cut]
>
> Ciao Alessandro forse non � chiaro quanto espresso.
> Il file vbs � residente sulle varie workstation aziendali interroga un
> db di rete e in base a determinate criteri, invia all'utente di
> exchange una email contenente un idmemo, una descrizione di quello che
> bisogna fare e un testo effettuato si/no (campi del db centrale).
> L'utente riceve questa email, che non � altro che un memo, e fino a
> quando non dice aver effettuato l'attivi�/email, questa viene
> reinviata nuovamente all'utente. Di qui la necessit� di dare al'utente
> la possibilit� di aprire in seno all'email direttamente il db
> centrale, meglio la form con i dati che riguardano la sua idmemo e
> cosi poterla chiudere flaggando eseguito si.
>
> Immagina un servizio web in cui un server web centrale invii ad una
> lista di utenti email contenenti i dati dei loro ordini. L'email
> conterr� ad esempio il campo n.ordine e campo annulla ordine. l'utente
> cliccando sul relativo link apre pagina web(nel mio caso form)ed
> elimina magari il suo ordine.
>
>
pare che tu abbia poche idee ma ben confuse...
hai un file vbs per ogni workstation che interroga un db centrale.
perche' non mettere il vbs sul server centrale invece che averne X copie
(suppongo identiche) spantegate per tutta la rete?
questo vbs manda l'email e poi l'utente deve agire mettendo un flag da
qualche parte.
facendo come hai ipotizzato tu, *DEVI* installare access o il runtime su
ogni e qualsiasi macchina che potrebbe essere utilizzata da un utente
'ricevitore' delle email, assicurarti che il mdb e access siano sempre
nello stesso percorso, mettere in piedi un accrocchio che ti permetta di
aprire access tramite un link, scardinare i meccanismi di protezione che
molti client di posta hanno e che impediscono di lanciare eseguibili
senza prima chiederti conferma di ogni click che fai.
e tutto questo casino per mettere un flag?
fai una pagina asp in vb e nell'email metti il link a quella pagina.
--
Paolo opg
BE AWARE that this post uses a fake reply-to address
to contact me write to:
janickg ( at ) hotmail ( dot ) com
--


text:
Il 05/07/2011 21.02, bigcef ha scritto:
> On 5 Lug, 19:41, Alessandro Cara<
alessandro.c...@ay-1anetwork.it
>
> wrote:
>> Il 05/07/2011 18.31, bigcef ha scritto:
[cut]
>> Sei cosciente che per aprire access lo devi avere sull'ambiente locale?
>> o essere in un ambiente di tipo terminal server?
>> Discorso diverso e se, in qualche modo, riesci a mandare una
>> segnalazione ad un access attivo (o da far partire) e chierdergli di
>> aggiornare un qualcosa su una sorgente dati, il form a quel punto e' una
>> sovrastruttura inutile. Tutto cio' probabilmente e' difficile da
>> ottenere con un semplice link. Normalmente i link attivano il programma
>> di default per l'estensione (o per il protocollo indicato) e possono
>> avere parametri che dicono al programma target che cosa fare, mai
>> provato con access.
>> E' possibile, comunque, fare del "clouding" con un access in ascolto di
>> qualche segnalazione che lo attivi.
>
> Ciao Alessandro forse non � chiaro quanto espresso.
> Il file vbs � residente sulle varie workstation aziendali interroga un
> db di rete e in base a determinate criteri, invia all'utente di
> exchange una email contenente un idmemo, una descrizione di quello che
> bisogna fare e un testo effettuato si/no (campi del db centrale).
> L'utente riceve questa email, che non � altro che un memo, e fino a
> quando non dice aver effettuato l'attivi�/email, questa viene
> reinviata nuovamente all'utente. Di qui la necessit� di dare al'utente
> la possibilit� di aprire in seno all'email direttamente il db
> centrale, meglio la form con i dati che riguardano la sua idmemo e
> cosi poterla chiudere flaggando eseguito si.
Forse non mi sono spiegato.
"Per aprire la form access devi essere su un sistema che ha installato
access o il suo run-time!"
Non mi risulta che si possa aprire access e vedere il form se non
esistono le condizioni precedenti a meno, ripeto, di non avere un client
virtuale del server (termina server/xpunlimited).
Ed anche cio' presupposto, il semplice link non credo sia in grado di
fare cio' che vuoi anche se e' possibile avviare access in linea di
comando con parametri.
>
> Immagina un servizio web in cui un server web centrale invii ad una
> lista di utenti email contenenti i dati dei loro ordini. L'email
> conterr� ad esempio il campo n.ordine e campo annulla ordine. l'utente
> cliccando sul relativo link apre pagina web(nel mio caso form)ed
> elimina magari il suo ordine.
Appunto! Access "non" e' sinonimo di web. Ed anche nel caso del web hai
un server (iis/apache o quello che e') ed un browser (IE/Firefox o
quello che e'). Ambedue sono intelligenti e sono pensati apposta per
comunicare via HTML (javascript -lato client- vbs/php/java/etc.. -lato
server- sono utili Helpers) generalmente sulla porta 80.
Non mi risulta che ci sia un addin che faccia vedere access nel browser
come per pdf o excel) altrimenti non staremmo qui, come -ora- si suol
dire, a smacchiare i giaguari.
Quello che puoi fare e' una *ricca* pagina web (asp/
asp.net
 immagino)
che risponda al link inviando i dati richiesti (form html) e
consentendone la manipolazione.
L'altra possibile cosa e' che la risposta, non conosco exchange e potrei
dire corbellerie, venga avviata ad un utente fittizio di exchange
conosciuto dal vbs che se ne prende carico, il vbs intendo, ed in "blind
side", cioe' senza che l'utente veda nulla, chieda al server access di
fare gli aggiornamenti del caso ed eventualmente inviare la conferma. Su
questo sono possibili situazioni diverse quasi pari alle Variazioni
Goldberg o le vedute del Monte Fuji
P.S. Non comprendo la necessita' del vbs installato su ogni stazione, a
occhio, la cosa puo' farla tranquillamente il server access.
P.P.S. Non hai pero' risposto alle mie domande iniziali. Non c'e'
obbligo ma cortesia..... ;-{)
--
ac (x=y-1)


text:
On 6 Lug, 10:10, Alessandro Cara <
alessandro.c...@ay-1anetwork.it
>
wrote:
> Il 05/07/2011 21.02, bigcef ha scritto:> On 5 Lug, 19:41, Alessandro Cara<
alessandro.c...@ay-1anetwork.it
>
> > wrote:
> >> Il 05/07/2011 18.31, bigcef ha scritto:
>
> [cut]
>
>
>
> >> Sei cosciente che per aprire access lo devi avere sull'ambiente locale?
> >> o essere in un ambiente di tipo terminal server?
> >> Discorso diverso e se, in qualche modo, riesci a mandare una
> >> segnalazione ad un access attivo (o da far partire) e chierdergli di
> >> aggiornare un qualcosa su una sorgente dati, il form a quel punto e' una
> >> sovrastruttura inutile. Tutto cio' probabilmente e' difficile da
> >> ottenere con un semplice link. Normalmente i link attivano il programma
> >> di default per l'estensione (o per il protocollo indicato) e possono
> >> avere parametri che dicono al programma target che cosa fare, mai
> >> provato con access.
> >> E' possibile, comunque, fare del "clouding" con un access in ascolto di
> >> qualche segnalazione che lo attivi.
>
> > Ciao Alessandro forse non è chiaro quanto espresso.
> > Il file vbs è residente sulle varie workstation aziendali interroga un
> > db di rete e in base a determinate criteri, invia all'utente di
> > exchange una email contenente un idmemo, una descrizione di quello che
> > bisogna fare e un testo effettuato si/no (campi del db centrale).
> > L'utente riceve questa email, che non è altro che un memo, e fino a
> > quando non dice aver effettuato l'attivià/email, questa viene
> > reinviata nuovamente all'utente. Di qui la necessità di dare al'utente
> > la possibilità di aprire in seno all'email direttamente il db
> > centrale, meglio la form con i dati che riguardano la sua idmemo e
> > cosi poterla chiudere flaggando eseguito si.
>
> Forse non mi sono spiegato.
> "Per aprire la form access devi essere su un sistema che ha installato
> access o il suo run-time!"
> Non mi risulta che si possa aprire access e vedere il form se non
> esistono le condizioni precedenti a meno, ripeto, di non avere un client
> virtuale del server (termina server/xpunlimited).
> Ed anche cio' presupposto, il semplice link non credo sia in grado di
> fare cio' che vuoi anche se e' possibile avviare access in linea di
> comando con parametri.
>
>
>
> > Immagina un servizio web in cui un server web centrale invii ad una
> > lista di utenti email contenenti i dati dei loro ordini. L'email
> > conterrà ad esempio il campo n.ordine e campo annulla ordine. l'utente

Vorrei ribadire che il file vbs è installato su server, dove anche
risiede mdb, quindi non sulle singole postazioni.
Tutte le postazioni sono dotate di Ms Access ed Ms Outlook, sotto
dominio Windows 2003 server, posta gestita con Ms Exchange.
Attraverso quanto esposto l'amministratore di rete scrivi una serie di
memo per vari utenti, questi memo, che sono email, vengono inviate
attraverso vbs a determinati orari agli utenti.
Questi email/memo continueranno ad essre inviate fion a quando
l'utente non chiude il memo.
Di seguito la soluzione adottata che funziona.
La seguente Sub risiede all'interno di OutLook.
Public Sub leggi() 'leggi il subject messaggio corrente
Dim myOlApp As New Outlook.Application 'OUTLOOK
Dim myItem As Object
Dim Assnum As String 'idmemo contenuto in oggetto
Dim subj As String
Set myItem = myOlApp.ActiveInspector.CurrentItem
subj = myItem.Subject
Assnum = ""
If InStr(subj, "/") Then
Assnum = Left(subj, InStr(subj, "/") - 1)
Else
Assnum = ""
End If
'Debug.Print "subject:  " & subj  'legge  il  soggetto
'MsgBox "subject:  " & subj  'legge  il  soggetto
'MsgBox "Assegnazione N: " & Assnum
'Passo ad ACCESS
If Assnum = "" Then
Exit Sub
Else
Dim AppAccess As Access.Application 'ACCESS
Dim stLinkCriteria As String
Set AppAccess = Access.Application
AppAccess.Visible = True
AppAccess.Application.OpenCurrentDatabase ("C:\Contatti.mdb")
stLinkCriteria = "[IDMemo]=" & Assnum
AppAccess.DoCmd.OpenForm "FrmElencaMemo", , , stLinkCriteria
End If
Set AppAccess = Nothing
Set myItem = Nothing
End Sub
Ciao


text:
bigcef ha scritto:
[CUTTONE]
> End Sub
Brrrrrrrrrrrrrrrrr... hai scomodato il VBA di Outlook per una cosetta del
genere?... non voglio sminuire, mai sia, ma hai il server IIS (visto che
hai Exchange) per cui, perche' non fare nella inetpub/wwwroot una bella
paginetta FLAG.asp alla quale passi il paramentro IDMEMO, dove apri la
connessione al DB specifico, e lanci un bel "UPDATE " di un SQL
parametrizzato con un bel "...WHERE IDMEMO=" & tuoparametro ?
cos� nel testo della mail basta semplicemente che ad ogni utente si invia
il link alla pagina :
http://tuoindirizzoip/TuaPath/FLAG.asp?IDMEMO=123456
l'utente clicca e il sistema fa tutto da solo...
facile no?
--
Ciao
Pablitomf
-----------------------------------
Napoli nel "Q"uore.... sempre e comunque.
-----------------------------------
Chi parla senza modestia trover� difficile rendere buone le proprie parole.
Confucio
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


text:
On 6 Lug, 17:18,
pablit...@hotmail.it
 (Pablitomf) wrote:
> bigcef ha scritto:
>
> [CUTTONE]
>
> > End Sub
>
> Brrrrrrrrrrrrrrrrr... hai scomodato il VBA di Outlook per una cosetta del
> genere?... non voglio sminuire, mai sia, ma hai il server IIS (visto che
> hai Exchange) per cui, perche' non fare nella inetpub/wwwroot una bella
> paginetta FLAG.asp alla quale passi il paramentro IDMEMO, dove apri la
> connessione al DB specifico, e lanci un bel "UPDATE " di un SQL
> parametrizzato con un bel "...WHERE IDMEMO=" & tuoparametro ?
>
> così nel testo della mail basta semplicemente che ad ogni utente si invia
> il link alla pagina :
http://tuoindirizzoip/TuaPath/FLAG.asp?IDMEMO=123456
> l'utente clicca e il sistema fa tutto da solo...
>
> facile no?
>
> --
> Ciao
> Pablitomf
> -----------------------------------
> Napoli nel "Q"uore.... sempre e comunque.
> -----------------------------------
> Chi parla senza modestia troverà difficile rendere buone le proprie parole.
> Confucio
>
> questo articolo e` stato inviato via web dal servizio gratuitohttp://
www.newsland.it/newssegnala
 gli abusi ad
ab...@newsland.it
Ciao la soluzione da te proposta, era stata già presa in
considerazione e sicuramente era molto più semplice e pulita, ma è
stata scartata e non conosco il perchè.
Qualora aavessi suggerimenti sul codice da me postato, non lesinare in
rimproveri e correzioni, io imparo da voi.
Grazie


text:
Il 06/07/2011 16.47, bigcef ha scritto:
> On 6 Lug, 10:10, Alessandro Cara<
alessandro.c...@ay-1anetwork.it
>
> wrote:
>> Il 05/07/2011 21.02, bigcef ha scritto:>  On 5 Lug, 19:41, Alessandro Cara<
alessandro.c...@ay-1anetwork.it
>
>>> wrote:
>>>> Il 05/07/2011 18.31, bigcef ha scritto:
>>
>> [cut]
>>
>>
>>
>>>> Sei cosciente che per aprire access lo devi avere sull'ambiente locale?
>>>> o essere in un ambiente di tipo terminal server?
>>>> Discorso diverso e se, in qualche modo, riesci a mandare una
>>>> segnalazione ad un access attivo (o da far partire) e chierdergli di
>>>> aggiornare un qualcosa su una sorgente dati, il form a quel punto e' una
>>>> sovrastruttura inutile. Tutto cio' probabilmente e' difficile da
>>>> ottenere con un semplice link. Normalmente i link attivano il programma
>>>> di default per l'estensione (o per il protocollo indicato) e possono
>>>> avere parametri che dicono al programma target che cosa fare, mai
>>>> provato con access.
>>>> E' possibile, comunque, fare del "clouding" con un access in ascolto di
>>>> qualche segnalazione che lo attivi.
>>
>>> Ciao Alessandro forse non � chiaro quanto espresso.
>>> Il file vbs � residente sulle varie workstation aziendali interroga un
>>> db di rete e in base a determinate criteri, invia all'utente di
>>> exchange una email contenente un idmemo, una descrizione di quello che
>>> bisogna fare e un testo effettuato si/no (campi del db centrale).
>>> L'utente riceve questa email, che non � altro che un memo, e fino a
>>> quando non dice aver effettuato l'attivi�/email, questa viene
>>> reinviata nuovamente all'utente. Di qui la necessit� di dare al'utente
>>> la possibilit� di aprire in seno all'email direttamente il db
>>> centrale, meglio la form con i dati che riguardano la sua idmemo e
>>> cosi poterla chiudere flaggando eseguito si.
>>
>> Forse non mi sono spiegato.
>> "Per aprire la form access devi essere su un sistema che ha installato
>> access o il suo run-time!"
>> Non mi risulta che si possa aprire access e vedere il form se non
>> esistono le condizioni precedenti a meno, ripeto, di non avere un client
>> virtuale del server (termina server/xpunlimited).
>> Ed anche cio' presupposto, il semplice link non credo sia in grado di
>> fare cio' che vuoi anche se e' possibile avviare access in linea di
>> comando con parametri.
>>
>>
>>
>>> Immagina un servizio web in cui un server web centrale invii ad una
>>> lista di utenti email contenenti i dati dei loro ordini. L'email
>>> conterr� ad esempio il campo n.ordine e campo annulla ordine. l'utente

> Vorrei ribadire che il file vbs � installato su server, dove anche

Uhmmmm..... tutto cio' comincia ad entrarci poco con access.
Comunque qui:
http://msdn.microsoft.com/en-us/library/aa171218%28v=office.11%29.aspx
c'e' il reference ad Outlook su un evento che potrebbe fare al tuo caso.
Non conosco Outlook se non per il fatto che invia e riceve posta.
Leggendo il codice della sub mi sembra che gia' faccia una apertura di
mdb ed una attivazione di form e', quindi, quasi tutto fatto e'
necessario solo attivarla passandogli un parametro che potrebbe essere
catturato dalla gestione dell'evento.
Da quello che scrivi mi pare di capire che  Outlook su *tutte* le
stazioni e' customizzato con quella routine.
--
ac (x=y-1)


text:
On 6 Lug, 20:40, Alessandro Cara <
alessandro.c...@ay-1anetwork.it
>

Ciao Alessandro,
confermo che Outlook su *tutte* le stazioni e' customizzato con quella
routine.
Ottimo il suggerimento
http://msdn.microsoft.com/en-us/library/aa171218%28v=office.11%29.aspx
Grazie di nuovo a tutti