The Trick To DATE(*CURRENT)

General
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

From: Eric Hill To: All

I need to define a parameter with the type of *DATE in a command definition. This data type will edit for valid dates. I want the parameter value to default to *CURRENT for processing purposes, but when I compile the command, I get errors. They are as follows.

CPD0271: Special value *CURRENT not valid.

CPD0265: Default value *CURRENT ignored because not valid.

I am putting *CURRENT in the default parameter and in the special values parameter. Any help on this one will be greatly appreciated.

From: Matt Sargent To: Eric Hill

You just need to give *CURRENT a numeric replacement value that won't correspond to a valid date. I generally use 999999. The code should look something like:

 PARM KWD(DATE) TYPE(*DATE) + DFT(*CURRENT) + SPCVAL((*CURRENT 999999)) + PROMPT('DATE') 

In your program, you'll want to check for a value of 0999999 since the system will automatically append the century digit. Be sure to define your receiver variable in your CPP as TYPE(*CHAR) LEN(7). If your program receives 0999999, it means that *CURRENT was selected and you should replace this value with today's date; otherwise, the date will be passed in CYYMMDD format.

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$0.00 Raised:
$