PASSA VALORE DA TEXTBOX

giovedì 21 ottobre 2010 - 09.44
Tag Elenco Tags  VB.NET  |  Access (.mdb)

albicodex Profilo | Newbie

salve ragazzi,
propongo un problema che ho visto già affrontato su qualche altra discussione ma VERAMENTE non ho trovato risposta che fa al caso mio:

Visual studio 2008 vb.net...crystal...

Public Class Form4
Dim connstring As String = "PROVIDER=SQLOLEDB.1;Persist Security Info=False;User ID=SA;Password=miapwd; Initial Catalog=mioDB;Data Source=miosrv"

Dim cn As New OleDbConnection(connstring)
Dim sql As String = ""

form con crywiever... e una datagridview...
A fronte dell'evento load...

Dim da As OleDb.OleDbDataAdapter
Dim ds As New DataSet

Form1.TextBox1.Text = Form1.ComboBox1.SelectedItem("I")
Dim valore As Double = Form1.TextBox1.Text

cn.Open()

sql = "SELECT RCOMMISS.Descrizionem,RCOMMISS.Forn,RCOMMISS.Descrizione,RCOMMISS.Cliente,RCOMMISS.SecondoCodice,COMMISS.Totalelistino,COMMISS.I FROM COMMISS INNER JOIN RCOMMISS ON COMMISS.NC = RCOMMISS.I WHERE RCOMMISS.Cliente = 6386 AND RCOMMISS.SecondoCodice = 'TESTATA' AND RCOMMISS.Forn='" & valore & "'"

ds = New DataSet("bb")
da = New OleDb.OleDbDataAdapter(sql, cn)
da.Fill(ds, "bb")
Dim dt As New DataTable
dt = ds.Tables("COMMISS", "RCOMMISS")


cn.Close()


Dim bs As New BindingSource
bs = New BindingSource()
bs.DataSource = ds
bs.DataMember = "bb"

DataGridView1.DataSource = bs ' ....E FINO A QUI FUNZIONA TUTTO ULTRAPERFETTAMENTE !!!!




Dim objRpt As New CrystalReport3
objRpt.SetDataSource(ds)
objRpt.SetDatabaseLogon("sa", "miapwd")
CrystalReportViewer1.ReportSource = objRpt
CrystalReportViewer1.Refresh()


....apro cristal e costruisco un comando (come suggerito da Raumer "freeteo" in un altro post) e vado a copiare pari-pari la mia stringa sql..
SORPRESA : FUNZIONA TUTTO TRANNE UNA COSA :

... NON VIENE ACCETTATA LA CLAUSULA ...... AND RCOMMISS.Forn='" & valore & "'"

ho provato qualsiasi intervento a livello di sintassi ma NOTHING !!!

What ????


Grazie in anticipo per l'eventuale suggerimento

Albi



freeteo Profilo | Guru

>... NON VIENE ACCETTATA LA CLAUSULA ...... AND RCOMMISS.Forn='"
>& valore & "'"
non è che ci sia un problema di sintassi sql, tipo un accento che chiude la stringa?
L'hai provata in debug ricavandoti la stringa, e lanciandola in sql management per vedere la sintassi?
Potrebbe essere che non hai quel campo nella struttura del report?

Casomai prova a postare un progetto d'esempio e vediamo di analizzarlo in dettaglio insieme..

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo

albicodex Profilo | Newbie

Ciao Matteo,
ti ringrazio per il post; ti posso garantire che virgole e accenti gli ho verificati con grande cura ! cmq ho risolto passando il parametro ,come suggerivi tu in un altro post, con il metodo "setparametervalue.("pippo",pippo) , ...creando un nuovo campo parametro nel report e infilandolo a sua volta nella stringa SQL del tipo WHERE RCOMMISS.Forn ={?pippo} ...funzia che è una meraviglia !!!
Sai però, non ho capito perchè in giro ,nel web, di CR se ne parla effettivamente un po poco ...
Cordialmente
Alberto

freeteo Profilo | Guru

>"setparametervalue.("pippo",pippo) , ...creando un nuovo campo
>parametro nel report e infilandolo a sua volta nella stringa
>SQL del tipo WHERE RCOMMISS.Forn ={?pippo} ...funzia che è una
>meraviglia !!!
ok, ottimo



>Sai però, non ho capito perchè in giro ,nel web, di CR se ne
>parla effettivamente un po poco ...
eh infatti...non capisco come mai... cmq questa stanza l'abbiamo messa in piedi anni fa proprio per questo motivo

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo
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