×

Good News Everybody!

A new search engine is coming soon.

As a stop gap measure, we are using Google's custom search engine service.




Your problem is that hte Char function will suppress leading zeros and left 
justify the result, so that if you have a value of 09052006  the result of 
%Char would be '9052006' which is only 7 bytes.
I would suggest you use the %Date function with a monitor for invalid date as 
follows:
Monitor
Char10 = %Char(%Date(Date8) : *MDY) : *ISO))
On-Error
Char10 = *Zero
EndMon
 
Jeff Young 
Sr. Programmer Analyst
Dynax Solutions, Inc.
A wholly owned subsidiary of enherent Corp.
IBM -e(logo) server Certified Systems Exper - iSeries Technical Solutions V5R2 
IBM  Certified Specialist- e(logo) server i5Series Technical Solutions Designer 
V5R3
IBM  Certified Specialist- e(logo)server i5Series Technical Solutions 
Implementer V5R3 


  
 





----- Original Message ----
From: Captain Jerry <captainjerry@xxxxxxxxx>
To: RPG programming on the AS400 / iSeries <rpg400-l@xxxxxxxxxxxx>
Sent: Thursday, October 26, 2006 11:01:59 AM
Subject: Substring Start or Length Error


Hi group,

I have a numeric field containing a date in YYYYmmDD format (20061026) 8,0
which I need to convert to mm/DD/YYYY (Character field 10,A) ~ The below
code works fine if I actually have a date in the numeric field, but if the
date is all *Zeros (00000000) I get a "Substring Start or Length Out of
Range" Error.  Is this right, or is there a flaw somewhere?

Char10 = %Subst(%Char(Date8):5:2)  +  '/'  +
               %Subst(%Char(Date8):7:2)  +  '/'  +
               %Subst(%Char(Date8):1:4);

Obviously my solution is to check for all zeros and just clear the character
field instead of putting out '00/00/0000' ~ Just wondering why the error...

Thanks,
//Captain Jerry/

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

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

This mailing list archive is Copyright 1997-2026 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.