How does this work?
How can you return a date from a CL program???
Aahh, I see DB2SQL style parameters work that way. Cool, learned something new.
CINTAS Corporation - IT 92B
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-
bounces@xxxxxxxxxxxx] On Behalf Of Elvis Budimlic
Sent: Thursday, June 05, 2008 1:54 PM
To: 'Midrange Systems Technical Discussion'
Subject: RE: Retrieve JOB (not SYSTEM) date in SQL
I see you figured it out already, but here is what came up in case it
It has some extraneous error handling logic that you can ignore or chuck
Also, I opted to use DB2SQL parameter style instead of more common GENERAL
style used by CL (old habits die hard).
CREATE FUNCTION QGPL/getJobDate()
EXTERNAL NAME 'QGPL/GETJOBDATE'
PARAMETER STYLE DB2SQL
RETURNS NULL ON NULL INPUT
NO EXTERNAL ACTION
/* CL code */
pgm parm(&jobDate &outind +
&sqlstate &funcname &specname &msgtext &dbinfo)
dcl &jobDate *char 10
dcl &outInd *int 2
dcl &localdate *char 6
dcl &sqlstate *char 5
dcl &funcname *char 517
dcl &specname *char 128
dcl &msgtext *char 70
dcl &dbinfo *char 816
dcl &dummy *char 2 x'0000'
monmsg (cpf0000 mch0000 sql0000) exec(goto exception)
CVTDAT DATE(&LOCALDATE) TOVAR(&JOBDATE) TOFMT(*ISO) TOSEP(-)
chgvar &outind 0
chgvar &outind -1
chgvar &sqlstate 'XC999'
chgvar &msgtext (&dummy *tcat 'Unexpected error occurred, +
please check the joblog')
sndpgmmsg msgid(CPF9898) msgf(QCPFMSG) +
msgdta('Unexpected exception') msgtype(*DIAG)
Celebrating 11-Years of SQL Performance Excellence on IBM i, i5/OS and
Subject: Re: Retrieve JOB (not SYSTEM) date in SQL
Thanks. I had coded a TOSEP(*NONE) on my CVTDAT cmd instead of TOSEP('-')
. It seems to work now.
GETJOBDATE ( )
Is this OK or am I fooling myself.
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
This e-mail transmission contains information that is intended to be confidential and privileged. If you receive this e-mail and you are not a named addressee you are hereby notified that you are not authorized to read, print, retain, copy or disseminate this communication without the consent of the sender and that doing so is prohibited and may be unlawful. Please reply to the message immediately by informing the sender that the message was misdirected. After replying, please delete and otherwise erase it and any attachments from your computer system. Your assistance in correcting this error is appreciated.