Quantcast
Channel: SCN : All Content - Process Integration (PI) & SOA Middleware
Viewing all articles
Browse latest Browse all 7030

Problem in IDoc administrative segments while converting IDoc text to IDoc xml

$
0
0

Hi Experts,

 

I am using file channel in PI for converting IDoc flat file into xml. I am using the standard module SAP_XI_IDOC/IDOCFlatToXmlConvertor.

 

The problem is with IDoc administrative segment which is 63 character long as described below:

 

Segment name (30) + SAP client (3) + IDoc number (16) + number of SAP segments (6) + Number of the hierarchically higher SAP segment (6) +

+ Hierarchy level (2)  = 63 chars.

 

Segment name, SAP client, IDoc number is fine. But I need to understand the functionality of 4th and 5th part in the above distribution.

 

number of SAP segment (excluding the header) --> If I generate an IDoc flat file, this 6 char field is generated as 000001, 000002, 000003 and so on ..

EDI_DC40  1200000000006044381731 3012  OILMAT05                ZZIFS_OILMAT05          ZSD_OILMAT                           ZSD_OISAPPDLLS  PDLCLNT120                                                                                     SAPIDS001 LS  DDSUD000                                                                                       20141009143818                                                                                                          20141008121507
E2MARAM007              120000000000604438100000100000002N  1000040     20100408      20140922                      ZFER 15121500             EA                                                                                                                                      199.040 183.040 KG 208.000 0002                                                                    0.000   0.000   0.000                                                                                                        999                                                                                                                                                              2                                                                                                                                                                              
E2OILMA001              120000000000604438100000200000103        
E2MAKTM001              120000000000604438100000300000103   4Visco 2000 A3/B3 15W-40, 208L E4  
E2MAKTM001              120000000000604438100000400000103   DVisco 2000 A3/B3 15W-40, 208L E4  
E2MAKTM001              120000000000604438100000500000103   EVisco 2000 A3/B3 15W-40, 208L E4  
E2MAKTM001              120000000000604438100000600000103   FVisco 2000 A3/B3 15W-40, 208L E4  
E2MAKTM001              120000000000604438100000700000103   GVisco 2000 A3/B3 15W-40, 208L E4  

 

 

 

So I expected that same way I could keep it in the IDoc text file which I have to convert into IDoc xml but this is creating a problem. I am not sure what should be correct pattern if I wish to create a file same way as I got from the standard output for IDoc text.If I keep the fields as 000001, 00002, 000003,

I get an error that IDoc could not be parsed properly by the sender channel.

 

For example, the following file is not read by the channel

 

EDI_DC40  1201000000000123456413 9011  SHPMNT05                SHPMNT05      SHPADV                  SUD    SHPADVSAPIIVLS  Z4ECLN100 Barloworld                                                                           A000000026LS  IIVCLNT001                                                                                     20141014164458                                                                                                          20141014164458
E2EDT20002              12010000000001234560000010000000112345678900002  301 01ABC123                                                                                                                                                                                                                                                                                            
E2EDL20003              12010000000001234560000020000000200001005559876BNMK                            CIFDE STADT                    01                                                                                                                         14401005                                                        20141014     
E2EDL21                 120100000000012345600000300000002LF                                            
E2EDT13001              120100000000012345600000400000002010                  20141014                    20141014                                                                            
E2EDL24007              120100000000012345600000500000001000010146AF4                        E4-PE46XC-205l                                                                          AX  SEKRABC54321  CASTROL ANVOL PE 46 XC8.000                      EA 1853.200 1982.000 KGM                             00020002 05                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          

 

If I keep some random values for 000001, 000002,000003, 000004 ...in above file (say 000001, 000004, 000006, 000009...), then the file is processed successfully (Idoc text to IDoc xml).

 

Am I doing something wrong here ?

 

Thanks,

Ravi.


Viewing all articles
Browse latest Browse all 7030

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>