2010-12-09 6 views
0

VB 스크립트를 통해 명령 프롬프트를 연결하고 Oracle 검색기의 일부 보고서를 실행하기 위해 Oracle 환경과 연결하려고합니다. 그러나 문제는이 VB 스크립트에만 있습니다.쿼리를 실행하는 VB 스크립트

라인 2 : 연결을 설정합니다. 줄 7 : 현재 REQUEST_ID를 가져 오는 중입니다. 라인 16 : XXDIS_EXPORT_CMD_V는 뷰이고 cmd는 해당 REQUEST_ID에 대해 이와 같은 값을 선택하는 열입니다. /CONNECT DISCADMIN : 결국 "FAI 금융 지능"/ discbi @ deverp/OPENDB "1 일정"/ SHEET "Sheet_1"/ 수출 HTML의 o27673334.out/LOGFILE l27673334.log/BATCH

내가 이것을 실행할 VBScript를 사용하는 cmd. 오는

오류 :

"In line 32 tkgoShell was not recognized"

이 내 코드입니다 : 당신이 실제로 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) 

답변

0

내가 제대로 코드를 이해한다면 난 아무데도 볼 수 없습니다. 마지막 라인 전에 다음 두 행을 삽입

시도 :

Dim tkgoShell 
Set tkgoShell = WScript.CreateObject ("WScript.Shell") 

자세한 내용에 대한 Shell.Run 여기를 참조하십시오.

+0

이제이 오류가 발생했습니다. 오류 : 프로세스를 기다릴 수 없습니다. 코드 : 80020009 출처 : WshShell.Run, Line : 35 –

+0

@Alok : '실행'으로 전송 된 명령이 잘못되었거나 (잘못된 경로이거나 따옴표가 없거나 유사한 경우) . –

관련 문제