ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum IndexWebSphere Message Broker (ACE) SupportMessage set error while discovering BAPI RFC

Post new topicReply to topic
Message set error while discovering BAPI RFC View previous topic :: View next topic
Author Message
firoj.badsa
PostPosted: Tue Apr 23, 2013 4:43 am Post subject: Message set error while discovering BAPI RFC Reply with quote

Centurion

Joined: 16 Feb 2007
Posts: 104

Hi All,

While discovering one BAPI RFC from SAP -- the message set created for this has got error. While opening the message set I saw some elements has Type as {Local Simple Type}.

Try to fix this I have changed the type to 'xsd:string' -- then the error gone.. but if I try to run this interface . then I see the below exception.. Pls help.

Text:CHARACTER:com.ibm.despi.exception.DESPIException: com.ibm.despi.exception.DESPIException: Exception while converting EIS object to cursor for property=I_FLDNM
com.ibm.despi.exception.DESPIException: Exception while converting EIS object to cursor for property=I_FLDNM
Exception while converting EIS object to cursor for property=I_FLDNM
setObject called for field I_FLDNM with a value of type com.sap.conn.jco.rt.DefaultTable



Anybody have faced this issue earlier? I am using below version.

Implementation-Version: 7.0.0.3_IF17
Back to top
View user's profile Send private message
rdg
PostPosted: Tue Jun 25, 2013 6:29 am Post subject: Reply with quote

Novice

Joined: 28 May 2010
Posts: 10

Hi, did you ever resolve your issue, I am receiving the very same message using the 7.0.0.5_IF03 version of the SAP Adapter.
Back to top
View user's profile Send private message
rdg
PostPosted: Wed Jun 26, 2013 4:53 am Post subject: Reply with quote

Novice

Joined: 28 May 2010
Posts: 10

I have experienced a SAP Adapter issue similar to the one reported. I have raised a PMR for the issue.

We are using SAP Adapter version "7.0.0.5_IF03"
(Note: this is not the base Adapter version packaged with Fixpack 5)

I have made some progress in trapping where the issue lies.

The issue is a BAPI discovery issue that exhibits itself at runtime (due to the incorrect BAPI structure discovered). However, the issue is not with the runtime component itself, but with the toolkit component.

When discovering BAPIs that contain SAP "export" table structures, for the first element of the table, the IBM SAP Adapter is pulling in the name of the element from the SAP "Component Type" not the "Component" definition from SAP. For the remaining elements, the Adapter is correctly using the “Component” from SAP.

Here is an extract of a sample *.mxsd...

<xsd:element maxOccurs="1" minOccurs="0" name="FKART" nillable="true">
<xsd:annotation xml:space="preserve">
<xsd:appinfo source="http://www.ibm.com/xmlns/prod/websphere/j2ca/sap/metadata">
<sapasi:sapBAPIPropertyTypeMetadata>
<sapasi:FieldName>FKART</sapasi:FieldName>
<sapasi:Description/>
<sapasi:FieldType>CHAR</sapasi:FieldType>
<sapasi:PrimaryKey>true</sapasi:PrimaryKey>
<sapasi:ParameterType>OUT</sapasi:ParameterType>
<sapasi:MaxLength>4</sapasi:MaxaLength>
</sapasi:sapBAPIPropertyTypeMetadata>
</xsd:appinfo>
</xsd:annotation>

<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>

The element “FKART” has a Component Type of “FKART” and a Component token of “INVOICE_TYPE” within our SAP implementation:


The “Component Type” holds the native Germanic field code, the “Component” holds the outbound-facing name of the elements within an export table.

For this (first) element alone within the export table, the *.mxsd definition is incorrectly pulled in from the Component Type.

Other *.mxsd elements come through the discovery process correctly (i.e. taken from the Component token above):
<xsd:element maxOccurs="1" minOccurs="0" name="INV_NUM" nillable="true">
<xsd:element maxOccurs="1" minOccurs="0" name="INV_DATE" nillable="true" type="xsd:date">
<xsd:element maxOccurs="1" minOccurs="0" name="DELV_NUM" nillable="true">

At runtime, “FKART” this causes a BAPI response parsing error:
com.ibm.despi.exception.DESPIException: Exception while converting EIS object to cursor for property=FKART
Unable to find the field FKART in the structure/table ZTP_INVOICE_HEADER_T</trace>

Manually changing the imported *.mxsd as follows (so that the metadata field name matches the SAP Component name) resolves the runtime issue:
<xsd:element maxOccurs="1" minOccurs="0" name="FKART" nillable="true">
<xsd:annotation xml:space="preserve">
<xsd:appinfo source="http://www.ibm.com/xmlns/prod/websphere/j2ca/sap/metadata">
<sapasi:sapBAPIPropertyTypeMetadata>
<sapasi:FieldName>INVOICE_TYPE</sapasi:FieldName>
<sapasi:Description/>
<sapasi:FieldType>CHAR</sapasi:FieldType>
<sapasi:PrimaryKey>true</sapasi:PrimaryKey>
<sapasi:ParameterType>OUT</sapasi:ParameterType>
<sapasi:MaxLength>4</sapasi:MaxaLength>
</sapasi:sapBAPIPropertyTypeMetadata>
</xsd:appinfo>
</xsd:annotation>

<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>

Obviously, it would be ideal for the element name and metadata field name to match, but changing the metadata field name alone is enough to prove where the problem lies.

This error is seen for the first element of every export table.

Note: In many cases the “Component” and “Component Type” tokens may be the same, in which case, the bug remains hidden / irrelevant.

Discovering the BAPI using a non-IBM SAP Adapter shows that the BAPI structure comes through correctly, hence I believe that the SAP structure is ok and this is a problem localised to the IBM SAP Adapter component.
Back to top
View user's profile Send private message
Display posts from previous:
Post new topicReply to topic Page 1 of 1

MQSeries.net Forum IndexWebSphere Message Broker (ACE) SupportMessage set error while discovering BAPI RFC
Jump to:



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP


Theme by Dustin Baccetti
Powered by phpBB 2001, 2002 phpBB Group

Copyright MQSeries.net. All rights reserved.