FraBam
myCSharp.de-Mitglied
Dabei seit: 30.04.2020
Beiträge: 10
|
|
Hallo,
ich wollte bei diesem SQL String den Zugriff auf das Tabellenblatt FROM [" + sheet + "$] " in die nachfolgende Parameterabfrage umstellen.
C#-Code: |
string sqlKunde = "SELECT Material, Materialkurztext, Produkthierarchie,Bedarfsmenge, VK_Position, VK_SD_Beleg, Bedarfsdatum, " +
"[Plan-WA-Datum], Kunde, Nettowert, Ursache, Bemerkung, [neuer Termin], Liefersperre, [Unser Zeichen] " +
"FROM [" + sheet + "$] " +
"WHERE VK_SD_Beleg IS NOT NULL AND VK_SD_Beleg <>' ' AND [Plan-WA-Datum]<? " +
"GROUP BY Material, Materialkurztext, Produkthierarchie,Bedarfsmenge, VK_Position, VK_SD_Beleg, Bedarfsdatum, " +
"[Plan-WA-Datum], Kunde, Nettowert, Ursache, Bemerkung, [neuer Termin], Liefersperre, [Unser Zeichen] ORDER BY Nettowert DESC";
|
C#-Code: |
string sqlKunde = "SELECT Material, Materialkurztext, Produkthierarchie,Bedarfsmenge, VK_Position, VK_SD_Beleg, Bedarfsdatum, " +
"[Plan-WA-Datum], Kunde, Nettowert, Ursache, Bemerkung, [neuer Termin], Liefersperre, [Unser Zeichen] " +
"FROM ? "+
"WHERE VK_SD_Beleg IS NOT NULL AND VK_SD_Beleg <>' ' AND [Plan-WA-Datum]<? " +
"GROUP BY Material, Materialkurztext, Produkthierarchie,Bedarfsmenge, VK_Position, VK_SD_Beleg, Bedarfsdatum, " +
"[Plan-WA-Datum], Kunde, Nettowert, Ursache, Bemerkung, [neuer Termin], Liefersperre, [Unser Zeichen] ORDER BY Nettowert DESC";
|
Den Zugriff auf das Excel realisiere ich wie folgt
C#-Code: |
public DataTable LoadDataTable(string sqlString, DateTime datum, string excelSheetName)
{
string connString = ExcelProvider + ExcelPath + ExcelFormat;
dt = new DataTable("Liste");
using (OleDbConnection xlsconn = new OleDbConnection(connString))
{
try
{
xlsconn.Open();
OleDbDataAdapter da = new OleDbDataAdapter(sqlString, xlsconn);
da.SelectCommand.Parameters.Add("?", OleDbType.Char).Value = excelSheetName;
da.SelectCommand.Parameters.Add("?", OleDbType.DBDate).Value = datum;
da.Fill(dt);
xlsconn.Close();
}
catch (Exception ex)
{
MessageBox.Show("Ein Fehler ist beim Upload aufgetreten : " + ex.Message + " Das File konnte nicht geladen werden!", "Fehler", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
return dt;
}
}
|
Vor der Umstellung auf die Parameterabfrage hat alles wunderbar funktioniert. Jetzt bekomme ich einen Syntaxfehler bei der FROM -Klausel beim Öffnen.
Ich habe schon alle möglichen Kombinationen versucht, die FROM Klausel umzustellen, komme aber nicht auf das richtige Ergebnis. Vielleicht hat jemand einen Typ für mich?
Hier eine kleine Auflistung, was ich schon versucht habe.
C#-Code: |
"FROM ?$ " +
"FROM ?" +"$ " +
"FROM [?$] " +
|
Danke und schöne Grüße
Christian
|
|