Filtrare i dati su un campo derivato

lunedì 23 marzo 2015 - 21.34
Tag Elenco Tags  VB.NET  |  .NET 4.0  |  Windows 7  |  Visual Studio 2010  |  Access (.mdb)

olmof Profilo | Junior Member

Ciao a tutti ho bisogno del vostro aiuto in quanto sto impazzando su una query (DB in Access). In pratica creo un campo eseguendo una somma algebrica di altri 3 campi: e fino a qui nessun problema. Ecco la query:
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
Fino a qui tutto OK.
Ma nel momento in cui inserisco:
WHERE Dispo > 0
Mi viene chiesto di "Immettere il valore parametro per Dispo

Esiste una soluzione?
Grazie

renarig Profilo | Expert

>Ma nel momento in cui inserisco:
>WHERE Dispo > 0
>Mi viene chiesto di "Immettere il valore parametro per Dispo

Succede perché "Dispo" non è un campo della tabella di origine.
Tu mi durai che lo hai generato nella stessa query, ma .........

devi mettere:
WHERE ( IIf(IsNull(Giacenze.QtaIvent),0,Giacenze.QtaIvent)+IIf(IsNull...........) > 0




Pero io userei la specifica funzione Nz(.....) invece del IIf(IsNull(.....))
SELECT Giacenze.*, Nz([Giacenze.QtaIvent],0)+Nz([Giacenze.QtaCar],0)-Nz([Giacenze.QtaSca],0) AS Dispo FROM Giacenze WHERE (((Nz([Giacenze.QtaIvent],0)+Nz([Giacenze.QtaCar],0)-Nz([Giacenze.QtaSca],0))>0)) ;

olmof Profilo | Junior Member

Grazie per la risposta.
In effetti inserendo l'intera formula nella clausola WHERE funziona tutto.
Non funziona invece la funzione NZ, in VB mi da errore, mentre funziona correttamente dentro Access.
Ho fatto una ricerca ed ho trovato questo, che forse ti può interessare:
http://www.visual-basic.it/Forum/tabid/151/aft/25882/Default.aspx#.VRHK1PmG-s0

Ciao e grazie
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5