IDOC Splitting
Folks,
I have a iDOC - to - iDOC scenario where i need to split an idoc on receiving side without using BPM. Can anybody please tell me how to do it . We are running on SP14
Manish
Hello Manish,
no, thats all.
The Interfacemapping is the same.
But please check in the mapping that you build a mapping on the UNBOUNDED segment now. But I think you have done that.
Just for understanding:
This mapping will not create singel IDOCs in XI, this will create an IDOC package and this IDOC package is sent through the IDOC adapter then.
In your R/3 system you will get single IDOCs then.
best regards
Werner
Similar Messages
-
IDoc Split to different IDocs!!!!!!!!URJENT
Hi
Is there any possibility to split the IDoc ?
We have a scenario like - Header without any data - Segments with the data - trailer segment with the details of the segment count and parent idoc details.
We received one Inbound IDoc with 20000 segments.
While processing the IDoc, because of the huge data it is going to dump with low memory issue.
Is there any possiblity to split the segments into seperate idocs...in WE19 we can cut down the segments and create seperate idoc but count is very high we are not able to identify the numbers count.
Is there any other way we can process the IDoc splitting into different IDocs.
VVR
FICO ConsultantHi Vuppala,
CAn you please help how u split the IDOC.
I have ARTMAS IDOC and as there is huge data i need to split it.
Can you please help
Thanks,
Akriti -
hi,
what is the use of idoc split program.in which scenario it will be used?
GaneshSpliting the idoc - suppose you have purchase order - when you create purchase order then it will create one idoc.
some times requirement would be like - purchase order has many line items ,clients need each line item as one idoc ,here we need create multiple idoc for one order ( For this we need to change the logic with in function module)
Reward Points if it is helpful
Thanks
Seshu -
Issue:
We could observe that the error coming in the Idoc XXX; are errors involving the financial postings that occur as a result of the inventory movement associated with a goods issue.
Error Message:
Maximum number of items in FI reached
The above error in IDOC is due to max. number of items for an FI Document(999) is exceeded.
As per my understanding, I think we have to split the delivery document into two parts and post to FI accordingly
As FI documents is getting posted through IDOC, how can I limit my IDOC to process just 50% of line items(How to split my Delivery though IDOC)Refer below note:
Note 1353827 - AC interface: Document split in FI for goods movements
Regards
Sreenivas -
Hi,
I got a requirement for an inbound idoc
Idoc type : DELFOR02
message type : DELINS
User exit functional module : IDOC_INPUT_DELINS
My actual reqirement is.......
The DELFOR02 Idoc sent from the subsystem to SAP will have to be split into multiple DELFOR02 Idocs depending upon the number of line items.
The DELFOR02 Idoc is separated into header and item data. The header data will have to be mapped to each split Idoc and then update each Scheduling agreement. The Item detail will have to be split for each occurrence of an E1EDP10 segment. For example if 3 line items are contained on the DELFOR02 Idoc this will have to be split in to 3 Idocs, as shown below:
DELFOR02 Idoc
Header Level E1EDK09
Item Level E1EDP10
E1EDP10
E1EDP10
How i approach this requirement.......please help me out..its critical reqHi,
I am just briefing the steps on how you can proceed. The following information may not be complete.
Copy the functional module : IDOC_INPUT_DELINS to new custom FM Z_IDOC_INPUT_DELINS and link this to existing process code.
In FM Z_IDOC_INPUT_DELINS :
store the header data into global structure, also populate T_NEW_IDOCDATA.
Then based on your conditions, i.e. no of segments E1EDP10
case IDOC-SEGNAM.
when 'E1EDP10'.
store the segment data into internal table T_NEW_IDOCDATA.
perform create_new_split_idoc.
endcase.
FORM CREATE_NEW_IDOC.
MOVE-CORRESPONDING IDOC_CONTRL TO S_CONTROL_RECORD_IN.
S_CONTROL_RECORD_IN-MESCOD = 'SPT'. "new message code SPT for split Idocs
S_CONTROL_RECORD_IN-DOCNUM = SPACE.
S_CONTROL_RECORD_IN-IDOCTYP = IDOC_CONTRL-IDOCTP.
APPEND S_CONTROL_RECORD_IN.
CALL FUNCTION 'INBOUND_IDOC_PROCESS'
TABLES
IDOC_CONTROL = S_CONTROL_RECORD_IN
IDOC_DATA = T_NEW_IDOCDATA
EXCEPTIONS
OTHERS = 1.
IF SY-SUBRC = 0.
COMMIT WORK.
endif.
ENDFORM.
For split Idocs create a new message code SPT and do the partner profile setting in WE20.
Thanks,
Savitha -
ORDERS Idoc splitting into two
Hi,
I have requiremnt where i need to Split Orders idoc into messages.
1. Orders XML file 2.XML file only with control record fields.
i have seen all the discssion on this and deceiced to implement the scenario as per
/people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible blog. But the problem is need to use two message types on the target side.. for splitting the message..
ORDERS and Contrlo record Fields message type... i can't change the standard idoc..
Can i add the Control record fields to Standard IDOC in any way.... like exporting file...if so..
tell me whether the Idoc will split into two messaged or not....
Regards,
DeepMy doubt is in the mentioned blog target msg type was created one.. here i need to take with ORDERS idoc(ED in our case). I need to split the IDOC everytime when it triggers based on RCVPRN field value.. this value is always so there should be 2 values everytime.
you will need to duplicate the IDOC at the target side to achieve this...if you are successful in doing the 0...unbounded thing for your IDOC....
1) Duplicating:
Duplicating is not Multimapping.....Multimapping is what you saw in the blog and duplicating is right-clicking on the node and choosing Duplicate Subtree....no two messages will be created in this process (duplicating).....
2) Multimapping:
it is used to create two (or more) different messages at the target end...
Does it split into two message ( ORDERS XML and Control Record XML)
No it wont split the IDOC into two messages.....
So if your requirement is to have only one target message with seperate IDOC nodes..having ORDERS and Control data individually...then go for duplication method...apply the condition for RCVPRN to generate the nodes...
If your req is to have two different messages at the target then use multimapping apply the condition for RCVPRN to generate the two different messages.....
Hope it helps...
Regards,
Abhishek. -
IDoc Split with out BPM using SplitByValue at the LineItem Level
I have an Invoice idoc contains line item and identifier changes into groups, let's say A & B
Using Message Mapping, Will i be able to Split into 2 IDOCs and combine A into one IDOC and B into Another IDOC and send it across to ECC with out using BPM?
Btw the header is commom for both the IDOCs
Source
<Header>
<headertext>headername</headertext>
<lineItem>
<item1>A</item1>
<item2>B</item2>
<item3>A</item3>
<item3>B</item4>
</item>
</lineitem>
</header>
Target
IDOC 1
<Header>
<headertext>headername</headertext>
<lineItem>
<item1>A</item1>
<item2>A</item2>
</item>
</lineitem>
</header>
IDOC 2
<Header>
<headertext>headername</headertext>
<lineItem>
<item1>B</item1>
<item2>B</item2>
</item>
</lineitem>
</header>
Any inputs are appreciatedI actually gave wrong information on the source structure, I am trying to execute scenario with the given examples, meanwhile any help is appreciated
<Header>
<Date>20100112</Date>
<Amount>10</Amount>
<No>20</No>
</Header>
<InvoiceItem>
<Line1>10</Line1>
<Line2>10</Line2>
<Amount>10</Amount>
<ActionIndicator>I</ActionIndicator>
</InvoiceItem>
<InvoiceItem>
<Line1>20</Line1>
<Line2>20</Line2>
<Amount>20</Amount>
<ActionIndicator>C</ActionIndicator>
</InvoiceItem>
<InvoiceItem>
<Line1>30</Line1>
<Line2>30</Line2>
<Amount>30</Amount>
<ActionIndicator>I</ActionIndicator>
</InvoiceItem>
<InvoiceItem>
<Line1>40</Line1>
<Line2>40</Line2>
<Amount>40</Amount>
<ActionIndicator>C</ActionIndicator>
</InvoiceItem>
Target 1
<Header>
<Date>20100112</Date>
<Amount>10</Amount>
<tNo>20</No>
<ActionIndicator>I</ActionIndicator>
</Header>
<InvoiceItem>
<Line1>10</Line1>
<Line2>10</Line2>
<Amount>10</Amount>
</InvoiceItem>
<InvoiceItem>
<Line1>30</Line1>
<Line2>30</Line2>
<Amount>30</Amount>
</InvoiceItem>
Target 2
<Header>
<Date>20100112</Date>
<Amount>10</Amount>
<tNo>20</No>
<ActionIndicator>I</ActionIndicator>
</Header>
<InvoiceItem>
<Line1>20</Line1>
<Line2>20</Line2>
<Amount>20</Amount>
</InvoiceItem>
<InvoiceItem>
<Line1>40</Line1>
<Line2>40</Line2>
<Amount>40</Amount>
</InvoiceItem>
I know the part of Splitting IDOC, which was executing correctly, with the external data type changes. Please advice -
Hi,
I have a scenario in which the invoice idoc's coming out of R/3 are being routed for a set of customers via XI(with some transformations in XI) and others are routed to a 3rd party.
My question is invoic01 idocs need to identify based on customer details and go correspondingly to XI or the 3rd party. eg: 12 customers are set to receive invoice through XI. How is it possible to send the invoice to these 12 customers Via XI based on the invoice idoc created in R/3? Mostly its like segregating the invoice idocs based on customers through XI and the rest to the 3rd party.
Any help would be highly appreciated.
-TeresaI think that you mean that you do not even want to receive the IDocs in XI if they are not the 12 customers that should be routed there? If this is the case, I would sugest setting up 2 output types for invoices in Output Determination inside R/3. Have one of them point to XI, the other one to the 3rd party product. On the XI output, set up a requirement on the output procedure to select whatever criteria it is and only trigger the output if the criteria is met. On the other output type only trigger the output if the criteria is not met. This way you can filter them out before ever getting into XI.
-
File to multiple IDOC split without BPM
Hi expert,
I have a flat file to IDOC scenario. In flat file, I have thousands of rows. Each row need to create one IDOC. In IDOC, I have 3 segments(seg2 is the child of seg1, seg3 is the child of seg2). Each field in flat file will be mapped to the same name in IDOC. Here is my example structure:
MT_Flatfile
row--0:unbounded
seg1a --0:1
seg1b --0:1
seg2a - 0:1
seg2b - 0:1
seg3a - 0:1
seg3b - 0:1
Sample_IDOC_name
IDOC - 0:unbounded
EDI_DC40
seg1 - 1:1
seg1a - 0:1
seg1b - 0:1
seg2 - 0:unbounded
seg2a - 0:1
seg2b - 0:2
seg3 - 0:unbounded
seg3a - 0:1
seg3b - 0:1
I mapped row to IDOC. It did create multiple IDOCs. But each IDOC only contain seg1. Then I mapped row to seg2 and seg3 node. The first IDOC has three segments and the rest still only have seg1. And in first IDOC, the seg1 is filled correct. seg2 and seg3 have multiple records. Can anyone tell me how I do mapping without using BPM for this case to make each IDOC has one seg1, one seg2 and one seg3?
Thanks a lot.
Charles
Edited by: Charles M Gates on Nov 22, 2011 4:08 PM
Edited by: Charles M Gates on Nov 22, 2011 4:09 PMHi,
Your issue come from certainly to the fact that in source file, for at least one row, there is a segN which is missing (see occurence "0..1").
And so after that, you have a bad behavior to the target Idoc segment, due to the fact you did not manage properly the Context. In Message Mapping, use the right click to display your context, and you will see a difference of context between your source and the desired target.
the error certainly appears for a sub-segment which exist whereas its highest level is missing (in your source).
regards
Mickael -
One IDOC split to multiple IDOC's
Scenario is in ECC 6.0 and SAP PI 7.0 .
SAP is sending Custom IDOC to PI 7 and PI 7 is sending that to receiver system.
The custom IDOC sometimes contains more than 250 segments and receiver system is not able to process IDOC's with more than 250 segments. Receiver system is having this limitation.
QNS :
(1) What are options to restrict IDOC's creation to 250 segments in SAP
OR
(2) Can it be taken care at SAP PI 7.0 end. Like 1 doc is coming to PI with more than 250 segments and Can PI break this into multiple idoc's of max 250 segment length so that no data loss is there.
Your suggestions are needed for both options.
Thanks in advance..Try out this mapping-
You need use 1:n mapping by making the occurance of target MT to unbounded.
Idoc -> Index(context,increment1)-> Division by n(250)->floor->SplitByValue->collapseContext->TargetMT
Segment ->Index(context,increment1)-> Division by n(250)->floor->SplitByValue->Target Segment
Iam not sure on how to build this logic in SAP.But the effective way is to implement this restriction in SAP before IDoc reaching PI. -
Hi,
when I run transaction PFAL with message type HRMD_A and basic type HRMD_A05, I find that new IDocs are created when the number of segments exceed 400. I would like to increase that number. How can I achieve that?
Thanks.
/ ElvezHi!
You should have a look at transaction <b>WE20</b> (partner profiles), look for the pp that is used in this IDoc scenario, then double click on output message type, and in tab <b>Outbound Options</b> you should see the value in field <b>Pack. size</b>.
Hope this helps - please reward me if it does.
Regards, Joerg -
Hi ,
I am trying to do the ADRMAS+DEBMAS split .I doing it for the first time.
Do i need to configure any thing in ECC apart from partner profile.
Is there any documentation on how to do the split from DEBMDM in XI and what to configure in ECC.
Please guide me.
Thanks and Kind Regards,
BasheerHi Basheer,
Please let me know your E-mail id, so that I can send a document to configure in ECC as well as you can use XI standard content for MDM for configuration in XI. so SAP has already designed XI content just you need to configure that.
Hope it will helps you.
Regards,
RDNPrasad.
Edited by: RDNPrasad on Jun 26, 2008 6:39 AM -
Message Split -- File to Idoc Scenario - ( Without BPM )
I have multiple records coming to XI in a File and I have to create Multiple Idocs to R/3.
Due to Complexity of mapping I'm splitting Maaping step into 2 message Mappings.
A-->B
B-->C
In the 2nd Mapping step I'm doing message Split meaning for each Source record I'm creating multiple Idocs ( To be precise each record on the source becomes 4 idocs in the Target.
2nd Mapping step is as follows
Source 1..1
Sourcerecord 0.. Unbounded
field1 0..1
field2 0..1
filed3 0..1
Target
Message 1
Idoc 1.. Unbounded
Idoc Structure..
Message 2
Idoc 1.. Unbounded
Message 3
Idoc 1.. Unbounded
Message 4
Idoc 1.. Unbounded
So based on some criteria each record of Source will be mapped to 4 Messages ( 1 each under each Message )
Is it possible to do this without BPM?. Iam sending all these Idocs to same R/3 System.
Thanks for any help..RKHi,
See the blog
/people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
<i>Basicly we have 2 ways of handling such scenarios:
- we can use a block step and send multiple IDOCs from our BPM
- we can also do a little trick and send multiple IDOCs from the XI without a BPM
The first approach is a standard XI approach. It involves the use of a BPM
so the speed of this transfer many not be very good in case you'd like to send
hundreds or thousands of IDOCs in just one call.
The second approach uses a little trick that was mentioned several times
on the XI Froum by a number of XI developers but is still not very clear to the XI newbies.
It allows us to send multiple IDOCs without the use of a BPM. Most probably this will be your choice
if you'd like to use such 1:N (IDOCs) scenarios effectively.</i>
Please see the bwlow threads also..
IDOC Splitting
File To IDOC Thru XI
Multi-Mappings in BPM (XI 3.0)
Please let me know , your prob..is solcev or not..
Regards
Chilla.. -
File sender adapter:FILE to IDOC without BPM, can't see in SXMB_MONI.
Hi all
I have a FILE - XI - IDOC Async scenario without BPM.
I configured FILE sender adapter and IDOC receiver adapter. I made a mapping to transfer file data to the structure of IDOC.
Now when i am trying to load the file using command prompt, i cud see nothing in the monitoring. Whereas if i go to the communication channel monitoring of runtime workbench, i saw that CC is polling correctly and was reading the file also.
And also wen i saw in the processed folder which i mentioned in the CC configuration for the ARCHIVE DIRECTORY, i saw that file got transferred to the folder also.
I don't understand why i cant see anything in the monitoring.
Could anybody help me to rectify the problem. Is there anything i m missing ?
Regards
NainaRajesh/Amar
TCode:: SXMB_ADM->Integration engine configuration->specific configuration->runtime
Trace_Level = 3 then you can get all MONI PIPELINE Steps also
I did this change but cudn't see anything in SXMB_MONI.
This is how i have configured my process:
http://wiki.sdn.sap.com/wiki/display/XI/FiletoMultipleIDOCSplittingwithoutBPM
But instead of IDOC splitting i have simple FILE - XI -IDOC scenario.
I have configured everything exaclty the same way it is mentioned here. But for me the process is not visible at all.
I can't even see the first request message in the monitoring.
This is the message i can see in the communication channel monitoring:
2010-05-24 09:07:41 Success Channel CC_*: Entire file content converted to XML format
2010-05-24 09:07:41 Warning Channel CC_*: Empty document found. Proceed without sending message
2010-05-24 09:07:41 Success File "/xyz/ABC.txt" archived after processing
Is there any problem with the file and that could be the reason it cant convert the file to the request message MT_REQUEST and thus am not able to see anything in monitoring.
help me guys....this is a simple process and i m stuck...its frustrating
Regards
Naina -
XML to Idoc- XML size more than 200 MB
Hi Experts,
I have an interface with source xml file size more than 200MB. I need to map it to Idoc and send it to ERP. I am planning to change wsdl of idoc(changing occurence 1.1 to 0.99999) to send multiple idocs in one message.
I want to split XML file somehow and send it. what are the different options i have to achieve that ? I am short of ideas.
I know if we have flat file, we can use recordset per message in sender file adapter.
OR
Cleint is willing to send it as a SOAP request, i do not want to use SOAP for such a big file.
Regards
InderHi Inder,
As per sap recommendation we would be able to handle 100 MB, you need to tune your server by increasing the [arametersso that you would be able to handle the messages with big payload.
By default the parameter icm/HTTP/max_request_size_KB will be 10240 which can handle 100MB of file size.if you increase the parameter value by tuning ur system you can process a file bigger than that..
Please refer to the below links for reference....
[link1|http://help.sap.com/saphelp_nw04s/helpdata/en/58/108b02102344069e4a31758bc2c810/content.htm]
[link2|http://help.sap.com/saphelp_nwpi71/helpdata/de/95/1528d8ca4648869ec3ceafc975101c/content.htm]
as per the above suggestions the best practice is to sand as a multiple idocs splitting into chunks.
Cheers!!!!
Naveen.
Maybe you are looking for
-
Region does not pass the value
Hi, I have a region which includes a task flow with a selectonechoice component. This component displays the values true/false and save the value in a managed bean. Also it has the auto submit = true. In my jspx page which has the region inside I hav
-
The light on my powercord no longer lights up when I attach it to the macbook and the macbook shows that it is not being recharged. Is it the cord or the attachment on the computer? Is there a way to fix it so that I don't have to buy a new computer
-
Applying Blending Options to many layers?
I was wondering if it is possible to apply blending options, such as lighten, to multiple layers faster than clicked each individual layer and setting the blending options for each one. Specifically I am have a whole bunch of pcitures, I loaded the f
-
Where are my downloads? iTunes unavailable?
I bought 40 songs in iTunes, however, I couldn't download the songs (well, i got the invoice, yes, but where are my songs?) I get the error message "Unable to check for available downloads. The iTunes Store is temporarily unavailable. Please try agai
-
Date Format ERROR - Repository Browser
Hi all, With the repository browser I can not see any data. In the MS-DOS window (Browser Listener) I am getting the following error: ExecSummary.getObjData() SQLJ Exception:java.sql.SQLException: ORA-01821: Date format not recognized. I am using spa