290.10. IDoc에 대한 메시지 본문
290.10.1. IDoc 메시지 유형 링크 복사링크가 클립보드에 복사되었습니다!
IDoc Camel SAP 끝점 중 하나를 사용하는 경우 메시지 본문의 유형은 사용 중인 특정 끝점에 따라 달라집니다.
					sap-idoc-destination 끝점 또는 sap-qidoc-destination 끝점의 경우 메시지 본문은 문서 유형입니다.
				
org.fusesource.camel.component.sap.model.idoc.Document
org.fusesource.camel.component.sap.model.idoc.Document
					sap-idoclist-destination 끝점, sap-qidococlist-destination 끝점 또는 sap-idoclist-server 끝점의 경우 메시지 본문은 DocumentList 유형입니다.
				
org.fusesource.camel.component.sap.model.idoc.DocumentList
org.fusesource.camel.component.sap.model.idoc.DocumentList
290.10.2. IDoc 문서 모델 링크 복사링크가 클립보드에 복사되었습니다!
Camel SAP 구성 요소의 경우 기본 SAP IDoc API 주위에 래퍼 API를 제공하는 EMF(Eclipse Modelling Framework)를 사용하여 IDoc 문서가 모델링됩니다. 이 모델에서 가장 중요한 유형은 다음과 같습니다.
org.fusesource.camel.component.sap.model.idoc.Document org.fusesource.camel.component.sap.model.idoc.Segment
org.fusesource.camel.component.sap.model.idoc.Document
org.fusesource.camel.component.sap.model.idoc.Segment
					문서 유형은 IDoc 문서 인스턴스를 나타냅니다. 개요에서 문서 인터페이스는 다음 방법을 노출합니다.
				
					다음 종류의 메서드는 문서 인터페이스에서 노출됩니다.
				
- 제어 레코드에 액세스하는 방법
 - 대부분의 방법은 IDoc 제어 레코드의 필드 값에 액세스하거나 수정하는 것입니다. 이러한 메서드는 AttributeName 형식이며, 여기서 AttributeName 은 필드 값의 이름입니다( 표 290.2. “IDoc 문서 속성”참조).
 - 문서 콘텐츠에 액세스하는 방법
 getRootSegment메서드는 문서 내용(IDoc 데이터 레코드)에 대한 액세스를 제공하며, 내용을Segment오브젝트로 반환합니다. 각세그먼트는 임의의 수의 하위 세그먼트를 포함할 수 있으며 세그먼트는 임의의 정도에 중첩될 수 있습니다.참고세그먼트 계층 구조의 정확한 레이아웃은 문서의 특정 IDoc 유형으로 정의됩니다. 따라서 세그먼트 계층을 생성(또는 읽기)할 때 IDoc 유형에 정의된 대로 정확한 구조를 따라야 합니다.
					Segment 유형은 IDoc 문서의 데이터 레코드에 액세스하는 데 사용되며, 여기서 세그먼트는 문서의 IDoc 유형으로 정의된 구조에 따라 표시됩니다. 개요에서 Segment 인터페이스는 다음 방법을 노출합니다.
				
					get Cryostatren(String segmentType) 방법은 새 (nested) 하위를 세그먼트에 추가하는 데 특히 유용합니다. 다음과 같이 정의된 type인 SegmentList 의 오브젝트를 반환합니다.
				
					따라서 E1SCU_CRE 유형의 데이터 레코드를 만들려면 다음과 같은 Java 코드를 사용할 수 있습니다.
				
Segment rootSegment = document.getRootSegment();
Segment E1SCU_CRE_Segment = rootSegment.getChildren("E1SCU_CRE").add();
Segment rootSegment = document.getRootSegment();
Segment E1SCU_CRE_Segment = rootSegment.getChildren("E1SCU_CRE").add();
290.10.4. 문서 인스턴스 생성 예 링크 복사링크가 클립보드에 복사되었습니다!
					예를 들어 예 290.1. “Java에서 IDoc 문서 생성” 는 Java의 IDoc 모델 API를 사용하여 IDoc 유형인 Cryostat CUSTOMER_CREATEFROMDATA01 을 사용하여 IDoc 문서를 생성하는 방법을 보여줍니다.
				
