IIRC, you must use 16-byte char fields in the RTNVAL() parameter in the
CALLPRC command:

dcl var(&enddate) type(*char) len(10) value('2002-12-07')
dcl var(&weekofyear) type(*char) len(16)
dcl var(&woytemp) type(*char) len(4)
dcl var(&woynbr) type(*dec) len(6 0)
callprc prc(rtvweekofyear) parm(&endddate) rtnval(&weekofyear)
chgvar var(&woytemp) value(%sst(&weekofyear 1 4))
chgvar var(&woynbr) value(%bin(&woytemp))

This is a documented condition of the CALLPRC command that its return values
must be defined in intervals of 16. I think it has to do with passing the
variable by reference.

Some of the above program is probably wrong, I'm offline at the moment.

HTH,
Loyd


On Wed, 11 Dec 2002 14:28:23 -0800, "Reggie Acosta" <racosta@brownjordan.com>
wrote:

>This is a multi-part message in MIME format.
>--
>[ Picked text/plain from multipart/alternative ]
>When subprocedure RtvWeekOfYear in service program is called from CLLE, date
>data type parameter DateIn contains garbage. Is the only way to make this
>work is to change the parameter to character data type?
>
>Thanks...
>
>DCL        VAR(&ENDDATE) TYPE(*CHAR) LEN(10) VALUE('2002-12-07')
>DCL        VAR(&weekOfYear) TYPE(*DEC) LEN(6 0)
>
>CALLPRC    PRC(rtvWeekOfYear) PARM(&ENDDATE) +
>             RTNVAL(&weekOfYear)
>
>
>.....DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++
>++++
>     D RtvWeekOfYear   PR            10I 0
>     D                                 D   Value
>
>..... *. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7
>...+... 8
>     P RtvWeekOfYear   B                   Export
>     D RtvWeekOfYear   PI            10I 0
>     D  DateIn                         D   Value
>     ...
>     P RtvWeekOfYear   E
>
>Reggie Acosta

--
"Why, you can even hear yourself think." --Hobbes
"This is making me nervous. Let's go in." --Calvin
loyd@blackrobes.net  ICQ#504581  http://www.blackrobes.net/


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.