[progress Communities] [progress Openedge Abl] Forum Post: Ungültige Tabelle Zu Verbundener...

Status
Not open for further replies.
I

Ingo Stephan

Guest
Hallo miteinander, ich habe eine in Progress eine MS-SQL-DB verbunden. Das hat scheinbar funktioniert. Möchte ich nun eine Query auf eine Tabelle absetzen, kommt beim OPEN oder EXECUTE die Fehlermeldung "...ungültiger Objektname . Error Code: 0x80020009...". Lass ich das Ganze in einem VBS laufen, funktioniert das astrein. Nachfolgend mal der Progress-Code... def var gvch_dbconn as com-handle no-undo. def var gvch_dataset as com-handle no-undo. def var gvc_provider as character no-undo. def var gvc_server as character no-undo. def var gvc_dbname as character no-undo. def var gvc_userid as character no-undo. def var gvc_userpwd as character no-undo. def var gvc_connect as character no-undo. def var gvc_befehl as character no-undo. def var gvi_zaehler as integer no-undo. ASSIGN gvc_provider = 'SQLOLEDB':U gvc_dbname = 'HOMAG':U gvc_server = '.':U gvc_userid = 'sa':U gvc_userpwd = 'istist':U gvc_connect = 'provider=':U + gvc_provider + ';':U + 'server=':U + gvc_server + ';':U + 'datasource=':U + gvc_dbname. create "ADODB.Connection" gvch_dbconn. create "ADODB.RecordSet" gvch_dataset. gvch_dbconn:eek:pen (gvc_connect,gvc_userid,gvc_userpwd,0) no-error. if error-status:error or error-status:num-messages > 0 then do: message "Connect-Fehler". do gvi_zaehler = 1 to error-status:num-messages: message error-status:get-number(gvi_zaehler) error-status:get-message(gvi_zaehler) view-as alert-box. end. end. else message "Connect-OK". /* gvc_befehl = 'SELECT * FROM StornoAuslagerung':U. gvc_befehl = 'SELECT * FROM GetBestand()':U. */ gvc_befehl = 'SELECT * FROM AAusDatei1':U. gvch_dataset:OPEN(gvc_befehl,gvch_dbconn, 3, 1, 1) no-error. if error-status:error or error-status:num-messages > 0 then do: message "Open-DS-Fehler". do gvi_zaehler = 1 to error-status:num-messages: message error-status:get-number(gvi_zaehler) error-status:get-message(gvi_zaehler) view-as alert-box. end. end. else message "Open-DS-OK". gvch_dataset:close no-error. release object gvch_dbconn no-error. release object gvch_dataset no-error. ...Fehlermeldung... ...und ein Screenshot von der DB... ...und hier das VBS... '********************************************************************* ' Connectionstring für Verbindung zum Server '********************************************************************* Const OdbcName = "Provider=SQLOLEDB;Datasource=.;DATABASE=HOMAG;UID=sa;PWD=istist" Dim PathArgs(0) ' Programm-Argument Set WSHShell = WScript.CreateObject("WScript.Shell") Set ObjEnv = WSHShell.Environment("Process") Set ObjArgs = WScript.Arguments Set FSO = CreateObject("Scripting.FileSystemObject") Verbindung zur Datenbank aufbauen Set objData = CreateObject("ADODB.Connection") objData.Open Odbcname ' ADO Recordset erzeugen Set objRS = CreateObject("ADODB.RecordSet") On Error Resume Next '********************************************************************* ' Tabelle StornoAuslauslagerung auslesen '********************************************************************* objRS.ActiveConnection = objData 'objRS.Source = "SELECT * FROM StornoAuslagerung" objRS.Source = "SELECT * FROM AAusDatei1" 'adOpenKeyset Type objRS.CursorType = 1 objRS.Open MsgBox " Anzahl Datensaetze in Tabelle:" & objRS.RecordCount objRS.Close objData.Close Da das VBS funktioniert, nehme ich mal an, dass es nicht an irgendwelchen Rechten in der DB liegen kann. Was ist dann also an meinem Code falsch bzw. was fehlt? 1000 Dank schon mal. Ingo

Continue reading...
 
Status
Not open for further replies.
Top