|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
mqsi 2.1 to wmimb 6.0 with csd03 |
« View previous topic :: View next topic » |
Author |
Message
|
mehar |
Posted: Thu May 15, 2008 1:29 pm Post subject: mqsi 2.1 to wmimb 6.0 with csd03 |
|
|
Newbie
Joined: 23 Apr 2008 Posts: 6
|
Hi
I have migrated a message flow and few msg sets from 2.1 to 6.0.After i migrated when i trying to deploy i am getting these errors
--------------------------------------------
BIP2420E: (, 81.43) : Invalid or incompatible data types for '=' operator.
Either the data types of the operands of the operator were not valid for the operator, or the datatypes were incompatible.
Correct the syntax of your ESQL expression in node '', around line and column '81.43', then redeploy the message flow: Ensure that the data types of the operands are valid and compatible with each other.
-------------------------------------------------
BIP4001E: Syntax error in SQL statements in node 'MAIN_FLOW.FRANCHISE_ISE_SUBFLOW1.ORDER_ISE_SUBFLOW1.ORDER Global'.
The configuration failed due to errors in the SQL statement text. See the following messages for details of the error
The following error messages will give specific details of the location and nature of the error. Check and correct the syntax of the SQL statements and redeploy.
--------------------------------------------------------------------
The code is working fine in production environment of 2.1.
And i checked for any esql errors in the code in migrated flows,but i could not find any.
What may be the reason,and how to solve this issue.Pls reply. |
|
Back to top |
|
 |
mgk |
Posted: Thu May 15, 2008 1:43 pm Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Can you post the ESQL the error is complaining about? _________________ MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. |
|
Back to top |
|
 |
mehar |
Posted: Fri May 16, 2008 5:45 am Post subject: |
|
|
Newbie
Joined: 23 Apr 2008 Posts: 6
|
DECLARE ordernumber INTEGER;
DECLARE pcn , ol CHARACTER;
DECLARE orderID INTEGER;
DECLARE library CHARACTER;
SET ordernumber = orderref.OrderNumber;
SET pcn = orderref.OrderProfitCenterNumber;
SET ol = orderref.OrderOfficeLetter;
SET orderID = "InputBody"."SYNC_ORDER_010"."DATAAREA"."SYNC_ORDER"."ODSKeys"."OrderODSKey";
SET library = "InputBody"."SYNC_ORDER_010"."DATAAREA"."SYNC_ORDER"."SourceSystem"."SourceSystemID";
DECLARE SQLState1 CHARACTER;
DECLARE SQLCode1 INTEGER;
IF (ordernumber > 0) THEN
SET Environment.Variables.RecordSet.Data[] = (SELECT O.ORDERID , O.ORDERNUMBER , O.ORDERPROFITCENTERNUMBER , O.ORDEROFFICELETTER,O.AOSLIBRARY FROM Database.ORDERTBL as O WHERE O.ORDERPROFITCENTERNUMBER = pcn AND O.ORDEROFFICELETTER = ol AND O.ORDERNUMBER = ordernumber AND O.ORDERID <> orderID);
SET SQLCode1 = SQLCODE;
SET SQLState1 = SQLSTATE;
IF(SUBSTRING(SQLState1 FROM 1 FOR 2 ) = '00' OR SUBSTRING(SQLState1 FROM 1 FOR 2 ) = '01') THEN
ELSE
THROW USER EXCEPTION CATALOG 'AosToOds' MESSAGE 0046 VALUES('NODE :ORDER ISE GLOBAL ' , 'SQL State=',SQLState1 , 'SQL Code=' , SQLCode1 );
END IF;
IF (CARDINALITY(Environment.Variables.RecordSet.Data[]) > 0) THEN
SET STATUS = 5;
SET Environment.Variables.Status = getEnvStatus(STATUS ,Environment.Variables.Status);
-- CHANGE ADDED by SED - 20040624
IF (ordernumber IS NULL) THEN
SET ordernumber = '';
END IF;
IF (pcn IS NULL OR pcn = UNKNOWN) THEN
SET pcn = '';
END IF;
IF (ol IS NULL OR ol = UNKNOWN) THEN
SET ol = '';
END IF;
IF (library IS NULL OR library = UNKNOWN) THEN
SET library = '';
END IF;
CALL addError('312R' , 'RECEIVED RECORD:' || nl || nl || ' Order Number: ' || CAST(ordernumber AS CHAR) || nl || ' Order Office: ' || pcn || ol ||
nl || ' Order Library Number: ' || library || nl , 'Reject' , ref);
END IF;
ELSE
SET STATUS = 5;
SET Environment.Variables.Status = getEnvStatus(STATUS ,Environment.Variables.Status);
-- CHANGE ADDED by SED - 20040624
IF (ordernumber IS NULL) THEN
SET ordernumber = '';
END IF; |
|
Back to top |
|
 |
mgk |
Posted: Fri May 16, 2008 8:50 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Thanks for the above snippet of code, but which one of the above lines is line 81 in your editor as mentioned in the error message : "around line and column '81.43'"?
Regards, _________________ MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. |
|
Back to top |
|
 |
mehar |
Posted: Fri May 16, 2008 10:21 am Post subject: |
|
|
Newbie
Joined: 23 Apr 2008 Posts: 6
|
error 81:43 comes to line
-- CHANGE ADDED by SED - 20040624 which is a comment. |
|
Back to top |
|
 |
mgk |
Posted: Fri May 16, 2008 10:56 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Hmmm, that seems strange. You could raise a PMR, or you could try to find out which line is really causing the problem by commenting code out and redeploying until you know which one is causing the problem... _________________ MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. |
|
Back to top |
|
 |
ADV |
Posted: Fri May 16, 2008 11:34 am Post subject: |
|
|
Apprentice
Joined: 24 Apr 2007 Posts: 44 Location: Boston, MA
|
Scenario: When you deploy a message flow that includes a node that you have customized with ESQL, the deploy fails with a sequence of error messages; BIP2087E, BIP4041E, BIP4001E, and BIP2912E.
Explanation: If you defined a RETURNS clause for an ESQL function, Version 6.1 checks that an expression is specified on the RETURN statement, and that it matches the type that you specified in the RETURNS clause (TRUE, FALSE, UNKNOWN). If the RETURN statement does not match, errors are reported. Version 5.0 does not fail the deploy if you do not include a value, or if a mismatch exists.
Solution: Modify the RETURN statement in your ESQL code to match the RETURNS clause. The behavior of the Main function RETURN statement in each of the different ESQL nodes is shown below.
Scenario: When you deploy a message flow that includes a node that you have customized with ESQL, the deploy fails with a sequence of error messages; BIP4001E and BIP2912E.
Explanation: An EXISTS statement in an ESQL function specifies a parameter that is not a list. Version 6.1 checks that the expression returns a list; Version 5.0 does not fail the deploy if you do not specify a list. For example:
EXISTS(SELECT * from Environment.Variable.LocalError);The statement above is accepted by Version 5.0, but not by Version 6.1, which checks that the expression returns a list. The expression must be one of the following types:
A LIST operator
A field reference that includes the array indicator []
A SELECT statement that returns a list
Solution: Modify the EXISTS statement in your ESQL code to specify a valid expression. For example:
EXISTS(SELECT * from Environment.Variable.LocalError[]);
More info lick the below link
http://publib.boulder.ibm.com/infocenter/wmbhelp/v6r1m0/index.jsp?topic=/com.ibm.etools.mft.doc/au16661_.htm |
|
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
|
|
|
|