Склонения в конфигурациях 1С: различия между версиями
Перейти к навигации
Перейти к поиску
Danamond (обсуждение | вклад) |
Danamond (обсуждение | вклад) |
||
Строка 14: | Строка 14: | ||
ПредложныйПадеж | ПредложныйПадеж | ||
В случае склонения словосочетания не являющегося ФИО (например должность "ГенеральныйДиректор), для корректной обработки требуется склонять слова по отдельности. Можно использовать следующий код: | В случае склонения словосочетания не являющегося ФИО (например должность "ГенеральныйДиректор), для корректной обработки требуется склонять слова по отдельности. Можно использовать следующий код: | ||
− | + | СтрокаСПС = СтрЗаменить(СтрокаДолжность, " ", Символы.ПС); | |
− | + | СтрокаРезультат = ""; | |
− | Для _и = 1 По СтрЧислоСтрок( | + | Для _и = 1 По СтрЧислоСтрок(СтрокаСПС) Цикл |
− | СтруктураСклонения = СклонениеПредставленийОбъектов.ДанныеСклонения(СтрПолучитьСтроку( | + | СтруктураСклонения = СклонениеПредставленийОбъектов.ДанныеСклонения(СтрПолучитьСтроку(СтрокаСПС, _и), |
Ложь, | Ложь, | ||
Неопределено, | Неопределено, | ||
Ложь); | Ложь); | ||
− | + | СтрокаРезультат = СтрокаРезультат + СтруктураСклонения.РодительныйПадеж + " "; | |
КонецЦикла; | КонецЦикла; |
Текущая версия на 12:14, 9 октября 2019
Для склонения фамилий, должностей и прочего в конфигурациях 1С можно использовать функцию
СклонениеПредставленийОбъектов.ДанныеСклонения( Представление, ЭтоФИО, Пол, ПоказыватьСообщения)
, где: Представление - собственно склоняемый объект; ЭтоФИО - булево значение Истина для фамилий и Ложь для всего остального; Пол - пол, если Представление фамилия (Внимание! Пол принимается в виде числа: 1 - мужской, 2 - женский); ПоказыватьСообщения - выводить сообщения внешней компоненты склонения.
Возвращает структуру со следующими полями:
ИменительныйПадеж РодительныйПадеж ДательныйПадеж ВинительныйПадеж ТворительныйПадеж ПредложныйПадеж
В случае склонения словосочетания не являющегося ФИО (например должность "ГенеральныйДиректор), для корректной обработки требуется склонять слова по отдельности. Можно использовать следующий код:
СтрокаСПС = СтрЗаменить(СтрокаДолжность, " ", Символы.ПС); СтрокаРезультат = ""; Для _и = 1 По СтрЧислоСтрок(СтрокаСПС) Цикл СтруктураСклонения = СклонениеПредставленийОбъектов.ДанныеСклонения(СтрПолучитьСтроку(СтрокаСПС, _и), Ложь, Неопределено, Ложь); СтрокаРезультат = СтрокаРезультат + СтруктураСклонения.РодительныйПадеж + " "; КонецЦикла;