Я пытаюсь подключить командную строку через скрипт VB и далее подключить его к среде Oracle для выполнения некоторых отчетов об открывателе Oracle.
Но проблема только в этом VB-скрипте.
строка 2: для установления соединения.
строка 7: получение текущего REQUEST_ID.
строка 16: XXDIS_EXPORT_CMD_V - это представление, а cmd - столбец. который выбирает подобное значение для соответствующего REQUEST_ID.
/ ПОДКЛЮЧИТЬ DISCADMIN: «FAI Financials Intelligence» / discbi @ deverp / OPENDB «1 Планирование» / SHEET «Sheet_1» / EXPORT HTML o27673334.out / LOGFILE l27673334.log / BATCH
В конце я хочу выполнить этот cmd с помощью VBScript.
Произошла ошибка:
"В строке 32 tkgoShell не было
признан "
Это мой код:
' Process job
Set objADO =CreateObject("ADODB.Connection")
objADO.Open "Driver={Microsoft ODBC for Oracle}; CONNECTSTRING=deverp; UID=apps; PWD=apps11i;"
MsgBox "Connection Established to Server.", vbExclamation + vbOKOnly, "System"
Do While True
' Check if there is a job to process
Set moRS=objADO.execute("SELECT apps.xxdis_schedule_pkg.start_job REQUEST_ID FROM dual")
moRS.MoveFirst
msRequest = moRS("REQUEST_ID")
'MsgBox msRequest,msRequest
' If no jobs then exit
' If msRequest = "0" Then
Exit Do
' End If
loop
Set moRS=objADO.execute("SELECT cmd EXPORT_CMD FROM apps.xxdis_export_cmd_v " & _
"WHERE request_id = " & msRequest)
MsgBox msRequest,msRequest
moRS.MoveFirst
msExpCmd = moRS("EXPORT_CMD")
' write command into a temporary file
msCmdFile = "r" & msRequest & ".cmd"
dim moOutputStream,filesys,msCommand
Set filesys = CreateObject("Scripting.FileSystemObject")
Set moOutputStream = filesys.CreateTextFile(msCmdFile, True)
' Substitute $SAMBA$ and $TNS$ locally configured variables
moOutputStream.Write Replace(Replace(msCmd, "$SAMBA$", gsOutDir),_
"$TNS$", gsInstance) & vbCRLF
moOutputStream.Close
' Call Discoverer to process the command
msCommand = gsBinDir & gsDiscoExe & " /EUL " & gsEUL & " /CMDFILE " & msCmdFile
Call tkgoShell.Run (msCommand, 1, true)