Skip to Content
0
Former Member
Nov 10, 2006 at 09:05 PM

XI Business content for MDM - Syntax error in IDOC adapter

11 Views

Hi mates,

I'm trying out the Master Data Harmonization scenario for Vendor data with R/3 as the client system. I'm using SAP delivered XI Business content for MDM. The mapping program is generating ADRMAS and CREMAS IDocs but the IDOC adapter reports that there is a syntax error in ADRMAS IDOC. Find below the details.

<i><SAP:Category>XIAdapter</SAP:Category>

<SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_IDOC_METADATA</SAP:Code>

<SAP:P1>Segment 'E1BPAD1VL', segmentnumber '000001' not correct in structure ADRMAS02</SAP:P1>

<SAP:P2 />

<SAP:P3 />

<SAP:P4 />

<SAP:AdditionalText />

<SAP:ApplicationFaultMessage namespace="" />

<SAP:Stack>Error: Segment 'E1BPAD1VL', segmentnumber '000001' not correct in structure ADRMAS02</SAP:Stack>

<SAP:Retry>M</SAP:Retry></i>

Generated ADRMAS IDOC is

<i> <?xml version="1.0" encoding="utf 8" ?>

<ADRMAS02>

<IDOC BEGIN="1">

<EDI_DC40 SEGMENT="1" />

<E1ADRMAS>

<OBJ_TYPE>LFA1</OBJ_TYPE>

<OBJ_ID>0000500140</OBJ_ID>

<CONTEXT>0001</CONTEXT>

<E1BPAD1VL SEGMENT="1">

<FROM_DATE>00010101</FROM_DATE>

<TO_DATE>99991231</TO_DATE>

<NAME>Swift Transportation</NAME>

<COUNTRY>US</COUNTRY>

<COUNTRYISO>US</COUNTRYISO>

<LANGU>E</LANGU>

<LANGU_ISO>EN</LANGU_ISO>

<SORT1>SWIFT TRANSPORTATION</SORT1>

<TIME_ZONE>CST</TIME_ZONE>

<E1BPAD1VL1 SEGMENT="1">

<LANGU_CR>E</LANGU_CR>

<LANGUCRISO>EN</LANGUCRISO>

<ADDR_GROUP>BP</ADDR_GROUP>

</E1BPAD1VL1>

</E1BPAD1VL>

</E1ADRMAS>

</IDOC>

</ADRMAS02></i>

Strangely, the control record is blank. I looked at the XSLT program, it is coded that way. I do not understand the reason. Is the error pointing to the control record?

Look at the code sample from XSLT mapping program

  <xsl:for-each select="IDOC/*/E1ADRMAS">
  	<IDOC BEGIN="1">
  	<!-- The header data of each single ADRMAS-IDoc needs to be there but does not require specific data -->
  		<EDI_DC40 SEGMENT="1"/>
  		<xsl:apply-templates select="."/>
  	</IDOC>  
  </xsl:for-each>

How can an IDOC w/o control record be posted?

Did anyone come across this error? Whats wrong/missing?

I appreciate ur inputs.

thx in adv

praveen