Страница 1 из 1

Сумма прописью - новый функционал или поле

Добавлено: 24 янв 2018, 00:41
alcompstudio
Добрый день!

Предлагаю сделать возможность "отображать" числовые значения полей в виде суммы прописью, т.е. когда нужно, например, число (тем более, если с "финансовым" префиксом) 2500,00 руб отразить словами "Две тысячи пятьсот рублей 00 копеек". При этом предусмотреть как для отображения с сотыми долями денежной единицы (копейки, центы и т.п.), так и без них (например, просто "Две тысячи пятьсот рублей").

Думаю, будет полезным для формирования шаблонов экспорта "финансовых" печатных форм, счетов, накладных и подобных документов, предполагающих отображение как в числовом, так и в "словесном" формате. Да и в самой сущности будет приятно видеть :)

Сделать, например, по типу поля Текст по шаблону, где в настройках конфигурации указать ID такого числового поля, откуда "брать" сумму и преобразовывать ее в сумму прописью. Также в настройках предусмотреть "типы валюты", где предполагается настройка подбора (склонения) валюты при подстановке цифры (обычно это 1, 2-4 и 5-9), т.е. если к примеру, нужно указывать сумму прописью для валюты "рубль", то в настройках будут такие опции:

1 - рубль
2-4 - рубля
5-9 - рублей

для доллара, соответственно:

1 - доллар
2-4 - доллара
5-9 долларов

... и т.п. Аналогично для дробных цифр (копеек).

Ну и в результате таких настроек уже функционал будет автоматически подставлять нужное слово. Что касается преобразования цифр в слова - то тут, думаю это будет постоянными данными, это можно "заложить" уже в сам функционал на программном уровне.

Re: Сумма прописью - новый функционал или поле

Добавлено: 02 фев 2018, 12:42
support
Да, есть есть идеи по этом поводу, добавил в план.

Re: Сумма прописью - новый функционал или поле

Добавлено: 16 мар 2018, 21:57
support
Реализовал для 2.1

Появилась функция num2str_rub(value), которую можно использовать в шаблоне для экспорта или в поле "Текст по шаблону".

Подставив в эту функции число

Код: Выделить всё

num2str_rub({#251:Бюджет (RUB)})
Получим:

Код: Выделить всё

Бюджет: пять тысяч пятьсот двадцать три рубля 00 копеек
Смотрите пример на скриншотах.

В папке includes/languages/num2str/ расположены языковые файлы для этой функции. По умолчанию есть так же uah.php и usd.php. Соответственно можно применить функцию num2str_uah() и num2str_uds()
Можно создать свой файл перевода и тогда функция будет num2str_[имя файла]()

Re: Сумма прописью - новый функционал или поле

Добавлено: 16 мар 2018, 23:39
alcompstudio
Отлично!