|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
compute node -odbc problem |
« View previous topic :: View next topic » |
Author |
Message
|
squash_duffer |
Posted: Fri Jan 23, 2004 1:44 pm Post subject: compute node -odbc problem |
|
|
Newbie
Joined: 23 Jan 2004 Posts: 3
|
I have problem which maybe somone can help me with :
MQseries 5.2
MQSI v2.1 csd4
oracle 9i
We have an odbc connection to an oracle db (on a HP unix platform ) within a compute node.
The conncetion to the db is fine as I have confirmed from the ODBC confgure 'Test Connection ' panel .
I can connect to the DB using TOAD from the broker machine using the id that has been setup to connect to the DB ( same as that used to create the broker tables) .The compute node has the db details specified on the i/p pane and the following is coded :
"
SET "OutputRoot"."MRM"."ACD_CUST_ID" = THE ( SELECT ITEM T.ACCOUNT_NUMBER
FROM Database.XXCC_GSM_DEBT_TRANSFER_V AS T
WHERE T.CPR_CR_NUMBER = "InputBody"."ORG_PERS_ID"
AND T.CIRCUIT_NUMBER = "InputBody"."ACCOUNT_NUMBER" ); "
When valid values for the two input fields are passed ( ie they exist on the view as confirmed by using TOAD ) the select returns a NULL value ( indicating no record found with the specified criteria) : nothing is written to the event viewer and the message is written out to the required output queue but with null values for ACD_CUST_ID.
As I said I can clearly see the relevant record with the key values as they were supplied to the above statement on the view XXCC_GSM_DEBT_TRANSFER_V using TOAD .
I cannot see anything wrong with the syntax so if anyone is able to help , I would be gratefull.
Regards |
|
Back to top |
|
 |
pvemuri |
Posted: Fri Jan 23, 2004 2:01 pm Post subject: |
|
|
 Voyager
Joined: 05 Jan 2004 Posts: 83 Location: CA, USA
|
Hi,
What is the schema name of your table , lets say it is XYZ. This is the userID with which you created the DB. Then you should refer to the table as Database.XYZ.tablename. Because when you work with your compute node, it connects to the DB with its own UserID which is lets say ABC ( service userID of broker) and hence the compute node looks for a table, named ABC.tablename. So you should use XYZ.tablename in your compute node.
Thanks,
Phani. |
|
Back to top |
|
 |
squash_duffer |
Posted: Fri Jan 23, 2004 10:12 pm Post subject: |
|
|
Newbie
Joined: 23 Jan 2004 Posts: 3
|
Thanks Phani .
BUT
The current scenario is such that ,
Broker service ID ABC has been created at oracle end with full access to views required and this id is used to confgure the ODBC connection .
In this case there is no reason why the following should not work :
SET "OutputRoot"."MRM"."ACD_CUST_ID" = THE ( SELECT ITEM T.ACCOUNT_NUMBER
FROM Database.XXCC_GSM_DEBT_TRANSFER_V AS T
WHERE T.CPR_CR_NUMBER = "InputBody"."ORG_PERS_ID"
AND T.CIRCUIT_NUMBER = "InputBody"."ACCOUNT_NUMBER" );
regards |
|
Back to top |
|
 |
squash_duffer |
Posted: Sat Jan 24, 2004 4:14 am Post subject: |
|
|
Newbie
Joined: 23 Jan 2004 Posts: 3
|
After some investigation found the criteria
"InputBody"."ORG_PERS_ID"
had some padded spaces which was causing the select to fail .
Appreciate the reply . |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|