|
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-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.