Author |
Message
|
kirankinnu |
Posted: Tue Jun 03, 2008 10:28 am Post subject: Making SAP BAPI requests |
|
|
 Centurion
Joined: 12 Jun 2004 Posts: 128 Location: Chicago, IL
|
Hello Folks,
Looks like we are having tough time with SAPRequest node in WMB 6.1. We are having 2 issues:
1) We are making a single BAPI call which has multiple rows of same associated type.
For Eg:
OutputRoot.XMLNSC.Wrapper.BAPIReq.Table1[1].A = '111';
OutputRoot.XMLNSC.Wrapper.BAPIReq.Table1[2].A = '222';
when we started the node trace we could see that the values are being sent as
OutputRoot.XMLNSC.Wrapper.BAPIReq.Table1[1].A = '111';
OutputRoot.XMLNSC.Wrapper.BAPIReq.Table1[2].A = '111';
'222' is being replaced by the value in first iteration '111'
In the mySAP adapter there used to be an element 'size', which we need to set to tell the no of rows we are sending. In 6.1 there is no such option.
Do we need to set something else to send multiple rows.
2) When we assign a 0 to one particular decimal field, we are receiving this error:
"Text:CHARACTER:com.ibm.despi.exception.DESPIException: com.ibm.despi.exception.DESPIException: Error while mapping table QUANTTABLE property=SapQuanttable
com.ibm.despi.exception.DESPIException: Error while mapping table QUANTTABLE property=SapQuanttable
Error while mapping table QUANTTABLE property=SapQuanttable
com.ibm.despi.exception.DESPIException: Exception while converting EIS object to cursor for property=Quantity
Exception while converting EIS object to cursor for property=Quantity
java.lang.NumberFormatException"
We are able to send any other values into this field except 0. We tried to assign 0 to other similar field od decimal type and it is accepting. what could be the reason for this error. We even casted 0 to decimal, but of no use.
Any help would be appreciated..
Thank You,
Kiran |
|
Back to top |
|
 |
bisu |
Posted: Tue Jun 03, 2008 10:01 pm Post subject: |
|
|
 Apprentice
Joined: 05 Jan 2005 Posts: 25 Location: India
|
Kiran regarding the 2nd error, looks like the problem is at the table level, probably the table column is not expecting 0 or some constrain is associated with the column..... This is just a guess... Please let us know if you find the answer...
Cheers  |
|
Back to top |
|
 |
fjb_saper |
Posted: Wed Jun 04, 2008 1:21 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Instead of passing "0" did you try passing "0.00" ?
The number format exception should be the hint there  _________________ MQ & Broker admin |
|
Back to top |
|
 |
kirankinnu |
Posted: Wed Jun 04, 2008 4:52 am Post subject: |
|
|
 Centurion
Joined: 12 Jun 2004 Posts: 128 Location: Chicago, IL
|
We tried to pass all kinds of combinations, but of no use. We could see that on the sap logs they are receiving the Quantity value as '5=7.000', some crazy conversion. Funny thing over here is we were able to send 0 to other similar fields. We could see that both the types are same 'decimal'. |
|
Back to top |
|
 |
kimbert |
Posted: Wed Jun 04, 2008 5:17 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Quote: |
We could see that on the sap logs they are receiving the Quantity value as '5=7.000', some crazy conversion |
Have you looked at what message broker is doing ( i.e. have you taken a user trace yet? ) |
|
Back to top |
|
 |
kirankinnu |
Posted: Wed Jun 04, 2008 5:25 am Post subject: |
|
|
 Centurion
Joined: 12 Jun 2004 Posts: 128 Location: Chicago, IL
|
This is what I see in the user trace :
UserTrace BIP3484E: ''CWYAP2037:The adapter is unable to get the value for the enterprise information system (EIS) field QUANTITY. Error: null. Explanation=Unable to get the value for the EIS field QUANTITY. UserAction=Verify that the adapter is connected to the correct version of the EIS. ''
An adapter component has written the diagnostic message included here.
UserTrace BIP3484E: ''The adapter is unable to get the value for the enterprise information system (EIS) fieldQUANTITY''
An adapter component has written the diagnostic message included here.
UserTrace BIP3484E: ''CWYAP2035:An exception occurred while converting the enterprise information system (EIS) object to a Cursor for property: Quantity. Error: java.lang.NumberFormatException. Explanation=Error occured while converting EIS object to Business Object , see exception message for failed property information . UserAction=Verify that the business object metadata for the property is correct.''
An adapter component has written the diagnostic message included here.
UserTrace BIP3484E: ''An exception occurred while converting the enterprise information system (EIS) object to a Cursor for property.Quantity''
An adapter component has written the diagnostic message included here.
UserTrace BIP3484E: ''An error occurred while getting metadata ''
An adapter component has written the diagnostic message included here.
UserTrace BIP3484E: ''CWYAP2036:An error occurred while mapping table "fieldName=" QUANTTABLE " propertyName=" SapQuanttable, Error:com.ibm.despi.exception.DESPIException: Exception while converting EIS object to cursor for property=Quantity Explanation=Error while mapping table "fieldName=" QUANTTABLE " propertyName=" SapQuanttable UserAction=Verify the data set in the field that is generating the error. ''
An adapter component has written the diagnostic message included here.
UserTrace BIP3484E: ''An error occurred while mapping table QUANTTABLE property=SapQuanttable''
An adapter component has written the diagnostic message included here.
UserTrace BIP3484E: ''An error occurred while getting metadata ''
An adapter component has written the diagnostic message included here.
UserTrace BIP3484E: ''CWYAP2033:An error occurred while getting metadata for the BAPI Object. Error: com.ibm.despi.exception.DESPIException: Error while mapping table QUANTTABLE property=SapQuanttable. Explanation=An error occurred while getting metadata for the BAPI object,BusinessObjectMetadata file may be missing or old . UserAction=Verify that the business object metadata is correct.''
An adapter component has written the diagnostic message included here.
UserTrace BIP3484E: ''An error occurred while getting metadata for the BAPI Object''
An adapter component has written the diagnostic message included here. |
|
Back to top |
|
 |
kimbert |
Posted: Wed Jun 04, 2008 1:20 pm Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Quote: |
when we started the node trace we could see that the values are being sent as
OutputRoot.XMLNSC.Wrapper.BAPIReq.Table1[1].A = '111';
OutputRoot.XMLNSC.Wrapper.BAPIReq.Table1[2].A = '111'; |
I don't understand...can you explain the scenario in more detail. |
|
Back to top |
|
 |
mfractal |
Posted: Mon Jun 09, 2008 1:37 pm Post subject: |
|
|
Novice
Joined: 07 Apr 2008 Posts: 14
|
We are having the same 2 issues with the adapter.
When passing tables it multiplies the first element of the table to the rest of the elements and we can not send QUAN/CURR/DECIMAL values to sap - the adapter throws an exception.
We have opened a PMR with IBM and are waiting for an answer.
Just so you won't feel alone  |
|
Back to top |
|
 |
|