integerToText
Функция integerToText преобразует число в текстовое представление на английском языке.
Функция поддерживает количественные и порядковые числительные.
Синтаксис
integerToText(число, типЧислительного)
Параметры:
число— числовое значение или выражение, которое необходимо преобразовать в текст;типЧислительного— определяет вид числительного.
Для параметра типЧислительного доступны следующие значения:
| Значение | Тип числительного | Пример |
|---|---|---|
NumberType.Cardinal |
Количественное | twenty-one |
NumberType.Ordinal |
Порядковое | twenty-first |
Если передано десятичное число, функция использует только целую часть. Дробная часть отбрасывается без округления.
Возвращаемое значение
Функция возвращает текстовое представление числа на английском языке.
Например:
integerToText(21, NumberType.Cardinal)
вернёт:
twenty-one
Особенности
Функция преобразует только само число. Она не добавляет единицы измерения, название валюты или другой сопутствующий текст.
Если необходимо преобразовать десятичное число целиком, его целую и дробную части нужно обрабатывать отдельно.
Примеры
Количественное числительное
Выражение:
integerToText(1234, NumberType.Cardinal)
вернёт:
one thousand two hundred thirty-four
Порядковое числительное
Выражение:
integerToText(21, NumberType.Ordinal)
вернёт:
twenty-first
Десятичное число
Если поле число содержит:
1234,56
выражение:
integerToText(число, NumberType.Cardinal)
вернёт:
one thousand two hundred thirty-four
Дробная часть 56 в результат не входит.
Сумма в долларах и центах
Если поле сумма содержит:
1234,56
для вывода целой и дробной частей суммы отдельно можно использовать выражение:
integerToText(сумма, NumberType.Cardinal) & " " &
если(сумма - (сумма остаток 1) = 1, "US dollar", "US dollars") & " " &
integerToText(
округлить((сумма остаток 1) * 100, 0),
NumberType.Cardinal
) & " " &
если(
округлить((сумма остаток 1) * 100, 0) = 1,
"cent",
"cents"
)
Результат:
one thousand two hundred thirty-four US dollars fifty-six cents
Здесь:
сумма остаток 1— получает дробную часть числа;(сумма остаток 1) * 100— преобразует дробную часть в количество центов;округлить(..., 0)— приводит количество центов к целому числу;сумма - (сумма остаток 1)— получает целую часть суммы для выбора междуUS dollarиUS dollars;если(...)— выбирает единственную или множественную форму названия валюты.