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