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 Index » WebSphere Message Broker (ACE) Support » Migration Error Illegal type for parameter '1'

Post new topic  Reply to topic
 Migration Error Illegal type for parameter '1' « View previous topic :: View next topic » 
Author Message
mqmaniac
PostPosted: Wed Aug 23, 2006 7:43 am    Post subject: Migration Error Illegal type for parameter '1' Reply with quote

Master

Joined: 27 Dec 2005
Posts: 201

Hello everyone,
We are migrating flows from 2.1 to 5.0 Broker.
I have the following Issue!
I have migrated a Flow from 2.1 Broker to V5.0 without any Issues.
The flow runs well on 2.1 Broker even though it doesnt deploy to V5.0 Broker and It gives me following Log when i try to deploy.

BIP2493E: (.ADPT_VN_WF_N5_MAP.RESPONSE.FIELDS.main, 190.22) : Illegal type for parameter '1' of the function 'CARDINALITY'. A list field reference is required.

The expression supplying the parameter must evalaute to a value of a suitable type. The given expression cannot possibly do so.
Correct the logic of the ESQL program and re-deploy the message flow.


The Code from 190 Line is:
CREATE COMPUTE MODULE "ADPT_VN_WF_N5_MAP.RESPONSE.FIELDS"
CREATE FUNCTION main() RETURNS BOOLEAN BEGIN
DECLARE I INTEGER;
SET I = 1;
WHILE I < CARDINALITY(InputRoot.*[]) DO
SET OutputRoot.*[I] = InputRoot.*[I];
SET I=I+1;
END WHILE;
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Wed Aug 23, 2006 8:58 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

If it doesn't deploy, then it didn't migrate without any issues.

You really don't want to use that code, anyway. It's very inefficient (it calculates cardinality every time), and obviously it doens't work the same way anymore.

If the code is supposed to Copy Entire Message or Copy Message Headers, your best bet is to use the presupplied functions that are created every time you create a new Compute node ESQL module.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
mqmaniac
PostPosted: Wed Aug 23, 2006 10:46 am    Post subject: Reply with quote

Master

Joined: 27 Dec 2005
Posts: 201

Thanks For the Reply jeff ..I am able to Deploy AT LAST!!!

This is what i tried ...
I tried copying the presupplied functions to the Compute node Module and used them ,,and even THEN I see the same error.

Then.As I browsed thru the code..there were couple of instances where the CRADINALITY was defined as..

a.) n <= CARDINALITY(myInWFXML.statError.moreStatErrors)) DO

I changed the above looking statements to

b.) n <= CARDINALITY(myInWFXML.statError.moreStatErrors.*[])) DO

and It WoRked!!! By PLACING .*[] at the end of cardinality statements.

One Last question though...

Is there any difference between these TWO statements..?
Or Does anyone know If a Fixpack Available to overcome the Code Change???
Back to top
View user's profile Send private message
mqmaniac
PostPosted: Thu Aug 24, 2006 11:28 am    Post subject: Reply with quote

Master

Joined: 27 Dec 2005
Posts: 201

Any Suggestions Pls!!!
Back to top
View user's profile Send private message
wschutz
PostPosted: Thu Aug 24, 2006 11:44 am    Post subject: Reply with quote

Jedi Knight

Joined: 02 Jun 2005
Posts: 3316
Location: IBM (retired)

CARDINALITY requires a LIST as an argument (if it weren't a list, then WHAT would you be couting, it would always be "1") .... to make that expression into a list expression, you need to add the [] at the end...

See:
http://publib.boulder.ibm.com/infocenter/wmbhelp/v6r0m0/index.jsp?topic=/com.ibm.etools.mft.doc/ak05530_.htm
_________________
-wayne
Back to top
View user's profile Send private message Send e-mail AIM Address
mqmaniac
PostPosted: Thu Aug 24, 2006 1:12 pm    Post subject: Reply with quote

Master

Joined: 27 Dec 2005
Posts: 201

I understand the whole concept of CARDINALITY but that is not what i was looking for..

a.) n <= CARDINALITY(myInWFXML.statError.moreStatErrors)) DO

the above statement worked in WMQI 2.1 Broker WITHOUT ANY ISSUES BUT had CARDINALITY ISSUES in V5.0 Broker...

If your post says that a list should always be refErred IN cardinality then why didnt it require in 2.1 bROKER???
Back to top
View user's profile Send private message
mqmaniac
PostPosted: Thu Aug 31, 2006 11:27 am    Post subject: Reply with quote

Master

Joined: 27 Dec 2005
Posts: 201

The code chnages are made only to V5.0 broker and it worked.

n <= CARDINALITY(myInWFXML.statError.moreStatErrors.*[])) DO

I have to move this to Production while making oocde changes.!!!
Audit needs Answers for Code changes..
Is there any Better way to Explain this...

Pls help!!!!

BUT in 2.1 Broker Its still the same code
n <= CARDINALITY(myInWFXML.statError.moreStatErrors)) DO
and works fine?

I am CONFUSED!!!!!
Back to top
View user's profile Send private message
mgk
PostPosted: Sat Sep 02, 2006 2:15 pm    Post subject: Reply with quote

Padawan

Joined: 31 Jul 2003
Posts: 1642

Hi.

If I remember correctly, the 2.1 behaviour of cardinality not requiring [] was considered a defect and was fixed at V5. If you need to know more details, I am sure you can get them if you raise a PMR.

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
View user's profile Send private message
mqmaniac
PostPosted: Tue Sep 05, 2006 10:01 am    Post subject: Reply with quote

Master

Joined: 27 Dec 2005
Posts: 201

Thanks for the reply MGK...
DO you have any Link to documents which has some explanation!!!
Back to top
View user's profile Send private message
mgk
PostPosted: Wed Sep 06, 2006 1:07 am    Post subject: Reply with quote

Padawan

Joined: 31 Jul 2003
Posts: 1642

Hi,

No I'm just going on memory and so I don't have any links. Therefore if you need more info, please raise a PMR.


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
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Migration Error Illegal type for parameter '1'
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.