× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On 7 Feb 2003 at 12:58, Tom Jedrzejewicz @ San Pedro wrote:

> Thanks for the info.
> 

My pleasure.

[snip]

> 
> I know my way around SEU! I guess making mods to control the dates on
> the key programs is what I am going to do over the next month or so as
> time arises. I was hoping to find some controls or keys in BPCS to
> turn on date edits.  I find the absence of them to be distressing.
> 

BPCS lacks any kind of date edit.  In most of the CL's, though, you'll find 
that a 
prompt screen is called to obtain parameters, which are then stuffed into the 
LDA 
and passed to a program object, either interactively or in a submission to a 
batch 
subsystem.  It's easy enough to modify the cl to test date parameters for 
validity, then 
send a message and return to the SNDRCVF statement in the event a parm is wrong 
or out of range.

One of the things we've done here is use the CVTDAT to move a date into a dummy 
field in some other format, like *YMD or something.  CVTDAT returns CPF0550 to 
CPF0557 in the event of an error.  You can react to any message, or if you want 
to 
get specific, you can react to the specific message with the MONMSG statement.

i.e.:

$DISPLAY:    SNDF       RCDFMT(MSGCTL)          
              SNDRCVF    RCDFMT(FOR51501)        
              RMVMSG     PGMQ(*SAME) CLEAR(*ALL) 
              CHGVAR     VAR(&MSG) VALUE(&BLK70) 

[snip]

CVTDAT     DATE(&MEDTE) TOVAR(&FDAT1) FROMFMT(*MDY) + 
             TOFMT(*YMD) TOSEP(*NONE)                 
MONMSG     MSGID(CPF0000) EXEC(DO)
RMVMSG     CLEAR(*NEW)                                
SNDPGMMSG  MSG('Month Ending Date is not valid') +    
             TOPGMQ(*SAME)                            
GOTO       CMDLBL($DISPLAY)                           
ENDDO                                                 

In this instance, MEDTE is a field in record format FOR51501 of display file 
FOR515PM called with SNDRCVF.  The user is asked to put the month ending date 
into the field in MMDDYY format.  Using CVTDAT, we change it to *YMD and place 
it 
in the dummy field FDAT1.  If the CVTDAT fails, we tell the user and redisplay 
the 
prompt.

> Al's idea of making users only enter TODAY is great, but will not fly
> here for a while.  There is often a delay between when something
> happens and when we hear about it.  I am trying to get rid of the
> postings to 2029!
> 

Al is very knowledgeable about BPCS.  The only problem I would have is that we 
invoice Monday what is shipped Friday...  We need to be able to enter Friday's 
date 
as a ship date.  Otherwise, we don't backdate or post-date any kind of 
transaction.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
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.