|
>The biggest hurdle, which I have not solved
>yet, is the handling of displaying digits
>(grin) , there's no SQL in-built function
>that could convert it to a string but with
>the appropriate editing
(appropriate meaning "no editing.")
Look into writing your own SQL function. Here's a simple RPG version for
you to play with. Look into the edit APIs for a more generic solution. The
point of this code is to demonstrate how to write and register your own UDF
(User Defined Function).
Source member QRPGLESRC SQLNOEDIT
h debug dftactgrp(*no) actgrp(*caller)
* dbgview(*list)
* Return a numeric value without editing
* register:
* CREATE FUNCTION NOEDIT (DECIMAL(30,15))
* RETURNS VARCHAR(256)
* RETURNS NULL ON NULL INPUT
* LANGUAGE RPGLE
* EXTERNAL NAME 'BUCK/SQLNOEDIT'
* DETERMINISTIC
* NO SQL
* NO EXTERNAL ACTION
* PARAMETER STYLE SQL
* DISALLOW PARALLEL
d inpDec s 30 15
d outChar s 256 varying
d inpInd s 5i 0
d outInd s 5i 0
d outSQLState s 5
d inpFuncName s 139 varying
d inpSpecName s 128 varying
d outDiagTxt s 70 varying
c *entry plist
c parm inpDec
c parm outChar
c parm inpInd
c parm outInd
c parm outSQLState
c parm inpFuncName
c parm inpSpecName
c parm outDiagTxt
c eval outChar = %editc(inpDec: 'X')
c eval *inlr = *on
(register the function by copy/pasting the above comments)
select total,noedit(total) from master
....+....1....+....2....+....3....+....4....+....5
ACC/REC NOEDIT ( TOTAL )
TOTAL
5.00 000000000000005000000000000000
.00 000000000000000000000000000000
Buck
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.