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 » Problem when use CONSTANT in .ESQL File, schema level.

Post new topic  Reply to topic
 Problem when use CONSTANT in .ESQL File, schema level. « View previous topic :: View next topic » 
Author Message
ovasquez
PostPosted: Mon Oct 12, 2009 8:43 am    Post subject: Problem when use CONSTANT in .ESQL File, schema level. Reply with quote

Centurion

Joined: 09 Dec 2005
Posts: 141
Location: Lima, Peru

Environment:
*****************
WMT 6.1.0.5 in WinXP
Broker 6.1.0.5 in z/OS

I have this schema:
MB.PzrCambioMonInqV1
Constantes.esql
MF_RqRs.esql

In Constantes.esql
Code:
DECLARE C_NS_MESSAGES_MFX CONSTANT CHARACTER 'http://mfxV1_0';


In MF_RqRs.esql
Code:
BROKER SCHEMA MB.PzrCambioMonInqV1
PATH MB.FrameworkV1;

DECLARE mfx NAMESPACE C_NS_MESSAGES_MFX;

CREATE COMPUTE MODULE MF_RqRs_DoXMLtoCWF
. . .
END MODULE;


when i deploy .bar, display this error:
BIP2432E: (MB.PzrCambioMonInqV1.mfx, 1.24) : The correlation name 'C_NS_MESSAGES_MFX' is not valid. Those in scope are: mfx.

The first element of a field reference must be a valid correlation name, from those in scope. This message may sometimes be due to an incorrectly formed or spelled expression which is not intended to be a field reference being parsed as if it were a field reference because the parser does not recognize it.

Correct the syntax of your ESQL expression in node 'MB.PzrCambioMonInqV1.mfx', around line and column '1.24', then redeploy the message flow.

Why?, not is posibled use constant at schema level.
_________________
Oscar Vásquez Flores
Back to top
View user's profile Send private message Send e-mail
fjb_saper
PostPosted: Mon Oct 12, 2009 12:22 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

It is well possible but as you have seen it is not in scope when the namespace is being declared and as such you are in a bad way.

You did not use any Path statements to include your constants. So how should the part of code trying to create the namespace know that the constant has been defined and is in scope??

Working as designed
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
ovasquez
PostPosted: Mon Oct 12, 2009 12:57 pm    Post subject: Reply with quote

Centurion

Joined: 09 Dec 2005
Posts: 141
Location: Lima, Peru

fjb_saper wrote:
You did not use any Path statements to include your constants. So how should the part of code trying to create the namespace know that the constant has been defined and is in scope??
Working as designed



I open MB.PzrCambioMonInqV1.MF_RqRs.cmf esql compiled and view:
Code:

<MessageFlow><ConfigurablePropertyTable> . . .
CREATE SCHEMA MB.PzrCambioMonInqV1 PATH "",MB.FrameworkV1

DECLARE mfx  NAMESPACE 'http://mfxV1_0';
. . .
DECLARE C_NS_MESSAGES_MFX  CONSTANT CHARACTER 'http://mfxV1_0';
CREATE COMPUTE MODULE MF_RqRs_DoXMLtoCWF
. . .


first is declaration namespace and second is declaration constans....maybe this a problem...
Working as desing Or is a Bug[/b]

When i use constant in Module: ..is ok...
Code:

BROKER SCHEMA MB.PzrCambioMonInqV1
PATH MB.FrameworkV1;

CREATE COMPUTE MODULE MF_RqRs_DoXMLtoCWF
DECLARE mfx NAMESPACE C_NS_MESSAGES_MFX;

. . .
END MODULE;

_________________
Oscar Vásquez Flores
Back to top
View user's profile Send private message Send e-mail
fjb_saper
PostPosted: Mon Oct 12, 2009 4:34 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

You did not specify in which schema Constantes.esql was.
This may well factor into the behavior...

For clarity's sake we will assume that Constantes.esql is in schema MB.PzrCambioMonInqV1...

It may well be that the order of compilation at schema level is giving you trouble. And yes I agree that constants should be set before namespaces...

However I remember having a bit of trouble with something like this... have you tried:

Create a constant c1
Create a variable nsc1
Assign the constant to the variable
Create the namespace using the variable...


Code:
declare constant c1 Character 'http://mynamespace/';
declare nsc1 character;
set nsc1 = c1;
declare ns1 namespace nsc1;


I know it looks a little bit convoluted but I just can't find the piece of code where I used it and don't have access right now... so my hazy memory will have to do...

IIRC namespaces once declared are treated as constants...
and I was not using a constant but an EXTERNAL to define the namespace.


_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
ovasquez
PostPosted: Mon Oct 12, 2009 4:51 pm    Post subject: Reply with quote

Centurion

Joined: 09 Dec 2005
Posts: 141
Location: Lima, Peru

fjb_saper wrote:
You did not specify in which schema Constantes.esql was.
This may well factor into the behavior...

For clarity's sake we will assume that Constantes.esql is in schema MB.PzrCambioMonInqV1...

Yes, Constantes.esql is in schema MB.PzrCambioMonInqV1.
So is Bug..maybe fix is WMBT 6.1.0.6
Is There a IBM site where i can view what is errors list from WMB and is not fix or fix in next pack¿?
_________________
Oscar Vásquez Flores
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Tue Oct 13, 2009 6:43 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

ovasquez wrote:
So is Bug..maybe fix is WMBT 6.1.0.6


You'll increase the odds of this if you raise a PMR. At least then IBM will know there's a bug to fix....

ovasquez wrote:
Is There a IBM site where i can view what is errors list from WMB and is not fix or fix in next pack¿?


AFAIK there's only a list of what's in the released fix pacs, because the actual contents of a fix release may change.

However, if you raise a PMR the support desk may be able to give you an idea, or (if a fix is available for release) possibly give you an APAR ahead of the next release.

(I am not now nor have I ever been connected to the IBM support process, have no knowledge of the progress being made on any given problem, the availability of any fix or it's suitibility for early release)
_________________
Honesty is the best policy.
Insanity is the best defence.
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 » Problem when use CONSTANT in .ESQL File, schema level.
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.