내가 폴더에 각 파일을 가져 올바른 흐름을 파악하는 데 문제가 아래의 각 파일에 테이블에 반복 흐름을 이름을 추가 파일 이름의 일부만 사용하려면 스크립트를 실행 한 다음 마스터 테이블에 삽입하십시오.
필요한 모든 조각이 있습니다. Foreach 루프를 사용하여 모든 파일을 반복하고 파일 이름을 변수로 사용할 수 있습니다. Foreach 컨테이너 안에는 플랫 파일에서 SQL 테이블로 레코드를 가져 오는 데이터 흐름 태스크가 있습니다. 루프에서 빠져 나와 다음 단계는 필자가 필요로하는 파일 이름 부분을 얻기 위해 스크립트를 실행하는 것입니다. 마지막 단계는 일부 변환을 실행하고 레코드를 MasterStageFinal 테이블로 이동시키는 SQL 쿼리입니다.
Foreach 루프는 각 단계를 한 번씩 실행하고 열거 형 당 전체 시퀀스를 실행하는 대신 열거 자에게 동일한 단계를 실행합니다.
예를 들어 폴더에는 250 개의 레코드가 있고 하나는 500 개의 레코드가 있습니다. 현재 흐름은 데이터베이스에 1500 개의 레코드를 삽입하고 (열거로 인해 두 파일을 모두 가져옵니다) 파일 중 하나에서만 번호.
그래서 어떻게하면이 문제를 가장 잘 해결할 수 있을까요?
Foreach 루프 속성
코드를 대신 표시하면 도움이됩니다. 귀하의 설명은 괜찮지 만 번역에 뭔가 빠져있을 수 있습니다. –
각 루프마다 스크립트 작업을 실행하고 foreach에 포함 시키려면 –
이런 것들을 디버깅하는 가장 좋은 방법은 for-each 루프에서'Exec Script Task'를 사용하고 실행 전에 변수를 출력하는 것입니다 : 예 :'MessageBox.Show (Dts.Variables [ "User :: variableName"] .Value.ToString()); ' –