|
Hello Liu Kean Keong,
There is an example covering exactly what you want in the ILE RPG/400
Reference. It is Figure
126 in section 4.1.1.5
If you do not use RPG IV then ....
This sort of thing can always be done programatically. For example:
Test the value for being negative
Move the negative value into a character field
Append a right parenthesis
Search for the first non-zero character ( Factor1 OpCode Factor2
Result)
'0' CHECK
NegValue Posn
Subtract 1 from the Posn field
Move blanks upto that place
Move a left parenthesis into that place
Move the edited value to the output field
You may also be able to create a user defined edit code to do this. Assumming
you don't also
want a floating currency symbol try:
CRTEDTD EDTD(5) CURSYM('(') NEGSTS(')')
or
CRTEDTD EDTD(5) CURSYM('(') RGTCNS(')')
Using a user-defined edit code would require different fields in the output
(conditioned by
indicators) for positive and negative values. The negative field would use one
of the above edit
codes, the positive field would use the normal edit code.
Regards,
Simon Coulter.
//----------------------------------------------------------
// FlyByNight Software AS/400 Technical Specialists
// Phone: +61 3 9419 0175 Mobile: +61 3 0411 091 400
// Fax: +61 3 9419 0175 E-mail: shc@flybynight.com.au
//
// Windoze should not be open at Warp speed.
//--- forwarded letter -------------------------------------------------------
> X-Mailer: Microsoft Exchange Server Internet Mail Connector Version
>4.0.995.52
> Date: Mon, 13 Apr 98 10:22:04 +0800
> From: "Liu Kean Keong" <LiuKeanKeong@hlbb.hongleong.com.my>
> To: "'MIDRANGE-L@midrange.com'" <MIDRANGE-L@midrange.com>
> Reply-To: MIDRANGE-L@midrange.com
> Subject: edit mask - Floating bracket sign (instead of $)
>
> My colleague wants to code a program to generate nagative values in
> brackets and not with a minus sign nor with a CR sign. Problem is that
> she wants the leading bracket to float like the $ sign.
> Eg.
> (89.00)
> (2,341.00)
> Coding something with the edit mask like bbb,bbb,b(0.bb does not work.
> It gives 2,3(1.00 instead of the desired (2,341.00
> Can any programming guru please tell me if the above is even possible?
> Thanks.
> KK Liu.
> (A possible solution is to play around with the user-defined edit codes
> or even the system value QCURSYM but I am not too keen on this as it
> will affect the whole system.)
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---
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.