|
On Dec 11, 2018, at 2:30 PM, Alan Shore <ashore@xxxxxxxx> wrote:
Hi
Those drumbeats you are hearing - are NOT drumbeats
Its me banging my head on the desk
I pulled back my service module and my service program
Removed the RTNPARM
It was
dcl-pr GetCustInf LikeDS(CustInfo)
RTNPARM;
inCstDiv packed(2:0) const;
inCstNbr packed(9:0) const;
end-pr;
and
dcl-pi GetCustInf LikeDS(CustInfo)
RTNPARM;
inCstDiv packed(2:0) const;
inCstNbr packed(9:0) const;
end-pi;
changed to
dcl-pr GetCustInf LikeDS(CustInfo);
inCstDiv packed(2:0) const;
inCstNbr packed(9:0) const;
end-pr;
and
dcl-pi GetCustInf LikeDS(CustInfo);
inCstDiv packed(2:0) const;
inCstNbr packed(9:0) const;
end-pi;
NOW it wont compile
I put the RTNPARM back in
It compiles
When it doesn’t compile - the error is
*RNF0320 30 1 Errors were found while generating the program information to
be placed in the module.
But no actual errors in the listing
So I run DSPJOBLOG to see if anything is there and all I see is
Compilation stopped. Severity 30 errors found in program.
When I place the cursor on that and press F1
This is all I get
Additional Message Information
Message ID . . . . . . : RNS9308 Severity . . . . . . . : 50
Message type . . . . . : Completion
Date sent . . . . . . : 12/11/18 Time sent . . . . . . : 14:15:49
Message . . . . : Compilation stopped. Severity 30 errors found in program.
Cause . . . . . : The RPG compiler found at least one error in the program
of severity greater than that specified in the GENLVL option on the
CRTRPGMOD or CRTBNDRPG command.
Recovery . . . : Correct the errors in the program. Compile again.
But I have no idea what the error is
Alan Shore
E-mail : ASHORE@xxxxxxxx
Phone [O] : (631) 200-5019
Phone [C] : (631) 880-8640
‘If you're going through hell, keep going.’
Winston Churchill
-----Original Message-----
From: Alan Shore
Sent: Tuesday, December 11, 2018 2:05 PM
To: midrange-l@xxxxxxxxxxxx
Subject: RE: [EXTERNAL] Re: Question concerning Integrated Web Services
Hi Scott
Thanks for the reply
Let me give that a go and see what happens
All of this is brand new to me - exciting - but being the pathfinder in our company - exasperating when I come across such problems and there no one to bounce ideas off, in the next cubicle
Now I know how Lewis and Clark felt
If they got lost - they couldn’t walk into the nearest deli and ask for directions
Wait a minute - they were men
Men don’t ask for directions
Alan Shore
E-mail : ASHORE@xxxxxxxx
Phone [O] : (631) 200-5019
Phone [C] : (631) 880-8640
‘If you're going through hell, keep going.’
Winston Churchill
-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Scott Klement
Sent: Tuesday, December 11, 2018 1:51 PM
To: midrange-l@xxxxxxxxxxxx
Subject: Re: [EXTERNAL] Re: Question concerning Integrated Web Services
Alan,
I don't see why the identifier name matters?
To test this, I put together a quick program like this (I know the return values aren't useful in a business context, it was just to see if the web service worked)
**free
ctl-opt nomain option(*srcstmt) pgminfo(*pcml:*module);
dcl-proc GetStringForDivCust export;
dcl-pi *n;
division packed(2: 0) const;
customer packed(9: 0) const;
Result char(100);
end-pi;
select;
when division=1 and customer=1000;
result = 'Data to test result here';
when division=2 and customer=2000;
result = 'Other test data here';
other;
result = 'Customer/Division not found';
endsl;
end-proc;
Then, I deployed this web service by setting "division" and "customer"
as input, and "result" as output.
resource name: divcust
path template: /{incstdiv:\d+}/{incstnbr:\d+}
Division is *PATH_PARAM and identifier INCSTDIV Customer is *PATH_PARAM and identifier INCSTNBR
Worked perfectly for me, no errors. The only thing I can think of is that you're using RTNPARM and a return value rather than parameters, which seems like an odd thing to do. Remember, the input/output of a web service comes via the URL or from a document such as JSON or XML. Why would you use a feature like RTNPARM saying "use a return value but make it really be a parameter under the covers". That's really confusing, and there's no real notion of that concept in other programming languages, which makes this a real headache.
Just use parameters, as I have above, and this should work fine. It did for me.
On 12/11/2018 12:33 PM, Alan Shore wrote:
Hi Scott
Apologies - first of all - misspelt it - it should be RTNPARM Which
has nothing to do with IWS I was just having an exasperated moment
trying to go past the problem I was having where the identifier name
being swapped out
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at https://archive.midrange.com/midrange-l.
Please contact support@xxxxxxxxxxxx for any subscription related questions.
Help support midrange.com by shopping at amazon.com with our affiliate link: https://amazon.midrange.com
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.
Please contact support@xxxxxxxxxxxx for any subscription related questions.
Help support midrange.com by shopping at amazon.com with our affiliate link: https://amazon.midrange.com
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.