2009-08-17 8 views
0

패키지를 만들고 SQL Server 2005에 배포했습니다. 패키지는 기본적으로 FTP를 통해 파일 (.csv)을 다운로드하고 내용을 테이블로 추출합니다. 데이터가 지워지고 데이터가 생산 테이블로 이동됩니다. 내 SSIS 패키지를 실행할 수 없습니다.

패키지를 배포 한 후, 나는 간단한 .NET 응용 프로그램

 Dim app As New Application 
    Dim pkg As Package 

    Try 
     pkg = app.LoadFromSqlServer("OrderImport", "machine\dataware", "sa", "sapassword", Nothing) 

     Dim result As DTSExecResult = pkg.Execute() 
     MsgBox(result.ToString) 
    Catch ex As Exception 
     MsgBox(ex.Message) 
    Finally 
     app = Nothing 
     pkg = Nothing 
    End Try 

에서 호출 시도하고 메시지 "실패"를 얻었다. 그런 다음 Management Studio를 통해 SSIS에 가서 패키지를 실행하려고했습니다. 그것이 오류

The system cannot find the file specified 
ERROR: Cannot open the datafile filename.csv 

내가 다른 무엇을 볼 수 있습니다 보여 TEH 데이터를 추출 할 수있는 지점에서 .CSV 파일에 도달하면 그것은, 그러나, FTP를 통해 파일을 다운로드 할 수있어? 가능한 경우 SQL Server 사용자 계정으로 패키지를 실행할 수 있기를 원합니다. 패키지 수준에서

나는

ProtectionLevel = EncryptSensitiveWithUserKey 
PackagePassword = [BLANK] 

한 가지 더 있습니다 - 어떻게 파일에 이러한 오류를 기록합니까?

답변

1

파일을 ftp 할 때 실제로 예상 한 위치에 올바른 이름으로 복사하고 있습니까? 파일의 절대 경로를 넣을 수 있습니다.

응용 프로그램에서 실행하려고 시도하기 전에 SSIS 패키지가 명령 줄에서 작동하는 경향이있어 디버깅하기가 더 쉽습니다.

+0

명령 줄에서 실행하는 데 사용하는 명령은 무엇입니까? "For Each Loop Editor"에서 "Name and Extension"을 선택했습니다. –

+0

+1 "SSIS 패키지를 응용 프로그램에서 실행하기 전에 명령 줄에서 작동시키는 경향이 있습니다. 그런 식으로 디버깅하기가 더 쉽습니다." cmd를 사용하기 전에 응용 프로그램과의 통합에 너무 많은 사람들이 뛰어 드는 것을 보았습니다! – Jefe

+0

64 비트 Vista에서 개발 되었기 때문에 Excel 소스에 32 비트가 필요합니다. C : \ Windows \ system32> "c : \ Program Files (X86) \ Microsoft SQL Server \ 100 \ dts \ Binn \ dtexec.exe "/ f"C : \ Users \ owner \ Documents \ FormulaItems.dtsx "/ X86 –

관련 문제