예 290.1. Java에서 IDoc 문서 생성
290.10.5. 문서 속성 링크 복사링크가 클립보드에 복사되었습니다!
					표 290.2. “IDoc 문서 속성” Document 개체에서 설정할 수 있는 컨트롤 레코드 특성을 표시합니다.
				
| 속성 | 길이 | SAP 필드 | 설명 | 
|---|---|---|---|
|   
									  |   70  |   
									  |   EDI 아카이브 키  | 
|   
									  |   3  |   
									  |   클라이언트  | 
|   
									  |   8  |   
									  |   날짜 IDoc이 생성됨  | 
|   
									  |   6  |   
									  |   Time IDoc이 생성됨  | 
|   
									  |   1  |   
									  |   방향  | 
|   
									  |   14  |   
									  |   message 참조  | 
|   
									  |   14  |   
									  |   메시지 그룹 참조  | 
|   
									  |   6  |   
									  |   EDI 메시지 유형  | 
|   
									  |   1  |   
									  |   EDI 표준  | 
|   
									  |   6  |   
									  |   EDI 표준 버전  | 
|   
									  |   14  |   
									  |   교환 파일에 대한 참조  | 
|   
									  |   8  |   
									  |   IDoc 유형  | 
|   
									  |   16  |   
									  |   IDoc 번호  | 
|   
									  |   4  |   
									  |   SAP IDoc 릴리스  | 
|   
									  |   30  |   
									  |   기본 IDoc 유형의 이름  | 
|   
									  |   30  |   
									  |   확장 유형 이름  | 
|   
									  |   3  |   
									  |   논리 메시지 코드  | 
|   
									  |   3  |   
									  |   논리 메시지 기능  | 
|   
									  |   30  |   
									  |   논리 메시지 유형  | 
|   
									  |   1  |   
									  |   출력 모드  | 
|   
									  |   10  |   
									  |   수신자 주소 (SADR)  | 
|   
									  |   70  |   
									  |   수신자의 논리 주소  | 
|   
									  |   2  |   
									  |   수신자의 파트너 기능  | 
|   
									  |   10  |   
									  |   수신자의 파트너 번호  | 
|   
									  |   2  |   
									  |   수신자의 파트너 유형  | 
|   
									  |   10  |   
									  |   수신기 포트(SAP 시스템, EDI 하위 시스템)  | 
|   
									  |   
									  |   보낸 사람 주소 (SADR)  | |
|   
									  |   70  |   
									  |   보낸 사람의 논리 주소  | 
|   
									  |   2  |   
									  |   보낸 사람의 파트너 기능  | 
|   
									  |   10  |   
									  |   보낸 사람의 파트너 번호  | 
|   
									  |   2  |   
									  |   보낸 사람의 파트너 유형  | 
|   
									  |   10  |   
									  |   보낸 사람 포트(SAP 시스템, EDI 하위 시스템)  | 
|   
									  |   20  |   
									  |   EDI/ALE: 직렬화 필드  | 
|   
									  |   2  |   
									  |   IDoc의 상태  | 
|   
									  |   1  |   
									  |   테스트 플래그  | 
290.10.6. Java에서 문서 속성 설정 링크 복사링크가 클립보드에 복사되었습니다!
					Java에서( 표 290.2. “IDoc 문서 속성”에서) 제어 레코드 속성을 설정할 때 Java 빈 속성에 대한 일반적인 규칙이 적용됩니다. 즉, 특성 값을 가져오고 설정하는 데 getName 및 setName 메서드를 통해 name 속성에 액세스할 수 있습니다. 예를 들어 iDocType,iDocTypeExtension 및 messageType 속성은 Document 오브젝트에 다음과 같이 설정할 수 있습니다.
				
// Java
document.setIDocType("FLCUSTOMER_CREATEFROMDATA01");
document.setIDocTypeExtension("");
document.setMessageType("FLCUSTOMER_CREATEFROMDATA");
// Java
document.setIDocType("FLCUSTOMER_CREATEFROMDATA01");
document.setIDocTypeExtension("");
document.setMessageType("FLCUSTOMER_CREATEFROMDATA");
290.10.7. XML에서 문서 속성 설정 링크 복사링크가 클립보드에 복사되었습니다!
					XML에서 제어 레코드 특성을 설정할 때 idoc:Document 요소에 특성을 설정해야 합니다. 예를 들어 iDocType,iDocTypeExtension 및 messageType 속성은 다음과 같이 설정할 수 있습니다.