Haben immer mit SQLDataAdapter und Fill-Befehl für Daten abgerufen Abfragen und mit executenonquery zum Einfügen, Aktualisieren, Löschen von Einsen.Parameter zu SqlCommand und SqlDataAtapter
Ich habe ein Problem und kann nicht herausfinden, was ich falsch mache. Ich habe eine DataTable Bindung an ein RadGrid. Die DataTable erhält die Daten für einen bestimmten Monat der Quittungen eines Unternehmens und generiert eine zusätzliche Spalte mit Informationen, die wir benötigen.
ich einen Monat fron einer RadControl und senden Sie die Daten nach Drücken einer Taste:
Protected Sub RadButton1_Click(sender As Object, e As EventArgs) Handles RadButton1.Click
Dim fecha As Date
fecha = RadMonthYearPicker1.DbSelectedDate
miDataTable = objOPRecibo.FacturasEspeciales(fecha.Month, fecha.Year)
RadGrid1.Rebind()
End Sub
Dies ist die Funktion im aufgerufenen Objekt:
Public Function FacturasEspeciales(Mes As Integer, Anio As Integer) As DataTable
Dim FEDataTable As New DataTable
Using conection As New SqlConnection(constr)
Using cmd As New SqlCommand(@"SELECT
SUM(Det_Recibo.dCantidad) Cantidad,
Producto.Nombre,
SUM(Det_Recibo.mTotal) Valor,
SUM((((Det_Recibo.mTotal*100)/95)*1.12)) ESPE
FROM Det_Recibo
INNER JOIN Enc_Recibo
ON Det_Recibo.idRecibo = Enc_Recibo.idRecibo
INNER JOIN Producto
ON Det_Recibo.idProducto = Producto.IdProducto
WHERE MONTH(Enc_Recibo.dFechaFact)[email protected] AND
YEAR(Enc_Recibo.dFechaFact)[email protected]
Producto.idGasto = 1 OR Producto.idGasto = 2
GROUP BY Producto.Nombre")
cmd.Parameters.AddWithValue("@Mes", Mes)
cmd.Parameters.AddWithValue("@Anio", Anio)
Dim sda As New SqlDataAdapter(cmd.CommandText, conection)
sda.Fill(FEDataTable)
End Using
End Using
'Return DataTable
Return FEDataTable
End Function
I {m entweder ein immer Nicht definierter Skalarfehler für @Mes oder ein zweiter Fehler, der nicht spezifisch für die Zeile sda.Fill ist.
Ich bin ein Neuling und nach Stunden der Forschung kann ich einfach nicht herausfinden, was ich falsch mache.
Jede Hilfe wäre
Versuchen 'Dim sda As New SqlDataAdapter (cmd)' – LarsTech
Sie vermissen die UND/ODER apreciated Betreiber nach der JAHR-Bedingung und vor dem Produkt-Zustand. Die Verwendung des Verbatim @ string macht das Problem klar. – Steve
Danke Steve wird das überprüfen, wenn wieder auf meinem Desktop – TikalDog