Gd convert.GetCurrNumeral

Материал из GedeminWiki
Версия от 11:20, 27 июля 2016; SYSDBA (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск
 Модуль: Gd convert.pas   Тип: function 

Delphi:

 function GetCurrNumeral(const ACurrKey: Integer; const AFormat: String; AValue: Double; const ARounding: Double; const ACase: Integer; const AParts: Integer; const ASubst, ADecimalSeparator, AThousandSeparator: String): String;

Описание

Конвертирует число, денежную величину в строку, для чего использует GetNumeral. Наименования целых и разменных единиц валюты берутся из справочника валют (таблица GD_CURR).

ACurrKey
ИД валюты из справочника валют.
AFormat
Строка формата.
AValue
Значение для преобразования
ARounding
Округление. 0 -- без округления. 1 -- до целого числа. 10 -- до десятков. 100 -- до сотен, 0.01 -- до сотых, 5 -- число будет кратно 5, 0.5 -- число кратно 0.5 и т.д.
ACase
Регистр результирующей строки. Целочисленное значение. caseName = 0 -- Первая буква заглавная, остальные строчные; caseLower = 1, caseUpper = 2 -- в нижнем и верхнем регистре, соответственно; caseMixed = 3 -- не изменять регистр. Знак валюты и код валюты не преобразовываются, а выводятся в строку так как задано при вызове функции.
AParts
Битовая маска может включать следующие значения: partSubstWhenZero = 1 -- если значение ноль, то подставлять переданную строку, partHideFracWhenZero = 2 -- не выводить дробную часть, если она равна нулю, partHideWholeWhenZero = 4 -- не выводить целую часть если она равна нулю.
ASubst
Строка для подстановки, если указан флаг partSubstWhenZero.
ADecimalSeparator
Десятичный разделитель. Если не задан, то используется системный.
AThousandSeparator
Разделитель групп цифр. Если не задан, то используется системный.

Примеры использования

Вызов функции Результат
GetCurrNumeral(200010, '@W @F @D @C', 1, 0, caseName, 0, '', '.', ' ') Один белорусский рубль ноль копеек
GetCurrNumeral(200010, '@W @F @D @C', 1, 0, caseName, partHideFracWhenZero, '', '.', ' ') Один белорусский рубль
GetCurrNumeral(200010, '@W @F @D @C', 0.15, 0, caseName, partHideWholeWhenZero + partHideFracWhenZero, '', '.', ' ') Пятнадцать копеек
GetCurrNumeral(200010, '@W @F @D @C', 1.15, 0.01, caseName, 0, '', '.', ' ') Один белорусский рубль пятнадцать копеек
GetCurrNumeral(200010, '@W @B @D @K', 1.15, 0.01, caseName, 0, '', '.', ' ') Один руб. пятнадцать коп.
GetCurrNumeral(200010, '@W @B @D00 @K', 1.15, 0.01, caseName, 0, '', '.', ' ') Один руб. 15 коп.
GetCurrNumeral(200010, '@W @F @D00 @C', 3561.15, 0.01, caseName, 0, '', '.', ' ') Три тысячи пятьсот шестьдесят один белорусский рубль 15 копеек
GetCurrNumeral(200010, '@W @F @D00.## @K', 3561.1586, 0, caseName, 0, '', '.', ' ') Три тысячи пятьсот шестьдесят один белорусский рубль 15.86 коп.
GetCurrNumeral(200010, '@W @F @D00.## @K', 3561.0586, 0, caseName, 0, '', '.', ' ') Три тысячи пятьсот шестьдесят один белорусский рубль 05.86 коп.
GetCurrNumeral(200010, '@W @F @D0.## @K', 3561.0586, 0, caseName, 0, '', '.', ' ') Три тысячи пятьсот шестьдесят один белорусский рубль 5.86 коп.
GetCurrNumeral(200010, '@W @F @D0.## @K', 3561.05, 0, caseName, 0, '', '.', ' ') Три тысячи пятьсот шестьдесят один белорусский рубль 5 коп.
GetCurrNumeral(200010, '@W#,##0 @F @D0.## @K', 3561.05, 0, caseName, 0, '', '.', ' ') 3 561 белорусский рубль 5 коп.
GetCurrNumeral(200010, '@N#,##0.00 @B @@@', 3561.05, 0, caseName, 0, '', '.', ' ') 3 561.05 руб. @@@
GetCurrNumeral(200010, '@S @I @O', 1.15, 0.01, caseName, 0, '', '.', ' ') Br 933 BYN
Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты