Author |
Message
|
MrVMax |
Posted: Mon Nov 21, 2016 4:13 am Post subject: Strange behavior of Broker 8.0.2 after QISS discovery |
|
|
Novice
Joined: 01 Aug 2013 Posts: 23
|
hi there,
I'm developing a Message Broker flow that has to read a SAP custom table to insert some data into a local db2 table.
I'm using QISS discovery into 2 different ways:
1) use the SAP field Names to create the attribute names of business objects
flagged
2) use the SAP field Names to create the attribute names of business objects
NOT flagged
In the first case the names of the business objects are the same of the SAP field names in the second case the names of the business objects are equal to the short descriptions of the SAP field names.
Till now all seems regular, but when I try to use in the ESQL editing window, the autocomplete feature for
InputRoot.DataObject.ns.SapZmaturato.whatever
the feature doesn't work if I've choiced to use the SAP column names for the objects and it does work I've choiced to use the short SAP descriptions.
This is very unusual for me since with any other SAP table but this one it works fine with the SAP column names. Moreover when I run the flow with the discover made in the first way I get this error on the trace file:
[list]
**********************************************************************
Before SAP REQUEST
**********************************************************************
*********************
( ['MQROOT' : 0x7fe3340bcfe0]
(0x01000000:Name):Private = (
(0x03000000:NameValue):Table = 'ZMATURATO' (CHARACTER)
)
(0x01000000:Name):Adapter = (
(0x03000000:NameValue):MethodName = 'retrieveallSapZmaturato' (CHARACTER)
)
)
*********************
( ['MQROOT' : 0x7fe3340d15f0]
(0x01000000:Name ):Properties = ( ['MQPROPERTYPARSER' : 0x7fe3342d6920]
(0x03000000:NameValue):MessageSet = NULL
(0x03000000:NameValue):MessageType = NULL
(0x03000000:NameValue):MessageFormat = NULL
(0x03000000:NameValue):Encoding = NULL
(0x03000000:NameValue):CodedCharSetId = NULL
(0x03000000:NameValue):Transactional = NULL
(0x03000000:NameValue):Persistence = NULL
(0x03000000:NameValue):CreationTime = NULL
(0x03000000:NameValue):ExpirationTime = NULL
(0x03000000:NameValue):Priority = NULL
(0x03000000:NameValue):ReplyIdentifier = NULL
(0x03000000:NameValue):ReplyProtocol = 'MQ' (CHARACTER)
(0x03000000:NameValue):Topic = NULL
(0x03000000:NameValue):ContentType = NULL
(0x03000000:NameValue):IdentitySourceType = NULL
(0x03000000:NameValue):IdentitySourceToken = NULL
(0x03000000:NameValue):IdentitySourcePassword = NULL
(0x03000000:NameValue):IdentitySourceIssuedBy = NULL
(0x03000000:NameValue):IdentityMappedType = NULL
(0x03000000:NameValue):IdentityMappedToken = NULL
(0x03000000:NameValue):IdentityMappedPassword = NULL
(0x03000000:NameValue):IdentityMappedIssuedBy = NULL
)
(0x01000000:Folder):DataObject = ( ['Dataobject' : 0x7fe3341d7820]
(0x01000000:Folder)http://www.ibm.com/xmlns/prod/websphere/j2ca/sap/sapzmaturato:SapZmaturato = (
(0x01000000:Folder):SapZmaturatoQuerybo = (
(0x03000000:PCDataField):sapMaxRows = 25000 (INTEGER)
(0x03000000:PCDataField):sapRowsSkip = 0 (INTEGER)
)
)
)
)
**********************************************************************
'' from trace node 'Command.Pre SAP Query'.
The trace node 'Command.Pre SAP Query' has output the specified trace data.
This is an information message provided by the message flow designer. The user response will be determined by the local environment.
UserTrace BIP4067I: Message propagated to output terminal for trace node 'Command.Pre SAP Query'.
The trace node 'Command.Pre SAP Query' has received a message and is propagating it to any nodes connected to its output terminal.
No user action required.
UserTrace BIP2231E: Error detected whilst processing a message in node 'Command.SAP Request'.
The message broker detected an error whilst processing a message in node 'Command.SAP Request'. The message has been augmented with an exception list and has been propagated to the node's failure terminal for further processing.
See the following messages for details of the error.
RecoverableException BIP3442E: An exception occurred in adapter node ''SAP Request'', which is using adapter component ''Db2LoadMessage.outadapter''..
This message broker node ''SAP Request'' attempted to process a message and communicate with an EIS using an adapter component ''Db2LoadMessage.outadapter''. An error occurred during this processing.
See the following messages for details of the error.
RecoverableException BIP3450E: An adapter error occurred during the processing of a message. The adapter error message is ''setIndex(int) expected position to be between 0 and 12
''. This error was detected by the adapter. The following message describes the diagnostic information that is provided by the adapter ''setIndex(int) expected position to be between 0 and 12
''.
[/list]
If I run the flow with the second type of discovery I get the correct result as You can see on the following trace:
[list]
**********************************************************************
Before SAP REQUEST
**********************************************************************
*********************
( ['MQROOT' : 0x7fc4642b5780]
(0x01000000:Name):Private = (
(0x03000000:NameValue):Table = 'ZMATURATO' (CHARACTER)
)
(0x01000000:Name):Adapter = (
(0x03000000:NameValue):MethodName = 'retrieveallSapZmaturato' (CHARACTER)
)
)
*********************
( ['MQROOT' : 0x7fc46411cb60]
(0x01000000:Name ):Properties = ( ['MQPROPERTYPARSER' : 0x7fc464131800]
(0x03000000:NameValue):MessageSet = NULL
(0x03000000:NameValue):MessageType = NULL
(0x03000000:NameValue):MessageFormat = NULL
(0x03000000:NameValue):Encoding = NULL
(0x03000000:NameValue):CodedCharSetId = NULL
(0x03000000:NameValue):Transactional = NULL
(0x03000000:NameValue):Persistence = NULL
(0x03000000:NameValue):CreationTime = NULL
(0x03000000:NameValue):ExpirationTime = NULL
(0x03000000:NameValue):Priority = NULL
(0x03000000:NameValue):ReplyIdentifier = NULL
(0x03000000:NameValue):ReplyProtocol = 'MQ' (CHARACTER)
(0x03000000:NameValue):Topic = NULL
(0x03000000:NameValue):ContentType = NULL
(0x03000000:NameValue):IdentitySourceType = NULL
(0x03000000:NameValue):IdentitySourceToken = NULL
(0x03000000:NameValue):IdentitySourcePassword = NULL
(0x03000000:NameValue):IdentitySourceIssuedBy = NULL
(0x03000000:NameValue):IdentityMappedType = NULL
(0x03000000:NameValue):IdentityMappedToken = NULL
(0x03000000:NameValue):IdentityMappedPassword = NULL
(0x03000000:NameValue):IdentityMappedIssuedBy = NULL
)
(0x01000000:Folder):DataObject = ( ['Dataobject' : 0x7fc464053c30]
(0x01000000:Folder)http://www.ibm.com/xmlns/prod/websphere/j2ca/sap/sapzmaturato:SapZmaturato = (
(0x01000000:Folder):SapZmaturatoQuerybo = (
(0x03000000:PCDataField):sapMaxRows = 25000 (INTEGER)
(0x03000000:PCDataField):sapRowsSkip = 0 (INTEGER)
)
)
)
)
**********************************************************************
**********************************************************************
'' from trace node 'Command.Pre SAP Query'.
The trace node 'Command.Pre SAP Query' has output the specified trace data.
This is an information message provided by the message flow designer. The user response will be determined by the local environment.
UserTrace BIP4067I: Message propagated to output terminal for trace node 'Command.Pre SAP Query'.
The trace node 'Command.Pre SAP Query' has received a message and is propagating it to any nodes connected to its output terminal.
No user action required.
UserTrace BIP2539I: Node 'Command.Post SAP Query': Evaluating expression ''Environment'' at ('', '7.3'). This resolved to ''Environment''. The result was ''ROW... Root Element Type=16777216 NameSpace='' Name='Root' Value=NULL''.
UserTrace BIP2539I: Node 'Command.Post SAP Query': Evaluating expression ''LocalEnvironment'' at ('', '9.3'). This resolved to ''LocalEnvironment''. The result was ''ROW... Root Element Type=16777216 NameSpace='' Name='Root' Value=NULL''.
UserTrace BIP2539I: Node 'Command.Post SAP Query': Evaluating expression ''Root'' at ('', '11.3'). This resolved to ''Root''. The result was ''ROW... Root Element Type=16777216 NameSpace='' Name='Root' Value=NULL''.
UserTrace BIP4060I: Data ''
**********************************************************************
**********************************************************************
After SAP REQUEST
**********************************************************************
*********************
( ['MQROOT' : 0x7fc464107730]
(0x01000000:Name):Private = (
(0x03000000:NameValue):Table = 'ZMATURATO' (CHARACTER)
)
(0x01000000:Name):Adapter = (
(0x03000000:NameValue):MethodName = 'retrieveallSapZmaturato' (CHARACTER)
)
)
*********************
( ['GENERICROOT' : 0x7fc4641e1d00]
(0x01000000:Name ):Properties = ( ['MQPROPERTYPARSER' : 0x7fc464107a30]
(0x03000000:NameValue):MessageSet = NULL
(0x03000000:NameValue):MessageType = NULL
(0x03000000:NameValue):MessageFormat = NULL
(0x03000000:NameValue):Encoding = NULL
(0x03000000:NameValue):CodedCharSetId = NULL
(0x03000000:NameValue):Transactional = NULL
(0x03000000:NameValue):Persistence = NULL
(0x03000000:NameValue):CreationTime = NULL
(0x03000000:NameValue):ExpirationTime = NULL
(0x03000000:NameValue):Priority = NULL
(0x03000000:NameValue):ReplyIdentifier = NULL
(0x03000000:NameValue):ReplyProtocol = 'MQ' (CHARACTER)
(0x03000000:NameValue):Topic = NULL
(0x03000000:NameValue):ContentType = NULL
(0x03000000:NameValue):IdentitySourceType = NULL
(0x03000000:NameValue):IdentitySourceToken = NULL
(0x03000000:NameValue):IdentitySourcePassword = NULL
(0x03000000:NameValue):IdentitySourceIssuedBy = NULL
(0x03000000:NameValue):IdentityMappedType = NULL
(0x03000000:NameValue):IdentityMappedToken = NULL
(0x03000000:NameValue):IdentityMappedPassword = NULL
(0x03000000:NameValue):IdentityMappedIssuedBy = NULL
)
(0x01000000:Folder):DataObject = ( ['xmlnsc' : 0x7fc4641e20e0]
(0x01000000:Folder)http://www.ibm.com/xmlns/prod/websphere/j2ca/sap/sapzmaturatocontainer:SapZmaturatoContainer = (
(0x01000000:Folder):SapZmaturato = (
(0x03000000:PCDataField):Società = 'S600' (CHARACTER)
(0x03000000:PCDataField):Società Attiva = 'E029' (CHARACTER)
)
(0x01000000:Folder):SapZmaturato = (
(0x03000000:PCDataField):Società = 'S600' (CHARACTER)
(0x03000000:PCDataField):Società Attiva = 'S010' (CHARACTER)
)
(0x01000000:Folder):SapZmaturato = (
(0x03000000:PCDataField):Società = 'S600' (CHARACTER)
(0x03000000:PCDataField):Società Attiva = 'S010' (CHARACTER)
(0x03000000:PCDataField):PuntoVendita = '0000' (CHARACTER)
)
(0x01000000:Folder):SapZmaturato = (
(0x03000000:PCDataField):Società = 'S600' (CHARACTER)
(0x03000000:PCDataField):Società Attiva = 'S210' (CHARACTER)
)
(0x01000000:Folder):SapZmaturato = (
(0x03000000:PCDataField):Società = 'S600' (CHARACTER)
(0x03000000:PCDataField):Società Attiva = 'S210' (CHARACTER)
(0x03000000:PCDataField):PuntoVendita = '0000' (CHARACTER)
)
(0x01000000:Folder):SapZmaturato = (
(0x03000000:PCDataField):Società = 'S600' (CHARACTER)
(0x03000000:PCDataField):Società Attiva = 'S600' (CHARACTER)
)
)
)
)
**********************************************************************
[/list] |
|
Back to top |
|
 |
mqjeff |
Posted: Mon Nov 21, 2016 4:35 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
The error says that the adapter doesn't like the contents of the message you are giving it.
I don't know SAP, so I can't really tell you why - except for what's in the error message
Code: |
The adapter error message is ''setIndex(int) expected position to be between 0 and 12 |
_________________ chmod -R ugo-wx / |
|
Back to top |
|
 |
MrVMax |
Posted: Mon Nov 21, 2016 5:43 am Post subject: |
|
|
Novice
Joined: 01 Aug 2013 Posts: 23
|
Yes mqjeff I agree but my hope is that someone here knows what should be done from the SAP side to let the discovery of this table runs like all the other QISS discovery that I've done.
For me the trouble is inside the way the table was defined inside SAP, anyone knows enough of SAP to explain what should be avoided in the SAP environment if the table should be accessed by Message Broker. |
|
Back to top |
|
 |
MrVMax |
Posted: Sat Nov 26, 2016 10:27 pm Post subject: |
|
|
Novice
Joined: 01 Aug 2013 Posts: 23
|
This is just to say that we resolved the issue it was related to the definition of the CUSTOM table in SAP without using CUSTOM FIELDS and something about the rebuild of the object in SAP .. |
|
Back to top |
|
 |
fjb_saper |
Posted: Mon Nov 28, 2016 5:10 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
MrVMax wrote: |
This is just to say that we resolved the issue it was related to the definition of the CUSTOM table in SAP without using CUSTOM FIELDS and something about the rebuild of the object in SAP .. |
Thanks for letting us know the correct resolution  _________________ MQ & Broker admin |
|
Back to top |
|
 |
|