aide pour conversion de script
Bonjour tout le monde,
j'ai tenté de convertir un script déjà écrit sous DB2 (sous AS400), il est tout simple mais apparement j'ai un problème dans la déclaration de variables. mon script est comme suit :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
CREATE FUNCTION ZK_UTIL.GETNBRSTR ( PARD DECIMAL(11, 0) )
RETURNS VARCHAR(500) BEGIN
DECLARE UTLZTN VARCHAR ( 500 ) CCSID 297 ;
DECLARE VALSUPML , VALMILLE , VALCENT INTEGER ;
DECLARE VALEUR DECIMAL ( 30 ) ;
DECLARE VAL10 , VALUNITE INTEGER ;
SET UTLZTN = '' ;
SET VALEUR = PARD ;
--Nous allons convertir les chifres entre 1 000 000 et 999 999 999
IF VALEUR >= 1000000 THEN
SET VALSUPML = DECIMAL ( VALEUR / 1000000 ) ;
IF VALSUPML > 1 THEN
SET UTLZTN = CONCAT ( CONCAT ( UTLZTN , ZK_UTIL . GETNSTR100 ( VALSUPML ) ) , ' million ' ) ;
ELSE
SET UTLZTN = CONCAT ( CONCAT ( UTLZTN , ZK_UTIL . GETNSTR100 ( VALSUPML ) ) , ' million ' ) ;
END IF ;
SET VALEUR = VALEUR - ( VALSUPML * 1000000 ) ;
END IF ;
--Nous allons convertir les chiffres entre 1000 et 999 999
IF VALEUR >= 1000 THEN
SET VALMILLE = DECIMAL ( VALEUR / 1000 ) ;
IF VALMILLE > 1 THEN
SET UTLZTN = CONCAT ( CONCAT ( UTLZTN , ZK_UTIL . GETNSTR100 ( VALMILLE ) ) , ' mille ' ) ;
ELSE
SET UTLZTN = CONCAT ( UTLZTN , ' mille ' ) ;
END IF ;
SET VALEUR = VALEUR - ( VALMILLE * 1000 ) ;
END IF ;
SET UTLZTN = CONCAT ( UTLZTN , ZK_UTIL . GETNSTR100 ( VALEUR ) ) ;
RETURN UTLZTN ;
END ;
|
Help please :mrgreen: