Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
.NET Framework
[VB NET] errore nella query per parametro necessario
mercoledì 10 ottobre 2012 - 09.00
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
VB.NET
|
Visual Studio 2008
|
Access (.mdb)
caniggia
Profilo
| Newbie
3
messaggi | Data Invio:
mer 10 ott 2012 - 09:00
Ciao a tutti, chiedo aiuto perche ho questo messaggio all'esecuzione del mio software
"NESSUN VALORE SPECIFICATO PER ALCUNI PARAMETRI"
e precisamente in questa query:
QUESTA NON FUNZIONA:
-------------------------------------------------------------
select cstr( iif (len(Provvigione)=8,Provvigione , iif (len(Provvigione)=7, '0' & Provvigione , iif (len(Provvigione)=6, '00' & Provvigione , iif (len(Provvigione)=5, '000' & Provvigione , iif (len(Provvigione)=4, '0000' & Provvigione , iif (len(Provvigione)=1, '3112202' & Provvigione , Provvigione ) ) ) ) ))) as DataCorretta, Date() AS DataOdierna, DateDiff('d', cdate(Date()), cdate(mid(DataCorretta,1,2) & '/' & mid(DataCorretta,3,2) & '/' & mid(DataCorretta,5,4))) AS Dat, mid(DataCorretta,1,2) AS Dat1, mid(DataCorretta,3,2) AS Dat2, mid(DataCorretta,5,4) AS Dat3, cdate(mid(DataCorretta,1,2) & '/' & mid(DataCorretta,3,2) & '/' & mid(DataCorretta,5,4)) AS DataRovesciata, Provvigione, Codice, Descrizione, Categoria1, Categoria2, PrezzoAcquisto, PrezzoVendita, Ricarico1, Stagione from DesArt where 1=1 and len(Categoria1)>3 and len(Categoria2)>3 and
DateDiff('d', cdate(Date()), cdate(mid(DataCorretta,1,2) & '/' & mid(DataCorretta,3,2) & '/' & mid(DataCorretta,5,4)))>0
-------------------------------------------------------------
SE CAMBIO l'ultima riga e metto un valore statico invece che dinamico, mi esce l'errore
QUESTA FUNZIONA:
-------------------------------------------------------------
select cstr( iif (len(Provvigione)=8,Provvigione , iif (len(Provvigione)=7, '0' & Provvigione , iif (len(Provvigione)=6, '00' & Provvigione , iif (len(Provvigione)=5, '000' & Provvigione , iif (len(Provvigione)=4, '0000' & Provvigione , iif (len(Provvigione)=1, '3112202' & Provvigione , Provvigione ) ) ) ) ))) as DataCorretta, Date() AS DataOdierna, DateDiff('d', cdate(Date()), cdate(mid(DataCorretta,1,2) & '/' & mid(DataCorretta,3,2) & '/' & mid(DataCorretta,5,4))) AS Dat, mid(DataCorretta,1,2) AS Dat1, mid(DataCorretta,3,2) AS Dat2, mid(DataCorretta,5,4) AS Dat3, cdate(mid(DataCorretta,1,2) & '/' & mid(DataCorretta,3,2) & '/' & mid(DataCorretta,5,4)) AS DataRovesciata, Provvigione, Codice, Descrizione, Categoria1, Categoria2, PrezzoAcquisto, PrezzoVendita, Ricarico1, Stagione from DesArt where 1=1 and len(Categoria1)>3 and len(Categoria2)>3 and
DateDiff('d', cdate(Date()), '26' & '/' & '10' & '/' & '2012')>0
-------------------------------------------------------------
sto diventando matto, la seconda query è uguale alla prima query solo che invece di mettere una data dinamica ce la metto fissa '26' & '/' & '10' & '/' & '2012'
idee?
grazie
Caniggia
www.all-onweb.com info.all-onweb.com
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 11 ott 2012 - 05:39
>Ciao a tutti, chiedo aiuto perche ho questo messaggio all'esecuzione del mio software
Ciao, non capisco quale sia quella che non va, tu dici che la prima non funziona, poi affermi che "SE CAMBIO l'ultima riga e metto un valore statico invece che dinamico, mi esce l'errore"..
Quindi esce anche nel secondo caso? Quale non va? Hai usato sempre la stessa data per testare il funzionamento?
Perchè il formato con le / non è indicato (non sempre l'access è installato in italiano).
ciao
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.microsoft.com/profiles/Alessandro.Alpi
caniggia
Profilo
| Newbie
3
messaggi | Data Invio:
gio 11 ott 2012 - 10:36
grazie per la risposta alx, ma sembra chiaro, ci sonio 2 query, la prima non va la seconda si e se guardi l'unica differenza sta nell'ultima riga:
PRIMA QUERY: DateDiff('d', cdate(Date()), cdate(mid(DataCorretta,1,2) & '/' & mid(DataCorretta,3,2) & '/' & mid(DataCorretta,5,4)))>0
SECONDA QUERY: DateDiff('d', cdate(Date()), '26' & '/' & '10' & '/' & '2012')>0
in pratica nella prima query, il dato lo scrivo dinamicamente estrapolandolo dal campo DataCorretta, nella seconda invece lo impongo a mano e quindi funziona.
perchè?
Caniggia
www.all-onweb.com info.all-onweb.com
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 11 ott 2012 - 21:16
>grazie per la risposta alx, ma sembra chiaro, ci sonio 2 query,
>la prima non va la seconda si e se guardi l'unica differenza
>sta nell'ultima riga:
Ti ho chiesto per sicurezza perchè la tua frase mi aveva un po' smarrito e volevo essere certo prima di una risposta.
>in pratica nella prima query, il dato lo scrivo dinamicamente
>estrapolandolo dal campo DataCorretta, nella seconda invece lo
>impongo a mano e quindi funziona.
>perchè?
puoi cortesemente rispondere alla domanda che ti ho fatto? La data dinamica è esattamente la stessa di quella statica come valore?
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.microsoft.com/profiles/Alessandro.Alpi
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !