Hi, ich bekomme teilweise bei ADODB-Objekten (RecordSet, Connection und Field) und bei Com-Objekten eines 3.-Party-Produktes den Fehler "es ist eine Aufnahmebedingung aufgetreten". Es tritt nur bei 2 Seiten auf, alle anderen funktionieren problemlos. Und mal funktionierts aber meist kommt halt diese Exception...
Wer weiss Rat?
Gruss Annette
Codeschnippsel ADODB:
try {
//strConnection = "driver={SQL Server};server=ip-kennung;uid=user;pwd=password;database=Lagerjournal";
//connect.Open( strConnection);
msg = ""
connect = Server.CreateObject("ADODB.Connection");
connect.Open("BremerModell",user,password);
connect = "DSN=BremerModell;User Id=user;Password=password;"
recset = Server.CreateObject("ADODB.Recordset");
//for (n=0; n++; n<15) {
if (teil[n] !="") {
sql = "SELECT * FROM Lagerjournal.dbo.ETDIEBP WHERE ETNR='"+teil[n]+"'";
recset.open(sql,connect,adOpenKeyset,adLockReadOnly);
msg = "Query";
if (recset.BOF || recset.EOF) {
bez[n] = "ungültige Teilenr.";
}
else {
bez[n] = recset("ETBEZ").value;
}
}
//}
connect.close;
connect = null;
recset = null;
}
catch(e) {
msg = msg + e.description;
bez[n] = "z.Zt. nicht verfügbar";
//bez[n] = msg;
//Response.Write(recset.Source);
}
das COM-Objekt aus der third-party
//a = Server.CreateObject("deskodabremer.Auftragsanzeige");
a = new ActiveXObject("deskodabremer.Auftragsanzeige");
a.Host_User = "" + user;
a.HostPwd = "" + pwd;
abfrage = 0;
if (nummer != "") {
//Response.Write("nummer gefüllt");
a.AuftragsNummer = "" + nummer;
a.AuftragsStatus = " ";
a.AuftragsArt = " ";
abfrage = 1;
}
else {
//Response.Write("nummer nicht gefüllt");
a.AuftragsStatus = "" + status;
a.Auftragsart = "" + art;
a.AuftragsNummer = " ";
abfrage = 2;
}
result = -1;
msg =
try {
a.execute(); // localhost
//CmdManager.Execute(a); // server
//Response.Write("a.RESULT="+a.Result);
if (a.RESULT=="SUCCESS") {
result = 0;
Response.Write("a.RESULT="+a.Result);
}
}
catch (e) {
msg = e.description;
}