ЧислоПрописью с дефисами
Всем привет.
Можно ли стандартной функцией ЧислоПрописью() получить пропись в следующем формате:
Twenty-four thousand one hundred thirty-six dollars and 69 cents? Вроде как по правилам именно такое представление является корректным.
Вопрос только в дефисах при выводе составного числительного twenty-four, thirty-six.
Переключение локализации между американским/британским английским не помогло, использование упрощенной/классической прописи тоже. Платформа 8.3.15.1656
Можно ли стандартной функцией ЧислоПрописью() получить пропись в следующем формате:
Twenty-four thousand one hundred thirty-six dollars and 69 cents? Вроде как по правилам именно такое представление является корректным.
Вопрос только в дефисах при выводе составного числительного twenty-four, thirty-six.
Переключение локализации между американским/британским английским не помогло, использование упрощенной/классической прописи тоже. Платформа 8.3.15.1656
Найденные решения
(8)
"ty o" > "ty-o" "ty t" > "ty-t" "ty f" > "ty-f" "ty s" > "ty-s" "ty e" > "ty-e" "ty n" > "ty-n"
почему 48?
Пардон, это я как 1С-ник посчитал, а не как программист.
вроде 9 всего
Не согласен (в первую очередь с самим собой в (7)), достаточно всего 6:
"ty o" > "ty-o" "ty t" > "ty-t" "ty f" > "ty-f" "ty s" > "ty-s" "ty e" > "ty-e" "ty n" > "ty-n"
Остальные ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(8)
"ty o" > "ty-o" "ty t" > "ty-t" "ty f" > "ty-f" "ty s" > "ty-s" "ty e" > "ty-e" "ty n" > "ty-n"
почему 48?
Пардон, это я как 1С-ник посчитал, а не как программист.
вроде 9 всего
Не согласен (в первую очередь с самим собой в (7)), достаточно всего 6:
"ty o" > "ty-o" "ty t" > "ty-t" "ty f" > "ty-f" "ty s" > "ty-s" "ty e" > "ty-e" "ty n" > "ty-n"
(11)
Для богатых - четыре замены:
я бы не мудрил ;)
А я все-таки еще чуть-чуть помудрил и сократил до трех замен:
ПредставлениеСуммы = СтрЗаменить(СтрЗаменить(СтрЗаменить(ПредставлениеСуммы,"ty ","ty-"),"ty-thousand","ty thousand"),"ty-dollar","ty dollar");
Для богатых - четыре замены:
ПредставлениеСуммы = СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(ПредставлениеСуммы,"ty ","ty-"),"ty-million","ty million"),"ty-thousand","ty thousand"),"ty-dollar","ty dollar");
Может кому еще понадобится
Процедура ПреобразоватьПредставлениеПоПравилу(ПредставлениеСуммы)
Для йота = 21 По 99 Цикл
// составное числительное в начале строки
ТекПредставление = ЧислоПрописью(йота, "L=en_US;НП=Ложь;", ",,,,0");
Если СтрНайти(ПредставлениеСуммы, ТекПредставление) Тогда
ПредставлениеСуммы = СтрЗаменить(ПредставлениеСуммы, ТекПредставление, СтрЗаменить(ТекПредставление, " ", "-"));
КонецЕсли;
// составное числительное в середине строки
ТекПредставление = НРег(ТекПредставление);
Если СтрНайти(ПредставлениеСуммы, ТекПредставление) Тогда
ПредставлениеСуммы = СтрЗаменить(ПредставлениеСуммы, ТекПредставление, СтрЗаменить(ТекПредставление, " ", "-"));
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Показать
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)