cancel
Showing results for 
Search instead for 
Did you mean: 

B12 B1 BusinessPartnerGroups ObjectType (10) Problem

0 Kudos

Hi created a BizStep to map BusinessPartnerGroup ObjectType 10 (B1.2007_BPG) but I received the following error message:

Sender SysId, Sender ObjectType or Sender payload is missing.

Checking the xml in B1iSN Admin Console (monitor) i see that I have the SysId and the sender payload, for the Objectype I found 2 Object types one with ID=B1.2007_BPG and the sencond with ID=B1.2007_OCRG.

Running the object list from B1iSN Tools->Miscellaneous->B1 Object Help->Object list I see that I have 2 obecttypes refering to LocalID=10.

Object 
 Name BusinessPartnerGroups   LocalID 10   B1iSN_ObjectType B1.2007_BPG   Table InfoRetrieve Object 
 Object 
 Name BusinessPartnerGroups   LocalID 10   B1iSN_ObjectType B1.2007_OCRG   Table InfoRetrieve Object

Is this correct? If not, how can I remove one of the 2 (Which one)?

Regards

Flavio

Accepted Solutions (1)

Accepted Solutions (1)

marcus_schmalz2
Participant
0 Kudos

Hi Flavio,

B1.2007_BPG is the correct one as B1.2007_CRG doesn't really exist in the repository. But I could reproduce this issue in my system. This really seems to be a bug.

But you could use the following workaround:

Go to B1iSN Tools / Development Tools / Object Type Generate, load the standard SAP object type B1.2007_BPG and save, generate and activate it as your own Z.B1_2007_BPG.

Be sure to change your BizSteps to use the new object type with Z.

Kind regards,

Marcus

0 Kudos

Hi Marcus,

Sorry for the delay.

I have done what You suggested and now I'm using the new ObjectType Z.B1.2007_BPG but I receive this error message.


com.sap.b1i.xcellerator.XcelleratorException: XCE001 
Nested exception: com.sap.b1i.bizprocessor.BizProcException: BPE001 
Nested exception: com.sap.b1i.xcellerator.XcelleratorException: XCE001 
Nested exception: com.sap.b1i.xcellerator.XcelleratorException: XCE001 
Nested exception: java.lang.RuntimeException: DI error: 
Invoke of: GetBusinessObjectFromXML 
Source: SAPbobsCOM.Company.2007.0 
Description: 
<ErrorList>
  <Error>System Id = 18734272, Line Number = 1, Column Number = 79, Description = The namespace of element 'schema' must be from the schema namespace.</Error>
  <Error>System Id = 18734272, Line Number = 1, Column Number = 99, Description = The namespace of element 'element' must be from the schema namespace.</Error>
  <Error>System Id = 18734272, Line Number = 1, Column Number = 112, Description = The namespace of element 'complexType' must be from the schema namespace.</Error>
  <Error>System Id = 48302936, Line Number = 1, Column Number = 117, Description = The namespace of element 'all' must be from the schema namespace.</Error>
  <Error>System Id = 48302792, Line Number = 1, Column Number = 164, Description = The namespace of element 'element' must be from the schema namespace.</Error>
  <Error>System Id = 48302792, Line Number = 1, Column Number = 177, Description = The namespace of element 'complexType' must be from the schema namespace.</Error>
  <Error>System Id = 48302792, Line Number = 1, Column Number = 187, Description = The namespace of element 'sequence' must be from the schema namespace.</Error>
  <Error>System Id = 48302792, Line Number = 1, Column Number = 239, Description = The namespace of element 'element' must be from the schema namespace.</Error>
...
  <Error>System Id = 48302792, Line Number = 1, Column Number = 875, Description = The namespace of element 'element' must be from the schema namespace.</Error>
  <Error>System Id = 65092600, Line Number = 8, Column Number = 21, Description = Unknown element 'Code'</Error>
  <Error>System Id = 65092640, Line Number = 11, Column Number = 19, Description = Element 'Code' is not valid for content model: 'All(Name,Type)'</Error>
 </ErrorList>

I can not show all the lines in forum code section

Regards

Flavio

kris_coppens
Explorer
0 Kudos

In the XSL , is the version info provided ( in the admin ? ) ?

0 Kudos

Hi Kris,

