1с получить число прописью

Обновлено: 05.07.2024

Как реализовать вывод Количества и Суммы прописью в Отчёте.
Форматом не получается. Подскажите, пожалуйста.

Синтаксис:
ЧислоПрописью(<Число>, <Форматная строка>, <Параметры предмета исчисления>)

Если так:
Выводит:

Синтаксис:
ЧислоПрописью(<Число>, <Форматная строка>, <Параметры предмета исчисления>)
Параметры:
<Число> (обязательный)
Тип: Строка. Форматная строка представляет собой строковое значение, включающее параметры форматирования. Параметры форматирования перечисляются через символ ";" (точка с запятой). Если параметр не указывается, используется значение параметра по умолчанию.
Каждый параметр задается именем параметра, символом " cr">по умолчанию - Ложь. <Параметры предмета исчисления> (необязательный) Тип: Строка. Представляет собой строковое значение, определяющее параметры предмета исчисления. Параметры предмета исчисления перечисляются через " , " (запятая). Формат строки зависит от кода локализации. Для русского и белорусского языков (ru_RU, be_BY)

"рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2", где:
"рубль, рубля, рублей, м" – предмет исчисления:
"гривна, гривны, гривен, м, копейка, копейки, копеек, ж, 2", где:
"гривна, гривны, гривен, м" – предмет исчисления:
z?oty, z?ote, z?otych, m, grosz, grosze, groszy, m, 2
где:
2 - количество разрядов дробной части (может отсутствовать, по-умолчанию равно 2)
"EURO, EURO, М, Cent, Cent, M, 2", где:
"EURO, EURO, М" – предмет исчисления:
"lats, lati, latu, V, sant?ms, sant?mi, sant?mu, V, 2, J, J", где:
"lats, lati, latu, v" – предмет исчисления:
"litas, litai, lit?, М, centas, centai, cent?, М, 2", где:
"litas, litai, lit?, М" – предмет исчисления:
"лев, лева, м, стотинка, стотинки, ж, 2", где:
"лев, лева, м" – предмет исчисления:
Значение по умолчанию: Пустая строка
Возвращаемое значение:
Тип: Строка. Представление числа прописью.
Описание:
Формирует представление числа прописью в соответствии с заданными форматной строкой и параметрами предмета исчисления.
Пример:

(6) ты ещё не разобрался, как в других падежах выводить

Наведи порядок в своей работе используя конфигурацию 1C "Управление IT-отделом 8"

Число - Число, которое необходимо преобразовать в строку прописью.

Форматная строка представляет собой строковое значение, включающее параметры форматирования. Параметры форматирования перечисляются через символ ";" (точка с запятой). Если параметр не указывается, используется значение параметра по умолчанию.
Каждый параметр задается именем параметра, символом "=" (равно) и значением параметра. Значение параметра может указываться в одинарных или двойных кавычках. Это необходимо, если значение параметра содержит символы, используемые в синтаксисе форматной строки.
Л (L) - Код локализации. По умолчанию используется код локализации, установленный в операционной системе. Примеры кодов локализации: ru_RU - Русский (Россия); en_US - Английский (США).
НП (SN) - Включать/не включать название предмета исчисления (Булево), по умолчанию - Истина.
НД (FN) - Включать/не включать название десятичных частей предмета исчисления (Булево), по умолчанию - Истина.
ДП (FS) - Дробную часть выводить прописью/числом (Булево), по умолчанию - Ложь.

Параметры предмета исчисления - Представляет собой строковое значение, определяющее параметры предмета исчисления. Параметры предмета исчисления перечисляются через "," (запятая). Формат строки зависит от кода локализации.
Для русского и белорусского языков (ru_RU, be_BY)
"рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2", где:
"рубль, рубля, рублей, м" – предмет исчисления:
рубль – единственное число именительный падеж,
рубля – единственное число родительный падеж,
рублей – множественное число родительный падеж,
м – мужской род (ж – женский род, с - средний род);
"копейка, копейки, копеек, ж" – дробная часть, аналогично предмету исчисления (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).
Для украинского языка (uk_UA)
"гривна, гривны, гривен, м, копейка, копейки, копеек, ж, 2", где:
"гривна, гривны, гривен, м" – предмет исчисления:
"гривна – единственное число именительный падеж,
гривны – единственное число родительный падеж,
гривен – множественное число родительный падеж,
м – мужской род (ж – женский род, с - средний род);
"копейка, копейки, копеек, ж" – дробная часть, аналогично предмету исчисления (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).
Для польского языка (pl_PL)
z?oty, z?ote, z?otych, m, grosz, grosze, groszy, m, 2
где:
"z?oty, z?ote, z?otych, m " - предмет исчисления (m - мужской род, ? - женский род, ? - средний род, mo – личностный мужской род)
z?oty - единственное число именительный падеж
z?ote - единственное число винительный падеж
z?otych - множественное число винительный падеж
m - мужской род (? - женский род, ? - средний род, mo – личностный мужской род)
"grosz, grosze, groszy, m " - дробная часть (может отсутствовать) (аналогично целой части)
2 - количество разрядов дробной части (может отсутствовать, по-умолчанию равно 2)
Код 1C v 8.х
Для английского, финского и казахского языков (en_US, fi_FI, kk_KZ)
"dollar, dollars, cent, cents, 2", где:
"dollar, dollars" – предмет исчисления в единственном и множественном числе;
"cent, cents" – дробная часть в единственном и множественном числе (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).
Для немецкого языка (de_DE)
"EURO, EURO, М, Cent, Cent, M, 2", где:
"EURO, EURO, М" – предмет исчисления:
EURO, EURO – предмет исчисления в единственном и множественном числе;
М – мужской род (F – женский род, N - средний род);
"Cent, Cent, M" – дробная часть, аналогично предмету исчисления (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).

