Newsgroup: it.comp.appl.access
Titolo: adp access per sql server; errore 207 nome di colonna non valido

ciao a tutti!
spero che non vi stiate a spaccare troppo la testa su access o sul
lavoro in generale!
fuori c'è il sole e hano messo l'ora legale è il momento di
divertirsi!!!! (magari..)
cmq... io ho sto problema:
ho un db di access che ho scalato a slq server (un casino, raga... ho
dovuto riscrivere 200 e sono veramente 200 pagine di codice...)
ora mi rimane una cagatina che però non riesco a risolvere...
ho un docmd. open report con criteri dinamici (nel senso che ho una
variabile "pippo" il cui contenuto cambia a seconda della
interrogazione che faccio, ad esempio una volta vale "piattino di
ceramica" e un altra "elefante a 300 quintali") la cui sintassi va
cambiata anzichè nell'adp di access nel db di sql server, solo che non
trovo dove cavolo è stata messa da sql server la mia select!!!!!
qualcuno mi sa dire dove cavolo mette sql server le select che uno ha
su una maschera adp??
cmq mi viene restituito sto cavolo di errore: "errore 207: nome di
colonna non valido"
che pizza, sto fuso!!!
scusate lo sproloquio ma è domeica pure per me
ciao

 ha scritto nel messaggio 
news:1174838949....@o5g2000hsb.googlegroups.com...
spero che non vi stiate a spaccare troppo la testa su access o sul
lavoro in generale!
fuori c'č il sole e hano messo l'ora legale č il momento di
divertirsi!!!! (magari..)
qui invece piove e quindi ci stiamo spaccando ...
ora mi rimane una cagatina che perň non riesco a risolvere...
insomma usa un linguaggio piů appropriato... ci sono delle signore!
ho un docmd. open report con criteri dinamici (nel senso che ho una
variabile "pippo" il cui contenuto cambia a seconda della
interrogazione che faccio, ad esempio una volta vale "piattino di
ceramica" e un altra "elefante a 300 quintali") la cui sintassi va
cambiata anzichč nell'adp di access nel db di sql server, solo che non
trovo dove cavolo č stata messa da sql server la mia select!!!!!
qualcuno mi sa dire dove cavolo mette sql server le select che uno ha
su una maschera adp??
Il SQL che hai sulle maschere o nei report come origine dati non sta su SQL 
Server ma viene passato ogni volta a SQL Server, per questo non lo trovi
cmq mi viene restituito sto cavolo di errore: "errore 207: nome di
colonna non valido"
evidentemente hai un nome di colonna non valido per sql server 
nell'istruzione SQL
che pizza, sto fuso!!!
scusate lo sproloquio ma č domeica pure per me
...scusato!
ciao
Ciao
-- 
Cinzia [Office Access MVP]
_______________________
 
www.riolab.org
---------------------------------------- 

 ----------------------------------------
grazie cinzia;
il problema non è a mio avviso cosi:
1. se io modifico la sintassi sulla maschera, sql server dà sempre la
stessa risposta
2. i nomi di colonna sono corretti, il roblema è che sql server legge
la voce dell'attributo al posto dell'attributo:
m i spiego con un ex:
nome colomma= fiori
criterio= "[nome colonna]= margherita" (qui è semplificato ora la
sintassi corretta non la ricordo)
la stringa è Docmd.openreport "pippo", ...,...,... criterio
sql server mi legge come nome colonna margehrita per un problema
credo, di apici e virgolette, ma anche se provo a modificare il tutto
non ottengo cambiamenti se non nome di colonna "*" non valido.
mi sapete aiutare????
merci  a tutti
uli

 ha scritto nel messaggio 
news:1174913782....@n59g2000hsh.googlegroups.com...






Ciao ulisse,
allora non so se ho capito, vediamo se riesco a spiegarti quello che ho 
capito io:
Tu hai un'istruzione DoCmd.OpenReport a cui passi un criterio variabile e 
per farlo fai nell'ordine:
NomeColonna = fiori
criterio= "[nome colonna]= margherita"
Docmd.openreport "pippo", ...,...,... criterio
se la tua intenzione è quella di filtrare la query origine del report con il 
criterio fiori=Margherita, l'approccio è sbagliato perchè  quando scrivi
criterio="[nome colonna]= margherita"  è esattamente questo che viene 
passato a SQL Server e non fiori=Margherita che è quello che tu vorresti, 
per cui
seguendo la tua logica dovresti:
nomeColonna= fiori
criterio= NomeColonna & "='" & margherita & "'"
Docmd.openreport "pippo", ...,...,... criterio
-- 


 ha scritto nel messaggionews:1174913782....@n59g2000hsh.googlegroups.com...

scusa se ti rispondo solo ora ma sono al lavoro!!
il problema è più o meno come lo hai posto tu:
nomeColonna= fiori
criterio= NomeColonna & "='" & margherita & "'"
Docmd.openreport "pippo", ...,...,... criterio
cosi in access mi funziona ma non in sql server!!! mi restituisce
sempre nome colonna non valido!!!, perchè?
c'è una logica migliore? sai dirmi quale?
sei sicura che access non va mai su sql server?; infatti lui mi dà
nome colonna "*" non valido quando non gli metto nome colonna = fiori,
ma il nome colonna glielo faccio pescare da una casella combinata
sulla maschera!!
help me!!! please se puoi sai spiegarmi la logica e cosa c'entra qui
(se c'entra) sql server?
sto impazendo e sono 3 giorni che non dormo (e lo devo risolvere
altrimenti mi prendono a pedate!!!)
grazie molte!!!

 ha scritto nel messaggio 
news:1175075602.4...@p77g2000hsh.googlegroups.com...




grazie molte!!!
Ciao Ulisse,
nell'esempio che ti ho fatto io c'era in effetti un errore di sintassi, in 
effetti l'istruzione giusta sarebbe stata:
nomeColonna="fiori"
perchè nomeColonna = fiori senza virgolette verrebbe interpretato come 
assegna a NomeColonna il contenuto della variabile fiori che non essendo 
definta avrebbe dato Null come risultato ...
Forse è il caso che lavoriam sul caso sspecifico + che su esempi non troppo 
reali in quanto ho l'impressione ce così non ne usciamo.
Access va su SQL server ma gli invia l'istruzione che c'è come origine riga 
della maschera + il criterio, sostanzialmente se come origine del report 
hai: "select * From TabA"  gli invia un'istruzione che assomiglia a Select * 
From TabA Where  Criterio, il problema è che criterio deve avere la sintassi 
corretta di SQL Server e non di Access, per di più SQL server non ha nessuna 
conoscenza degli oggetti diAccess, per cui tu nel criterio non devi dare il 
nome del contenitore ma il contenuto.
Un modo x capire quello che sta succedendo e vedere che istruzione arriva a 
SQL è quello di utilizzare il SQL Server Profiler che mi pare sia presente 
anche nella versione Express.
Su 
www.donkarl.com/it
 Sezione CISA download CISA2 trovi un bell'articolo di 
Giorgio Rancati che spiega tutti questi "passaggi"


 ----------------------------------------
ok, grazie di tutto!

cut
ok, grazie di tutto!
------------------
Per un semplice ringraziamento č inutile ripostare tutti i messaggi 
precedenti.
Rammentalo la prossima volta!
Ciao, Carlo