변환의 모든 단계가 병렬로 실행되며 이제는 Pentaho에서이 동작을 변경할 수있는 방법이 없습니다.PDI/주전자 : 파일 생성 또는 매핑 (하위 변형) 실행을 피하십시오
주어진 경우 특정 필드 (파일 이름에서 읽음)를 확인하고 해당 파일을 처리 할 작업 (매핑 - 하위 변환)을 결정하는 전환 작업이있는 시나리오가 있습니다. 이것은 각각의 매핑 작업 전후, 이메일을 보내는, DB 레코드를 업데이트하는 일부 상용구 작업을 수행, 일반적인 로직 등의 일부입니다
문제는 우리가 더 "ACCC014"파일이가없는 경우 변환을 실행할 수 없습니다. 모든 작업이 병렬로 실행되므로 두 번째 문제가 발생할 수 있으므로 이해할 수 없습니다. 일부 매핑 내에서 XML 파일이 만들어집니다. 그리고 Pentaho가이 작업을 빈 데이터로 실행하는 경우에도 XML 출력 파일 생성을 피할 수있는 방법을 찾을 수 없습니다.
우리는이 스위치 로직을 이론적으로 연속적으로 움직이는 것으로 생각했지만 이러한 종류의 구별을 수행하는 조건부 단계는 발견되지 않았습니다.
우리는 또한 메타 데이터 삽입 작업을 살펴 보았지만 그 방법이 적절하지 않다고 생각합니다. 각 하위 변환은 실제로 다른 작업을 수행합니다. 그들 중 일부는 일부 테이블을 업데이트하고 다른 테이블은 파일을 쓰고 다른 테이블은 다른 데이터베이스간에 데이터를 이동합니다. 모두 입력으로 파일을 받고 send_email 플래그와 메시지 문자열을 반환합니다. 다른 건 없어.
우리가 원하는 것을 할 수있는 방법이 있습니까? 또는 기본 입력/출력을 기반으로 한 로직의 일부를 재사용 할 수있는 방법이 없습니까?
편집 : ACCC014 변환을 추가하십시오. 예, "시작시 파일 생성 안 함"옵션이 선택되어 있습니다.
XML 출력 단계에서이 xml 파일을 생성합니까? 5.2에서 XML 출력 단계에는 파일 탭의 "시작시 파일 생성 안 함"옵션이있었습니다. 확인해 봤어? – user4637357
파일이 없으면 왜 ACCC014 변환을 실행해야합니까? 그것이 당신이 원하는 부작용이 있다면, 그들을 다른 변형으로 분해하십시오. –
@ user4637357 예, XML 파일은 ACCC014 변환에 의해 예를 들어 생성됩니다. "시작시 파일 생성 안함"을 선택했으나 전환 작업에 의해 전송 된 레코드가 없더라도 변환은 어쨌든 실행됩니다. – jfneis