2015-02-04 2 views
0

biztalk를 사용하여 무역 파트너의 X12 파일을 인바운드 할 때. 파일의 ISA 세그먼트를 db 테이블에 저장해야합니다.EDI.ISASegment에서 여분의 문자가 발견되었습니다.

나는 ISA 문자열을 가져 오기 위해 EDI.ISA_Segment 속성을 사용하고 있습니다.

최근 한 거래 상대방에게 주목했습니다. 는 ISA 세그먼트에있는 여분의 문자가 위치 : 는 ISA 세그먼트는 다음과 같이한다

ISA*00*   *00*   *ZZ*########  *ZZ*#####   *150105*0606*^*00501*000000936*1*P*>~ 

그러나 승격 된 속성을 사용하여 ISA_segment했다 :

ISA*00*   *00*   *ZZ*########  *ZZ*#####   *150105*0606*^*00501*000000936*1*P*>~ 
G 

있다 여분 < LF> + G ISA 세그먼트에서.

무역 파트너는 세그먼트 접미사가있는 X12 파일을 보내고 BizTalk 계약에서도 올바르게 구성되었습니다.

BizTalk가 "~"에 도달 한 후 ISA_segment에 2 개의 여분의 문자를 사용하는 것 같습니다. 이것이 버그인지 아니면 일부 잘못된 구성이 발생했는지 궁금합니다.

답변

0

메모장 + +와 같은 좋은 텍스트 편집기를 사용하여 원본 EDI를 볼 필요가 있으므로 문자가 정확히 무엇인지 확인할 수 있습니다.

X12 사양을 사용하면 세그먼트 종결 자의 일부로 CR 및/또는 LF를 사용할 수 있으므로 인코딩을 EDI에서 데이터베이스로 변경하는 부작용이 될 수 있습니다.

+0

감사합니다. 남자. NotePad ++는 캐릭터가 무엇인지보기 위해 사용하고 있습니다. 그리고 그것은 데이터베이스 측에서 일어나지 않습니다. 왜냐하면 나는 또한 ISASegment를 eventlog에 출력하고 또한 여분의 문자를 가지고 있기 때문입니다. 하지만 UTF-8/유니 코드에서 Basic으로 charset을 변경하면 도움이 될지 확인합니다. – Zee

+0

프로모션 속성이 해제되었으므로 데이터베이스가 아닐 것입니다 ...하지만 올바른 위치에 있으며 동의 설정을 확인하고 거래 파트너가 LF 만 사용하는 경우 (원본 메시지를보고 문자가 포함되어 있는지 확인한 후) CR + LF를 예상하도록 BizTalk에 알리지 않습니다. –

관련 문제