2016-06-08 6 views
0

동일한 폴더 내에 두 개의 SSIS 프로젝트가 있습니다. Parent.dtsx 및 Child.dtsx라고 부릅시다.하나의 SSIS 프로젝트에서 다른 SSIS 프로젝트에있는 SQL 작업을 실행하는 방법

하위 솔루션에는 여러 시퀀스 컨테이너별로 많은 SQL 작업을 분할했습니다.

내가해야 할 일은 (부모)에게 (자식)의 SQL 작업을 실행하는 것입니다. 전체 Child 솔루션을 실행하고 싶지는 않습니다. 일부만 수행합니다.

나는 잠시 동안 적절한 해결책을 찾고 있었지만 아직 정확한 대답을 찾지 못했습니다.

내가 본 모든 부모 - 자식 솔루션은 부모 솔루션에서 전체 솔루션 (하위)을 실행하는 방법을 보여줍니다.

SQL 작업 ID를 패키지 실행 작업에 전달했지만 하위 작업에서 선택한 작업을 실행하려고했지만 오류가 발생했습니다. 아마 Child에서 Parent로 변수를 전달하고 싶지는 않습니다. 하위에서 선택된 SQL 작업 만 실행하면됩니다.

SSIS는 초보자입니다.

감사합니다,

+0

호출 된 패키지에서 테스트 할 수있는 변수를 전달하지 않으려면 패키지 실행 태스크를 선택하고 실행할 패키지 내에서 실행할 태스크를 선택하는 방법이 없습니다. 패키지를 복사하여 불필요한 작업을 모두 삭제 한 다음 실행할 작업 만 포함 된 새 버전을 실행할 수 있습니다. –

답변

1

카롤 내가 어떻게 부모 하나에 전체 솔루션 (자식)을 실행하는 선물을 본 적이 모든 부모 - 자식 솔루션입니다.

그것이 유일한 방법이기 때문입니다. 상위 패키지에서 하위 패키지의 일부 요소 만 호출 할 수있는 방법은 없습니다. 스크립트 작업에서 매우 복잡한 저수준 코딩을 원하지 않는 한 전체 하위 패키지 만 실행할 수 있습니다.

당신은 당신의 티핑 포인트가 위치를 결정해야하고, 다음 중 하나를 수행하여 (귀하의 경우 더 바람직 중) 다음

  1. 복사 SQL 작업 자녀 패키지에서와에 붙여 넣습니다 당신의 상위 패키지를 만들고 모든 패키지를 하나의 패키지에 포함하십시오.

  2. 변수를 전달하고 전달 된 변수를 기반으로 특정 작업 만 실행할 수 있도록 자식 패키지를 수정하십시오.

  3. 솔루션을 더욱 모듈화하십시오. 하위 패키지에서 실행하려는 태스크를 가져 와서 자체 패키지에 모두 넣으십시오. 그런 다음 세 번째 패키지를 하위 패키지에서 호출하거나 상위 패키지에서 직접 호출 할 수 있습니다.

이러한 것이 가장 좋습니다.

편집 : 옵션 2를 수행하는 방법에 대한 아이디어 - 하위 패키지에 변수 추가. 각 작업 전에 선행 제약 조건에서 변수를 확인하고 특정 값이 아닌 경우 해당 단계를 건너 뜁니다.

즉, 첫 번째 단계부터 (패키지가 시작될 때마다 실행되기 때문에 "더미"스크립트 여야 함) 여러 제약이 있습니다. 첫 번째 단계가 완료되고 변수가 일부 값과 같으면 2 단계로 이동하십시오. 첫 번째 단계가 완료되고 변수가 다른 값과 같으면 3 단계로 이동하는 등의 다른 방법이 있습니다.

부모 패키지에서 실행하려는 작업 만 실행하도록 자식 패키지에 알리는 변수 값을 전달합니다.

당신이 모든 곳에서 선행 제약 조건을 가지고 있기 때문에 결국보기 흉하게 보이지만, 과거에는 그것을 사용했고 작동합니다. 실행을 원할 수있는 경로가 두 개 밖에 없다면 그리 나쁘지 않을 것입니다.

+0

답변 해 주셔서 감사합니다. - 불행히도 저는 이렇게 생각하고있었습니다 : /. 옵션 1은 전혀 맞지 않습니다. 하지만 옵션 2에 관해서 - 당신이 할 수있는 몇 가지 접근 방식을 추천 할 수있는 SQL 작업 (이 작업은 DB에서 일부 테이블을 만듭니다)에서 어떤 결과를 전달하고 싶지 않아 할 수 있습니다. 이 작업을 실행하여 Parent 솔루션으로 작성된 테이블에 대한 다른 수정 작업을 수행하십시오. 나에게 적합한이 종류의 변수를 만드는 방법은 무엇입니까? 이 sql 스크립트의 전체 sql 코드를 변수로 전달하고 싶지는 않습니다. 미리 감사드립니다. – user2433705

+0

내 대답에 세 번째 옵션이 추가되었습니다. –

+0

흠 3 번째 옵션이 가장 좋은 것 같습니다. 같은 sql 스크립트를 가리키는 두 개의 하위 솔루션을 가질 수 있습니다. 따라서 수정 사항은 SSIS의 솔루션 내에서 변경할 필요가 없습니다. SQL 스크립트 만 있습니다. 대신 폴더에 몇 가지 솔루션이 있지만 그걸로 살 수 있습니다. 아이디어를 주셔서 대단히 감사합니다 :) – user2433705

관련 문제