2017-12-16 3 views
1

"파일 이름"과 파일 상태를 가져와야하는 테이블을 가져야하는 XML 원본 파일이 있습니다. 일단 두 값을 얻으면 두 데이터를 테이블에 저장해야합니다.SSIS 패키지의 다른 원본에서 데이터를 가져 오는 방법

XML :

<File> 
<File_Info> 
    <File_Name>Test1</File_Name> 
    <File_Path>BLABLABLA</File_Path> 
    <File_Ext>.xml</File_Ext> 
</File_Info> 
</File> 

테이블 :

FileStatusID - Status 
1    - Created 
2    - Processed 

이 두 소스 사이에 관계가 없습니다.

XML 원본의 File_Name과 FileStatusID를 테이블에서 테이블로 저장할 수있는 방법은 무엇입니까?

파일 표 :

FileID - FileName - FileStatusID 
1  - Test  - 1 
2  - Test2 - 1 

이 내 패키지입니다

enter image description here

+0

는 두 개의 행 또는 두 개의 열이 하나의 행에 데이터를 저장을? 값이 변수에 있다면 그냥 SQL 태스크를 사용할 수 있습니다 –

+0

@ Nick.McDermaid 답장을 보내 주셔서 감사합니다. 저는 SSIS의 초보자입니다. 과정을 자세히 설명해 주시겠습니까? –

+0

XML 파일과 테이블에서 데이터를 가져 왔습니까? 정보를 새 테이블에 저장하고 있습니까? 내가 묻고있는 이러한 질문 - 당신은 이미 그들을 고려해야하고 귀하의 질문에 게시해야 –

답변

2

당신이 순서에 따라 두 데이터 소스를 통합하고자하는 경우 : 첫 번째와 XML의 첫 번째 행을 OLEDB 행을 사용하면 각 데이터 소스 다음에 스크립트 구성 요소 변환을 추가 할 수 있습니다.

각 스크립트 구성 요소의 변화에 ​​

, DT_I4가 (정수) 일련 번호, 를 생성하기 위해 다음과 같은 스크립트를 작성

(의이 이름이 AutoNumCol되어 있다고 가정하자) (내가 사용하는 타입의 출력 열 VB.Net를 추가) :

Public Class ScriptMain 
    Inherits UserComponent 

    Private intID as integer = 0 

    Public Overrides Sub Input0_ProcessInputRow(ByVal Row As Input0Buffer) 

     intID += 1 

     Row.AutoNumCol = intID 
    End Sub 

End Class 

그리고

* 확인 일을 참고하세요 병합이 두 열을 사용 당신은 IsSorted으로 스크립트 출력을 표시하고, 1AutoNumCol SortKeyPosition 변경에 :

enter image description here

enter image description here

+1

고마워요 @ 하디 ... –

관련 문제