the XSL is generate by the system where the version info should be?

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:b1ie="urn:com.sap.b1i.sim:b1ievent" xmlns:b1im="urn:com.sap.b1i.sim:b1imessage" xmlns:bfa="urn:com.sap.b1i.bizprocessor:bizatoms" xmlns:jdbc="urn:com.sap.b1i.adapter:jdbcadapter" xmlns:rfc="urn:sap-com:document:sap:rfc:functions" xmlns:sim="urn:com.sap.b1i.sim:entity" xmlns:targetxsl="http://TargetXSLPrefixAlias" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" bfa:force="" sim:force="" b1im:force="" jdbc:force="" rfc:force="" b1ie:force="">
	<xsl:output method="xml" encoding="UTF-8" indent="yes"/>
	...
	<xsl:template match="/">
		<xsl:apply-templates select="b1im:B1IMessage/b1im:Body/b1im:Payload[./@ObjectTypeId=&apos;Z.B1.2007_BPG&apos;]"/>
	</xsl:template>
	<xsl:template match="b1im:B1IMessage/b1im:Body/b1im:Payload[./@ObjectTypeId=&apos;Z.B1.2007_BPG&apos;]">
		<xsl:copy-of select="./*"/>
	</xsl:template>
</xsl:stylesheet>

Regards

Flavio

kris_coppens
Explorer
0 Kudos

Hi Flavio,

The target message should be created where now the <xsl:copy-of select="./*"/> is. That shoulld be according to the schema the SDK method GetBusinessObjectFromXML uses, I guess

In the Admin section of this message you should find a version tag. If it's 2 it means a schema with human readable tags is used , if it's ommited ( version 1 ) the actual fieldnames are used as tagnames.

The best way to study this is to check the source message you'll find in de message log.

Good luck.

Kris

This is de schema that is used by the 8.8

- <schema elementFormDefault="qualified">

- <element name="BOM">

- <complexType>

- <all>

- <element maxOccurs="1" minOccurs="0" name="BO">

- <complexType>

- <sequence>

- <element maxOccurs="1" minOccurs="0" name="AdmInfo">

- <complexType>

- <all>

<element maxOccurs="1" minOccurs="0" name="Object" type="long" />

</all>

</complexType>

</element>

- <element maxOccurs="1" minOccurs="0" name="QueryParams">

- <complexType>

- <all>

<element maxOccurs="1" minOccurs="0" name="Code" type="string" />

</all>

</complexType>

</element>

- <element maxOccurs="1" minOccurs="0" name="OCRG">

- <complexType>

- <sequence>

- <element maxOccurs="unbounded" minOccurs="0" name="row">

- <complexType>

- <all>

<element maxOccurs="1" minOccurs="0" name="GroupName" type="string" />

<element maxOccurs="1" minOccurs="0" name="GroupType" type="string" />

</all>

</complexType>

</element>

</sequence>

</complexType>

</element>

</sequence>

</complexType>

</element>

</all>

</complexType>

</element>

</schema>

0 Kudos

HI again Kriss and thank You for Your answers.

After a better check as You suggested I discovered that in schema there is any tag named "Code" but in the source message is present.


<BOM>
  <BO>
    <AdmInfo>
      <Object>10</Object>
      <Version>2</Version>
    </AdmInfo>
    <BusinessPartnerGroups>
      <row>
        <Code>111</Code>
          <Name>Group 111 description</Name>
          <Type>bbpgt_CustomerGroup</Type>
      </row>
    </BusinessPartnerGroups>
  </BO>
</BOM>

the solution was to add

<QueryParams>
	<Code>111</Code>
</QueryParams>

after <AdmInfo> and remove the tag <Code> from BOM/BO/BusinessPartnerGroups/row

and in the end it works.

Regards

Flavio

Answers (1)

Answers (1)

kris_coppens
Explorer
0 Kudos

Flavio,

I don't know is this could be possibly correct , but I'm quite sure that the double object is causing the phenomenon.

You can remove objects types with B1iSN Tools u2192 Repository Tools u2192 Entities u2013 Remove.

If after the check you get the message that the object is linked somewhere, you should setup the bizstep with the right object type ( B1iSN Tools u2192 Development Tools u2192 Bizstep Modify ) and retry to remove the one you don't need.

This worked for me.

( Somewhere there should be an XML that is containing this info. I found it strange that in the biumeta file, those multiple objects where not listed u2026 )

Above is valid when it are custom objects.

If not, I don't think you can remove them ( and I guess you shouldn't do that at all ) . The easiest way then is - I think - to remove the bizstep and recreate it. ( And be careful when defining the objects )

Good luck!

Kris

Edited by: Kris Coppens on May 15, 2010 1:04 PM