Дата прописью, работает после 2020 года

05.03.21

Разработка - Универсальные функции

Возвращает дату полностью в виде текста, не имеет ограничений по датам.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Бесплатно
Дата прописью, работает после 2020 года:
.epf 6,25Kb
59
59 Скачать бесплатно

Раньше в печатной форме договоров пользовались всем давно известной функцией, но она работает до 2020 года включительно и вот наступил 2021, и меня озадачили.

Готового ничего не нашел, старался использовать наиболее свежие встроенные возможности платформ.

У самого платформа 8.3.18.1289, но должно работать начиная от 8.3.14.

Это первая публикация - не судите строго).

&НаСервере
Функция УниверсальнаяДатаПрописью(Дата) Экспорт
	// Функция Универсальная дата прописью
	// Параметры:
	// Дата - Дата
	// Возвращаемое значение:
	// дата прописью
	// 
	// Модификация для v8.3: Чопоров Денис


	прописьДата = "";
	
	
	прописьДень=СтрЗаменить(
	СтрСоединить(
	ПолучитьСклоненияСтрокиПоЧислу("число",День(Дата),,"ЧС=Порядковое","ПЧ=ЧислоПрописью"),
				),
	"число","");
	
		
	прописьМесяц=СтрСоединить(
	ПолучитьСклоненияСтроки(
		Формат(Дата,"ДФ=ММММ"),
		,
		"ПД=Родительный"),
		);
	
	прописьГод=СтрСоединить(
	ПолучитьСклоненияСтрокиПоЧислу(
		"год",
		Год(Дата),
		,"ЧС=Порядковое",
		"ПД=Родительный; ПЧ=ЧислоПрописью"),
		);    
	
	
		прописьДата=НРег(прописьДень+прописьМесяц+" "+прописьГод);
	Возврат прописьДата;
КонецФункции

 

дата прописью

См. также

Универсальные функции Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Благодаря этим пяти строчкам можно больше не заморачиваться с загрузкой из внешних файлов. Пользуюсь везде, всегда и постоянно.

21.05.2024    20118    dimanich70    81    

144

Универсальные функции Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Задача: вставить картинку из буфера обмена на форму средствами платформы 1С.

1 стартмани

18.03.2024    4091    3    John_d    11    

57

Универсальные функции Программист Стажер Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Пришлось помучиться с GUID-ами немного, решил поделиться опытом, мало ли кому пригодится.

12.02.2024    18051    atdonya    24    

56

Универсальные функции Программист Платформа 1С v8.3 Бесплатно (free)

На заключительных этапах, когда идет отладка или доработка интерфейса, необходимо много раз переоткрыть внешний объект. Вот один из способов автоматизации этого.

30.11.2023    5501    ke.92@mail.ru    16    

65

WEB-интеграция Универсальные функции Механизмы платформы 1С Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

При работе с интеграциями рано или поздно придется столкнуться с получением JSON файлов. И, конечно же, жизнь заставит проверять файлы перед тем, как записывать данные в БД.

28.08.2023    14729    YA_418728146    7    

166

Пакетная печать Печатные формы Адаптация типовых решений Универсальные функции Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Абонемент ($m)

Расширение для программ 1С:Управление торговлей, 1С:Комплексная автоматизация, 1С:ERP, которое позволяет распечатывать печатные формы для непроведенных документов. Можно настроить, каким пользователям, какие конкретные формы документов разрешено печатать без проведения документа.

2 стартмани

22.08.2023    3579    56    progmaster    8    

4

Инструментарий разработчика Универсальные функции Платформа 1С v8.3 Конфигурации 1cv8 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Абонемент ($m)

Копирует в буфер значения из списков, из ячеек отчетов, таблиц, настроек списков, других отборов и вставляет в выбранную настройку отбора. Работает с Объект не найден. Работает как в одной так и между разными базами 1С. Использует комбинации [Alt+C] Копировать список, [Alt+V] Вставить список. Также для копирования данных используется стандартная [Ctrl+C] (например из открытого xls, mxl, doc и т.п. файла скопировать список наименований)

1 стартмани

13.10.2022    18478    171    sapervodichka    112    

135
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. metatron_rus 12.03.21 11:15 Сейчас в теме
Доброго времени суток.
Версия платформы 8.3.14.1565
Решил протестировать вашу обработку. Без "ПД=Именительный" не отображается число прописью. Хоть в контекстной подсказке и написано: "ПД (CS) – Падеж. Если не указан, то выполняется только согласование и возвращается форма именительного падежа."
2. user1248331 15 12.03.21 14:58 Сейчас в теме
Возможно, знающие люди уже сделали замечание, что тестирование на крайних версиях Платформы мало продуктивно, т.к. массово они не применяются, но я все же решился поделиться универсальным способом, т.к. день потратил на поиски готового решения и не нашел.
3. kirillbul 12.01.23 12:26 Сейчас в теме
На 8.3.21.1624 работает, спасибо автору!
Можно еще вынести описание функции за саму функцию
4. STivO 60 09.03.23 18:25 Сейчас в теме
Спасибо за решение. Немного рефакторинга внес от себя:

Функция ДатаПрописью(Дата) 
	Возврат СтрШаблон("%1 %2 %3", 
				ДеньПрописью(День(Дата)), 
				НРег(МесяцПрописью(Месяц(Дата), "Родительный")), 
				НРег(ГодПрописью(Год(Дата), "Родительный"))
			);
КонецФункции

Функция ДеньПрописью(День)
	Результат = "";
	
	Если День > 0 Тогда
		Результат = ПолучитьСклоненияСтрокиПоЧислу("число", День,, "ЧС=Порядковое", "ПЧ=ЧислоПрописью")[0];
		Результат = СтрЗаменить(Результат, " число", ""); 
	КонецЕсли;
	
	Возврат Результат;
КонецФункции

Функция МесяцПрописью(Месяц, Падеж = "Именительный")
	Результат = "";
	
	Если Месяц >= 1 И Месяц <= 12 Тогда
		Результат = ПолучитьСклоненияСтроки(Формат(Дата(1, Месяц, 1), "ДФ=ММММ"),, "ПД=" + Падеж)[0];	
	КонецЕсли;
		
	Возврат Результат;
КонецФункции

Функция ГодПрописью(Год, Падеж = "Именительный")	
	Результат = "";
	
	Если Год > 0 Тогда
		Результат = ПолучитьСклоненияСтрокиПоЧислу("год", Год,, "ЧС=Порядковое", "ПЧ=ЧислоПрописью; ПД=" + Падеж)[0];  
	КонецЕсли;
	
	Возврат Результат;
КонецФункции
Показать
Оставьте свое сообщение