hallo,
hoffentlich gibt es jemand, der aus Erfahrung mir bei diesem Problem helfen kann.
Ich habe eine Eingabemaske für die Tabelle Production_Problem erstellt mit Eingabefelder:
RC_Nummer, KundenID und Dauer_Minuten. KundenID ist durch ein Combobox dargestellt mit Werten aus der Tabelle LU_Kunde.
Problem habe ich mit den Werten der Tabelle LU_Kunde, da diese vom Typ varchar 150 (SQL Server) sind, ich versuche durch folgendes Code das Combobox darszustellen:
CODE
<select name="Kunde" id="Kunde" style="width:350px">
<option>Bitte ausw&auml;hlen</option>
<%
Dim strConn, SQLquery
Set rsKd = Server.CreateObject("ADODB.Recordset")
strConn = ""
SQLquery="Select * from LU_Kunde order by KundenID"
rsKd.Open SQLquery, strConn
While not rsKd.EOF
KundenID = rsKd("KundenID").Value
if CStr(KundenID) = CStr(Kunde) then
%><option value="<% Response.write rsKd("KundenID") %>" selected>
<% = rsKd("Kunde").Value %>
</option><%
Else
%><option value="<% Response.write rsKd("KundenID") %>">
<% = rsKd("Kunde").Value %>
</option><%
End if
rsKd.MoveNext
Wend
%>
</select>
Das Hinzufügen :
CODE
Dim SQL_test
Set objRS=Server.CreateObject("ADODB.Recordset")
SQL_test="SELECT COUNT(*) FROM Production_Problem_affected WHERE RC_Nummer='" & RC_Nummer & "'" & " " & "AND KundenID='" & KundenID & "'"
Set RS_test=Conn.Execute(SQL_test)
If RS_test(0)=0 Then 'wenn das nicht der Fall wäre:
objRS.Cursortype = 1
objRS.Locktype = 3
SQLquery="SELECT RC_Nummer, KundenID, Dauer_Minuten, Anzahl_Enduser_intern, Anzahl_Enduser_extern from Production_Problem_affected"
objRS.Open SQLquery, strConn
objRS.AddNew
objRS("RC_Nummer") = RC_Nummer
objRS("KundenID") = Kunde
objRS("Dauer_Minuten") = Dauer_Minuten
objRS("Anzahl_Enduser_intern") = Anz_Enduser_int
objRS("Anzahl_Enduser_extern") = Anz_Enduser_ext
objRS.Update
objRS.UpdateBatch
objRS.close
Set objRS=Nothing
Conn.Close
Ich bekomme die folgende Fehlemeldung:
CODE
Microsoft OLE DB Provider for SQL Server Fehler "80040e21'
Fehler bei einem aus mehreren Schritten bestehenden OLE DB-Vorgang. Prüfen Sie die einzelnen OLE DB-Statuswerte, falls vorhanden. Daten wurden nicht verarbeitet .
/_rootverzeichnis/change2.asp, line 168
Die Zeile 168 ist:
CODE
objRS("KundenID") = Kunde
Hätte jemand eine Idee wie ich das Problem lösen kann?, KundenID ist vom Typ int 4.
Für eine Hilfe wäre ich sehr dankbar
hoffentlich gibt es jemand, der aus Erfahrung mir bei diesem Problem helfen kann.
Ich habe eine Eingabemaske für die Tabelle Production_Problem erstellt mit Eingabefelder:
RC_Nummer, KundenID und Dauer_Minuten. KundenID ist durch ein Combobox dargestellt mit Werten aus der Tabelle LU_Kunde.
Problem habe ich mit den Werten der Tabelle LU_Kunde, da diese vom Typ varchar 150 (SQL Server) sind, ich versuche durch folgendes Code das Combobox darszustellen:
CODE
<select name="Kunde" id="Kunde" style="width:350px">
<option>Bitte ausw&auml;hlen</option>
<%
Dim strConn, SQLquery
Set rsKd = Server.CreateObject("ADODB.Recordset")
strConn = ""
SQLquery="Select * from LU_Kunde order by KundenID"
rsKd.Open SQLquery, strConn
While not rsKd.EOF
KundenID = rsKd("KundenID").Value
if CStr(KundenID) = CStr(Kunde) then
%><option value="<% Response.write rsKd("KundenID") %>" selected>
<% = rsKd("Kunde").Value %>
</option><%
Else
%><option value="<% Response.write rsKd("KundenID") %>">
<% = rsKd("Kunde").Value %>
</option><%
End if
rsKd.MoveNext
Wend
%>
</select>
Das Hinzufügen :
CODE
Dim SQL_test
Set objRS=Server.CreateObject("ADODB.Recordset")
SQL_test="SELECT COUNT(*) FROM Production_Problem_affected WHERE RC_Nummer='" & RC_Nummer & "'" & " " & "AND KundenID='" & KundenID & "'"
Set RS_test=Conn.Execute(SQL_test)
If RS_test(0)=0 Then 'wenn das nicht der Fall wäre:
objRS.Cursortype = 1
objRS.Locktype = 3
SQLquery="SELECT RC_Nummer, KundenID, Dauer_Minuten, Anzahl_Enduser_intern, Anzahl_Enduser_extern from Production_Problem_affected"
objRS.Open SQLquery, strConn
objRS.AddNew
objRS("RC_Nummer") = RC_Nummer
objRS("KundenID") = Kunde
objRS("Dauer_Minuten") = Dauer_Minuten
objRS("Anzahl_Enduser_intern") = Anz_Enduser_int
objRS("Anzahl_Enduser_extern") = Anz_Enduser_ext
objRS.Update
objRS.UpdateBatch
objRS.close
Set objRS=Nothing
Conn.Close
Ich bekomme die folgende Fehlemeldung:
CODE
Microsoft OLE DB Provider for SQL Server Fehler "80040e21'
Fehler bei einem aus mehreren Schritten bestehenden OLE DB-Vorgang. Prüfen Sie die einzelnen OLE DB-Statuswerte, falls vorhanden. Daten wurden nicht verarbeitet .
/_rootverzeichnis/change2.asp, line 168
Die Zeile 168 ist:
CODE
objRS("KundenID") = Kunde
Hätte jemand eine Idee wie ich das Problem lösen kann?, KundenID ist vom Typ int 4.
Für eine Hilfe wäre ich sehr dankbar