Число - Число, которое необходимо преобразовать в строку прописью.

Форматная строка представляет собой строковое значение, включающее параметры форматирования. Параметры форматирования перечисляются через символ ";" (точка с запятой). Если параметр не указывается, используется значение параметра по умолчанию.
Каждый параметр задается именем параметра, символом "=" (равно) и значением параметра. Значение параметра может указываться в одинарных или двойных кавычках. Это необходимо, если значение параметра содержит символы, используемые в синтаксисе форматной строки.
Л (L) - Код локализации. По умолчанию используется код локализации, установленный в операционной системе. Примеры кодов локализации: ru_RU - Русский (Россия); en_US - Английский (США).
НП (SN) - Включать/не включать название предмета исчисления (Булево), по умолчанию - Истина.
НД (FN) - Включать/не включать название десятичных частей предмета исчисления (Булево), по умолчанию - Истина.
ДП (FS) - Дробную часть выводить прописью/числом (Булево), по умолчанию - Ложь.

Параметры предмета исчисления - Представляет собой строковое значение, определяющее параметры предмета исчисления. Параметры предмета исчисления перечисляются через "," (запятая). Формат строки зависит от кода локализации.
Для русского и белорусского языков (ru_RU, be_BY)
"рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2", где:
"рубль, рубля, рублей, м" – предмет исчисления:
рубль – единственное число именительный падеж,
рубля – единственное число родительный падеж,
рублей – множественное число родительный падеж,
м – мужской род (ж – женский род, с - средний род);
"копейка, копейки, копеек, ж" – дробная часть, аналогично предмету исчисления (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).
Для украинского языка (uk_UA)
"гривна, гривны, гривен, м, копейка, копейки, копеек, ж, 2", где:
"гривна, гривны, гривен, м" – предмет исчисления:
"гривна – единственное число именительный падеж,
гривны – единственное число родительный падеж,
гривен – множественное число родительный падеж,
м – мужской род (ж – женский род, с - средний род);
"копейка, копейки, копеек, ж" – дробная часть, аналогично предмету исчисления (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).
Для польского языка (pl_PL)
z?oty, z?ote, z?otych, m, grosz, grosze, groszy, m, 2
где:
"z?oty, z?ote, z?otych, m " - предмет исчисления (m - мужской род, ? - женский род, ? - средний род, mo – личностный мужской род)
z?oty - единственное число именительный падеж
z?ote - единственное число винительный падеж
z?otych - множественное число винительный падеж
m - мужской род (? - женский род, ? - средний род, mo – личностный мужской род)
"grosz, grosze, groszy, m " - дробная часть (может отсутствовать) (аналогично целой части)
2 - количество разрядов дробной части (может отсутствовать, по-умолчанию равно 2)
Код 1C v 8.х
Для английского, финского и казахского языков (en_US, fi_FI, kk_KZ)
"dollar, dollars, cent, cents, 2", где:
"dollar, dollars" – предмет исчисления в единственном и множественном числе;
"cent, cents" – дробная часть в единственном и множественном числе (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).
Для немецкого языка (de_DE)
"EURO, EURO, М, Cent, Cent, M, 2", где:
"EURO, EURO, М" – предмет исчисления:
EURO, EURO – предмет исчисления в единственном и множественном числе;
М – мужской род (F – женский род, N - средний род);
"Cent, Cent, M" – дробная часть, аналогично предмету исчисления (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).

Слово "копеек" должно склоняться в зависимости от количества копеек.

Исходное число - СуммаНаФорме , результат прописью - СуммаНаФормеПрописью . Niks27; hawk1; Misqoozi; user1493909; bbnn; MindParadox; user1464234; + 7 – Ответить (1) по идее, внутри справочника валюты надо указывать "параметры прописи" для склонения.
использовать либо "ЧислоПрописью", либо свою функцию, которая собирает сумму прописью по кускам

Если типовая, то может есть готовый модуль:

(3)
так можно получить
15000 (Пятнадцать тысяч рублей 00 копеек)
а надо
15000 (Пятнадцать тысяч рублей) 00 копеек

"00 копеек" за скобками

(5) Ну, а в чем проблема? Механизм вам подсказали, изучите его. Там можно выводить число без десятичных знаков, десятичные знаки без целой части. Разбейте число на две части, сформируйте две строки, выводите одну в скобках другу за скобками.

(6)
механизм вроде понятен, наверно.
15000 (Пятнадцать тысяч рублей) 00 - это всё я смог получить.

Но как просклонять "копейка" к их количеству?
01 - копейка
02 - копейки
и т.д.
У меня основным-то вопросом был этот.

Вот это пока никак у меня не получается.
Вот думаю, а не придётся ли по "Если" прогнать все окончания количества.

(8) Значит, почитать СП про ЧислоПрописью() не удосужился. Жаль, я два раза не советую. (10)
Извините, извините!
Так-то почитал я про ЧислоПрописью(). Но, видимо, не увидел вариантов решения.
Пройду ещё разок. Исходное число - СуммаНаФорме , результат прописью - СуммаНаФормеПрописью . Niks27; hawk1; Misqoozi; user1493909; bbnn; MindParadox; user1464234; + 7 – Ответить (7)
про ексель с конструктором форматов. непонятно.
А разве есть связь?

(14) FatPanzer . слов нет. изящно.
Спасибо!
В простой строке кода по преобразованию числа в строку столько скрыто. Изучать и изучать! Пока к этому сам придёшь.

Спасибо всем за помощь! Простое человеческое спасибо, что новеньким подсказываете!

Читайте также: