My scenario relates to a Sender File Adapter and a Receiver IDoc Adapter. My Outbound Message Type / Data Type has multiple Complex elements which I later replicated to only three(3) Complex elements to simplify checking the issue. The elements defined in IR are as follows:
1.EDI_DC: Element occuring once with multiple fields
2.E2IDKU1: Element occuring 0..unbounded with multiple fields
3.E2EDKO3: Element occuring 0..unbounded with multiple fields
IDirectory has a Sender File Adapter has a Communication channel with the following specifed in FCC:
Document Name: MT_RecManager_Test_O
Document Namespace: http://mrgnetwork.com/WF/RecManager
Document Offset: <nothing specified>
RecordSet Name: RecordSet
RecordSet Namespace: <nothing specified>
RecordSet Structure: EDI_DC40,1,E2IDKU1, *,E2EDK03, *
RecordSet Sequence: Ascending
RecordSets per Message: *
KeyFieldName: SEGNAM
KeyFieldType: String(Case Sensitive)
EDI_DC40.fieldNames: SEGNAM,MANDT,DOCNUM,DOCREL,STATUS,DIRECT, EDI_DC40_FILLER1
EDI_DC40.fieldFixedLengths: 10,3,16,4,2,1,6
EDI_DC40.keyFieldValue: EDI_DC40
EDI_DC40.missingLastFields: add
EDI_DC40.additionalLastFields:ignore
EDI_DC40.endSeparator: 'nl'
E2IDKU1.fieldFixedLengths: 30,3,16,6,6,2,3,35,35,3,3
E2IDKU1.keyFieldValue: E2IDKU1
E2IDKU1.fieldNames: SEGNAM,MANDT,DOCNUM,SEGNUM,PSGNUM,HLEVEL,BGMTYP,BGMNAME,BGMREF,BGMLEV,BGMACC
E2IDKU1.missingLastFields: add
E2IDKU1.additionalLastFields: ignore
E2IDKU1.endSeparator: 'nl'
E2IDKU1.keepIncompleteFields: yes
E2EDK03.fieldFixedLengths: 30,3,16,6,6,2,3,8,6
E2EDK03.keyFieldValue: yes
E2EDK03.fieldNames: SEGNAM,MANDT,DOCNUM,SEGNUM,PSGNUM,HLEVEL,IDDAT,DATUM,UZEIT
E2EDK03.missingLastFields: add
E2EDK03.additionalLastFields: ignore
E2EDK03.endSeparator: 'nl'
E2EDK03.keepIncompleteFields: yes
ignoreRecordSetName: true
The test file contents are as follows: (please note that I have pasted the file contents in this limited "Plain Text" field, the lines are wrapping around):
EDI_DC40 4000000000000000000700 302112233445566
E2IDKU1 100000000000000000000000100000001LBXLOCKBX 1
E2IDKU1 200000000000000000000000100000001LBXLOCKBX 1
E2EDK03 10000000000000000000000020000000201120081114092712
When I run the above file contents with the FCC RecordSet as follows, the Payload is empty and I receive a message that: Empty Document found. Proceed without sending message
RecordSet Structure: EDI_DC40, 1,E2IDKU1,,E2EDK03,
When I run the above file contents with the FCC RecordSet as follows, the Payload is correctly formed and I receive my message in the Integration Engine and can see it in SXMB_MONI:
RecordSet Structure: EDI_DC40, 1,E2IDKU1,2,E2EDK03,1
I want to be able to specify an asterisk "*" in RecordSet Structure as the file contents can vary for KeyFields E2IDKU1 and E2EDK03.
I have seen various messages in SDN referring to checking the File contents and FCC and I have already done so without any results. This feature has been widely used in PI. Is there a change in PI 7.0. We are currently running PI 7.0 / SP12. Please advise.
Channel <Channel Name>: Empty document found. Proceed without sending message.
Please note that as stated before that if I change the RecordSet Structure and DO NOT specify an asterisk "*", I do not get the "Empty document found message" and the message actually appears in Integration Engine with a payload.
Thanks in advance for your input.
Edited by: Ravinder Masuta on Nov 25, 2008 3:43 AM
Edited by: Ravinder Masuta on Nov 25, 2008 3:45 AM
Edited by: Ravinder Masuta on Nov 25, 2008 3:47 AM
Edited by: Ravinder Masuta on Nov 25, 2008 3:48 AM