2009-04-06 7 views
0

나는이 데이터 (모든 요소는 선택 사항)가 원래 요청의 요소는 선택 사항이므로 매핑은 은 원래 포함 된 요소에 대해서만 해당 요소를 생성합니다. 그러나 요청의 유효성 검사는 실패합니다.BizTalk 2006 R2 매핑 문제

예 :

<data> 
<optionalElement3> 
<value1>1</value1> 
<value2>2</value2> 
</optionalElement3> 
</data> 

<request> 
<Element3> 
<subelement1>1</subelement1> 
<subelement2>2</subelement2> 
</Element3> 
</request> 

에 매핑 될 것입니다 그리고 내가 Element1이와이 element2를 누락하기 때문에 검증이 실패합니다. 응답해야한다 (내 생각) :

<request> 
<Element1 xsi:nil="true" /> 
<Element2 xsi:nil="true" /> 
<Element3> 
<subelement1>1</subelement1> 
<subelement2>2<subelement2> 
</Element3> 
</request> 

이 어떻게 매핑에서이 작업을 수행 할 수 있습니다? 요소가 출력 메시지에 생성 된 인지 어떻게 확인할 수 있습니까? 하위 요소가 존재하지 않는 경우

그리고, 그런데, (의는 "데이터/optionalElement1/값 1은"어떻게 대상 하위 요소 "요청/Element1이는/subelement1"이 생성되어 있는지 확인 할 수 있습니다 가정 해 봅시다?

답변

0

당신은 매퍼 (mapper)에서이 모든 것을 할 수 있습니다. 잠시 동안 Biztalk에 가본 적이 없으며 그것을 가지고 있지 않지만, 매퍼 (mapper)에 functiod가 있다는 것을 알고 있습니다. 이 필드의 존재 여부에 따라 매퍼에 적절한 작업을 지정할 수 있습니다.

tar에 기본값을 지정하여 필드를 만들도록 강요합니다 스키마를 가져 오십시오. 속성 창을 통해 매퍼를 사용하여이 작업을 수행 할 수도 있습니다.

+0

예. 그 정도는 알고 있습니다.문제는 세 번째 레벨 요소 ("request/Element1/subelement1")가 아니라 두 번째 수준 요소 ("request/Element1")와 관련됩니다. 복잡한 유형이기 때문에 이러한 요소에 어떤 기본값을 줄 수 있습니까? 자식 요소가없는 경우에도 이러한 요소를 만들려고합니다. –

0

호세,

펑션을 루핑하는 테이블을보고 싶을 것입니다. 여기 그것에 대한 게시물이 있습니다.

http://geekswithblogs.net/Chilberto/archive/2008/04/16/121274.aspx

테이블 추출이 펑 토이 드를 사용하여 당신에게 당신의 솔루션을 제공해야합니다. 또한 매퍼를 이해하기에 좋은 시리즈가 있습니다.

http://www.bizbert.com/bizbert/2008/02/07/Understanding+The+BizTalk+Mapper+Part+1+Introduction.aspx

-Bryan

1

은 매우 간단합니다. 매핑에 xlst 파일을 사용하십시오.

간단한 if 조건을 사용하면 opetion 요소에 대한 값이 있는지 여부를 확인할 수 있습니다. 값이 있으면 null (비어 있음) 값을 매핑합니다. 따라서 선택적 요소에 대한 값이없는 경우에도 복잡한 요소가 생성됩니다.

호프가 문제를 해결할 수 있기를 바랍니다.