Author |
Message
|
jith |
Posted: Tue Jan 18, 2011 6:45 pm Post subject: WMB ToolKit 7.0 Fixpack 2 Issue |
|
|
Newbie
Joined: 22 Jun 2010 Posts: 5
|
Hi
I have upgraded WMB Toolkit 7.0.0 to 7.0.0.2. After the upgrade i have faced issue with my Existing ESDL code.
Below mentioned ESQL code i'm getting error "Syntax error. Valid options include"
SET outputRef.(XMLNSC.NamespaceDecl)xmlns:{CAST(FIELDNAME(soapEnvelopeNSItem) AS CHARACTER)} = svc;
The same ESQL code was working fine in 7.0.0 toolkit version.
If i declare the CAST staement ouside the SET statement then i'm not getting ESQL error in 7.0.0.2 version
Example :
DECLARE TEST CHARACTER CAST(FIELDNAME(soapEnvelopeNSItem) AS CHARACTER);
SET outputRef.(XMLNSC.NamespaceDecl)xmlns:{} = svc;
Pls suggest this is the problem with new fixpack 7.0.0.2????? |
|
Back to top |
|
 |
Vitor |
Posted: Wed Jan 19, 2011 3:37 am Post subject: Re: WMB ToolKit 7.0 Fixpack 2 Issue |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
jith wrote: |
Pls suggest this is the problem with new fixpack 7.0.0.2????? |
Potentially a feature, trying to save you from yourself. Doing an evaluate (the {} construction) is much more inefficent than CASTing then SETting.
But I've no direct information on this version to offer. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
zpat |
Posted: Wed Jan 19, 2011 3:41 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
Does it work in 7.0.0.1 ?
Open a PMR with IBM if you believe it should work. |
|
Back to top |
|
 |
mqjeff |
Posted: Wed Jan 19, 2011 3:45 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
If you have the exact same code that compiles correctly in one level of Toolkit and doesn't compile in another level of Toolkit, then it's a bug in the Toolkit.
the problem here is that it may not be a bug in Toolkit 7.0.0.2. It may be that Toolkit 7.0.0.1 did not properly catch bad syntax, and now it has been corrected to do so.
However, I will say that your two code snippets - the one that doesn't work in 7.0.0.2 and the one that does - are not the same code. Maybe this is a typographical error, but the "working" code example does not actually use the fieldname you have cast/set.
Regardless, it is much better to pass a single character string to {} than to try and pack a complex expression into it. So do the cast and set a local variable and then put the local variable into {}.
but I'm not sure you need to do either one in this case... but I guess I don't know where you are getting soapEnvelopNSItem from or why you need specifically to use it as the prefix for a Namespace declaration. |
|
Back to top |
|
 |
rbicheno |
Posted: Wed Jan 19, 2011 4:10 am Post subject: |
|
|
Apprentice
Joined: 07 Jul 2009 Posts: 43
|
I see the same issue, i have v7 FP02 and also an old v6 toolkit and it works fine in v6 but red error shows in v7.0.0.2. Suggest you raise the PMR as ESQL code should not need to be altered |
|
Back to top |
|
 |
mqmatt |
Posted: Wed Jan 19, 2011 5:14 am Post subject: |
|
|
 Grand Master
Joined: 04 Aug 2004 Posts: 1213 Location: Hursley, UK
|
|
Back to top |
|
 |
mqjeff |
Posted: Wed Jan 19, 2011 5:40 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
mqmatt wrote: |
<Rattles MGK's cage...> |
You forgot to /ducks/. |
|
Back to top |
|
 |
Vitor |
Posted: Wed Jan 19, 2011 5:52 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
mqjeff wrote: |
mqmatt wrote: |
<Rattles MGK's cage...> |
You forgot to /ducks/. |
<pulls on cap and settles down in reeds...> _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
mgk |
Posted: Wed Jan 19, 2011 6:11 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
So, you did not post a complete (deployable) code sample, but I tried to make one from what you did post. This code:
Code: |
DECLARE svc CHARACTER 'mgk';
DECLARE soapEnvelopeNSItem REFERENCE TO OutputRoot.XMLNSC.Top.Totalsales;
DECLARE outputRef REFERENCE TO OutputRoot.XMLNSC.Top;
SET outputRef.(XMLNSC.NamespaceDecl)xmlns:{CAST(FIELDNAME(soapEnvelopeNSItem) AS CHARACTER)} = svc; |
Does work in the runtime, but is not accepted in the toolkit. Therefore I can only assume that this is a toolkit problem, so please raise a PMR... In the interim you can use "executable comments" to force the toolkit to deploy this code if you wish...
Kind 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 |
|
 |
|