Hallo alle beieinander,
---Ein gesundes Neues Jahr erstmal --
Also ich habe da mal wieder eine kleine Frage.
Ich habe in einer Tabelle Reportkonfigurationen hinterlegt.
Ich möchte diese Tabelle zeilenweise auslesen. So z.B. die Datenquelle des zu erstellenden Berichtes. Dafür habe ich ein SQLStatement mit Parametern hinterlegt. In einer gesonderten Spalte habe ich dann für den Parameter den gewünschten Umgebungswerte bzw. die Variable hinterlegt. In dem Beispiel ist in der Spalte p1 der Eintrag 'Logonuser' hinterlegt. Diese Variable habe ich global in meinem Programm definiert. Sie wird mit Anmeldung des Users belegt.
Wenn ich nun wie unten im Beispiel geschrieben bei der Parameterübergebe den Eintrag aus meiner Tabelle einfach übernehme, wird der Logonuser als String und nicht als Variable interpretiert. So kann ich also nicht den Inhalt der Variablen an den Parameter übergeben.
Hat jemand eine Idee, wie ich das hinkriegen kann??
---Ein gesundes Neues Jahr erstmal --
Also ich habe da mal wieder eine kleine Frage.
Ich habe in einer Tabelle Reportkonfigurationen hinterlegt.
Ich möchte diese Tabelle zeilenweise auslesen. So z.B. die Datenquelle des zu erstellenden Berichtes. Dafür habe ich ein SQLStatement mit Parametern hinterlegt. In einer gesonderten Spalte habe ich dann für den Parameter den gewünschten Umgebungswerte bzw. die Variable hinterlegt. In dem Beispiel ist in der Spalte p1 der Eintrag 'Logonuser' hinterlegt. Diese Variable habe ich global in meinem Programm definiert. Sie wird mit Anmeldung des Users belegt.
Wenn ich nun wie unten im Beispiel geschrieben bei der Parameterübergebe den Eintrag aus meiner Tabelle einfach übernehme, wird der Logonuser als String und nicht als Variable interpretiert. So kann ich also nicht den Inhalt der Variablen an den Parameter übergeben.
Code:
cmd.CommandText ="select * from [tblInitReportsConfig] where kontext='MyQuestion' and Region='" & region & "'" da.SelectCommand = cmd dt_reps.Clear() da.Fill(dt_reps) If dt_reps.Rows.Count > 0 Then For Each rw As DataRow In dt_reps.Rows sel_data = rw.Item("Datasource") If IsDBNull(rw.Item("whereclause")) = False Then sel_data &= rw.Item("whereclause") If IsDBNull(rw.Item("orderclause")) = False Then sel_data &= rw.Item("orderclause") pdf_file = rw.Item("Pdf_Name") repname = rw.Item("Report_Name") If sel_data <> "" Then 'Datenquelle Dim dt As New DataTable 'SQLParameter cmd.CommandText = sel_data If IsDBNull(rw.Item("p1")) = False Then 'z.B. globfunction.logonuser kann hier nicht als Parameter aus Tabelle übergeben werden ' deshalb ermitteln über function cmd.Parameters.Add("@p1", rw.item("p1")) End If da.SelectCommand = cmd da.Fill(dt) 'dt füllen report.SetDataSource(dt) End If Next End If
Comment