1-
Код: Выделить всё
DECLARE EXTERNAL FUNCTION SUMTOTEXT
NUMERIC(15,
2),
INTEGER,
CSTRING(2048)
RETURNS CSTRING(2048)
ENTRY_POINT 'TextSumm' MODULE_NAME 'All_my_udf'
Код: Выделить всё
DECLARE EXTERNAL FUNCTION SUMTOTEXT2
DOUBLE PRECISION,
INTEGER,
CSTRING(2048)
RETURNS CSTRING(2048)
ENTRY_POINT 'TextSumm' MODULE_NAME 'All_my_udf'
Код: Выделить всё
select first 1
sumtotext(123456789.33,1,'XXXXXXX'),
sumtotext2(123456789.33,1,'XXXXXXX')
from gorod

sumtotext=Шесть рублей 09 копеек
sumtotext2=Сто двадцать тpи миллиона четыреста пятьдесят шесть тысяч семьсот восемьдесят девять рублей 33 копейки
в первом случае в функцию передается значение 6.09......Е-304
во втором - то, что надо
фунция писана в дельфях и сумму принимает, как
function TextSumm(MySum:PDouble;show_00_kop:Pinteger;ResCHR:PChar): PChar; cdecl; export;
результат возвертается в ResCHR
не нравится функции, когда я в качестве параметра ей NUMERIC(15,
2) скармливаю, а ведь в базе так и планирую денежные величины хранить
гдеж я накривил-то?