두 개의 통합 개체가있는 Siebel 7.8 애플리케이션이 있으며 둘 다 첨부 파일에 대한 통합 구성 요소가 있습니다. 그중 하나는 첨부 필드를로 DTYPE_ATTACHMENT
정의하고 다른 하나는이를로 정의합니다 DTYPE_TEXT
(base64 데이터 문자열을 읽고 디스크의 파일에 쓰는 인바운드 웹 서비스에서 사용됨).
UI 데이터 매핑과 EAI Data Transformation Engine
서비스를 사용하여 IO에서 다른 데이터로 데이터를 변환하려고하는데 지금까지 성공하지 못했습니다.
DTYPE_ATTACHMENT
로 변환하면 DTYPE_TEXT
오류가 발생하지 않지만 첨부 파일 base64 데이터가 손실되고 결과 XML에서 row_id 만 가져옵니다.DTYPE_TEXT
로 변환하면 DTYPE_ATTACHMENT
다음 오류가 발생합니다.
소스 표현식이 첨부 ID 'MDEyMzQ1Njc [...] DEy8 / W3CDCys7U2w =='를 생성했지만 해당 첨부를 찾을 수 없습니다. (SBL-EAI-04058)
base64 데이터를 잃지 않고 통합 개체 중 하나에서 다른 개체로 데이터를 변환 할 수있는 방법이 있습니까? 변환이 "텍스트에 첨부"또는 "텍스트에 첨부"인지 상관하지 않습니다. 어느 쪽이든 필요한 것을 구축 할 수 있습니다. 통합 개체의 정의를 변경할 수 없지만 필요한 경우 중간 단계로 사용할 새 개체를 만들 수 있습니다.
나는 포기한다. 할 수 없습니다. 그것은 불가능하며 그것을 해결하려는 더 이상의 시도는 알려진 우주를 붕괴시킬 것입니다. 감사합니다, Siebel!
하나...
내 요청에 대한 아주 간단한 해결 방법을 찾았습니다. 사실, 너무 간단해서 그것을 알아내는 데 4 일이 걸렸다는 것을 믿을 수 없습니다.
DTYPE_TEXT
필드를 DTYPE_ATTACHMENT
1로 또는 그 반대로 강제하는 대신 출력 통합 개체에 두 가지 버전의 필드를 만들었습니다. content (DTYPE_ATTACHMENT)
, 및 contentText (DTYPE_TEXT)
. 이제 두 필드의 이름은 다르지만 External Name
및 XMLTag
속성 ( content
) 을 공유합니다 . Siebel의 경우 필드가 다르며 데이터 매핑에서 다르게 처리 할 수 있습니다. 그러나 데이터 변환이 실행되면 둘 다가 <content>
되므로 웹 서비스의 다른쪽에있는 외부 시스템은 차이를 인식하지 못합니다. 끝난!
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다