2011-10-06 6 views
0

저는 초심자이며 SSIS 패키지로 작업하고 있으며 재능있는 사람들의 도움을 받아서 일하고 있습니다. 이슈. 2 플랫 파일에서 데이터를 가져온 다음 SQL 테이블에 삽입해야합니다.이 테이블에 파생 된 열을 추가하여 디렉터리에서 파일의 LastWriteTime을 입력해야합니다. 일어나는 일은 파일의 LastWriteTime을 가져 오는 대신 디렉토리를 삽입하는 것입니다. 필자는 다른 파일을 디렉터리에 복사/붙여 넣기하고 이전 파일 작업을 시도했기 때문에이 사실을 알고 있지만 테이블에 삽입되는 날짜는 파일의 이전 날짜가 아니라 오늘 날짜입니다. 스크립트 작업에서 사용하는 다음과 같은 내용이 있습니다.디렉터리에있는 여러 파일의 LastWriteTime 가져 오기

Public Sub Main() 
Dim FilePath As String = "D:\InputFiles\" 
     Dim finf As New System.IO.FileInfo(FilePath) 
     Dts.Variables("User::FileDate").Value = finf.LastWriteTime 

     Dts.TaskResult = ScriptResults.Success 
EndSub 

어떤 조언을 해주시겠습니까?

답변

0

디렉토리에 FileInfo이 표시됩니다.

대신 new DirectoryInfo(path).GetFiles()을 호출하여 디렉토리의 파일에 대해 복수 FileInfo을 가져와야합니다.

+0

안녕하세요 SLAKs, 조언 해 주셔서 감사합니다. 그래서 당신의 제안에 따라 다음을 시도 : Public Sub Main() Dim filePath As String = "D : \ InputFiles \"Dim FileDirec As 새 System.IO.DirectoryInfo (filePath) fileDirec.GetFiles() Dts.Variables ("User : : FileDate "). 값 = fileDirec.LastWriteTime Dts.TaskResult = ScriptResults.Success End Sub ,하지만 여전히 파일의 LastWriteTime 날짜가 아닌 오늘 날짜가 테이블에 삽입됩니다. 어떤 생각? – daniness

+0

방금 ​​쓴 내용을 이해합니까? 당신은 여전히 ​​디렉토리의'LastWriteTime'을 얻고 있습니다. 루프 또는 LINQ 쿼리가 필요합니다. – SLaks

+0

이 좋아, 그래서 시도한를위한 각 루프 : 희미한적인 filePath으로 문자열 = "D : \의 InputFile"새 System.IO.DirectoryInfo (적인 filePath) fileDirec.GetFiles (에서 각 파일에 대해 ) Dts하여 희미한 fileDirec .Variables ("User :: FileDate"). 값 = fileDirec.LastWriteTime 다음 Dts.TaskResult = ScriptResults.Success ... 아직 운이 없다 ..... 나는 뭘 잘못하고 있니? 미안하지만 나는 초보자 일 뿐이야, 내가 가면서 배우려고 노력하고있다 ... 나는 모든 도움에 감사한다. – daniness

관련 문제