Склонения в конфигурациях 1С

Материал из system.c
Перейти к навигации Перейти к поиску

Для склонения фамилий, должностей и прочего в конфигурациях 1С можно использовать функцию

 СклонениеПредставленийОбъектов.ДанныеСклонения(
     Представление,
     ЭтоФИО,
     Пол,
     ПоказыватьСообщения)

, где: Представление - собственно склоняемый объект; ЭтоФИО - булево значение Истина для фамилий и Ложь для всего остального; Пол - пол, если Представление фамилия (Внимание! Пол принимается в виде числа: 1 - мужской, 2 - женский); ПоказыватьСообщения - выводить сообщения внешней компоненты склонения.
Возвращает структуру со следующими полями:

 ИменительныйПадеж
 РодительныйПадеж
 ДательныйПадеж
 ВинительныйПадеж
 ТворительныйПадеж
 ПредложныйПадеж

В случае склонения словосочетания не являющегося ФИО (например должность "ГенеральныйДиректор), для корректной обработки требуется склонять слова по отдельности. Можно использовать следующий код:

   СтрокаСПС = СтрЗаменить(СтрокаДолжность, " ", Символы.ПС);
   СтрокаРезультат = "";
   Для _и = 1 По СтрЧислоСтрок(СтрокаСПС) Цикл
           СтруктураСклонения = СклонениеПредставленийОбъектов.ДанныеСклонения(СтрПолучитьСтроку(СтрокаСПС, _и),
           Ложь,
           Неопределено,
           Ложь);
       СтрокаРезультат = СтрокаРезультат + СтруктураСклонения.РодительныйПадеж + " ";
   КонецЦикла;