Склонениепредставленийобъектов просклонятьфио не работает

Содержание
  1. Иванов, Иванова, Иванову… Использование подсистемы «Склонение представлений объектов»
  2. Проверка подключенности справочника к подсистеме «Склонение представлений объектов».
  3. Использование подсистемы «Склонение представлений объектов».
  4. Библиотека стандартных подсистем 1С 8.3. Склонение представлений объектов
  5. В пользовательском режиме
  6. В конфигураторе
  7. Добавление автоматического склонения для нового объекта
  8. Склонение в 1С
  9. 1. Библиотека стандартных подсистем
  10. 2. Внутренние механизмы платформы
  11. 2.1 Склонение в 1С
  12. 2.2 Склонение количественных и порядковых числительных
  13. 2.3 Представление числа в 1С
  14. 2.4 Склонение единиц измерения
  15. 2.5 Сложные словосочетания примеры
  16. Склонение представлений объектов в ЗУП 3.1 — как это работает?
  17. Что склоняется?
  18. Как просклонять имя?
  19. Как это работает?
  20. Программный вызов функции склонения объектов
  21. Несколько слов в заключение

Иванов, Иванова, Иванову… Использование подсистемы «Склонение представлений объектов»

Основы русского языка закладывали наши далекие предки: поэты и крестьяне, купцы и воины, ремесленники, дворяне и прочая интеллигенция. Одна беда – программистов среди них было маловато, представителей, так сказать, информационного фронта.

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

Сравните два фрагмента печатных форм расходных кассовых ордеров на картинках ниже.

На первой деньги выдаются юридическому лицу.

А на второй – физическому лицу:

Из этих форм понятно, что 50 000 рублей досталось ЗАО «Торговый дом Комплексный», а счастливый обладатель 5 000 рублей – Ковальков Николай Федорович.

Но как-то не по-русски достались эти деньги нашему физическому лицу. Вот если бы в документе было написано «Выдать Ковалькову Николаю Федоровичу&ra quo;, то и Пушкин с Горьким ничего против такого документа не имели бы.

Знающий пользователь 1С наверняка уже сообразил, в чем дело. Да, при оформлении документа второпях не обратили внимания на то, как заполнен реквизит «Выдано».

А ведь именно для возможности указания получателя в дательном падеже хитрые программисты и сделали этот явно избыточный реквизит в документе. Логика их была проста: чтобы не мучиться с автоматическим склонением в программе – нужно переложить ответственность на пользователя. Почему – мучиться? А вспомните: Ковалькову, но Ковальковой; Белыху, но Татьяне Белых; и апофеоз: если именительный падеж «Валериу Сикнану», то — каким будет дательный?

Вот и стонут тысячи не очерствевших душою бухгалтеров, оформляя документы кассовые, да и прочие договора с доверенностями. Звонят в особо сложных случаях (Ойра-Ойра Роман Петрович) по коллегам, да знакомым филологам. Спорят, ссорятся, поминая Ожегова.

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

А о секундах, как известно, свысока думать не стоит. Тем более что в Библиотеке Стандартных Подсистем, на основе которой строятся все современные типовые решения, появилась очень интересная подсистема «Склонение представлений объектов».

Попробуем ее использовать.

А что для этого надо?

Во-первых, убедиться, что наш справочник «Физические лица» подключен к подсистеме.

Во-вторых, заставить программу ее использовать в нужный нам момент.

Проверка подключенности справочника к подсистеме «Склонение представлений объектов».

Зайдите в пользовательском режиме в форму любого элемента справочника «Физические лица».

Обратите внимание – возле реквизита ФИО (а на самом деле – это Наименование элемента) есть гиперссылка «Склонение»:

Нажмем ее – открывается форма автоматического склонения нашего ФИО по падежам.

Открывается эта форма для того, что бы в сложной ситуации мы могли подправить программу и потом сохранить правильный вариант. В большинстве же случаев варианты, формируемые «на лету» вполне соответствуют правилам литературного русского языка (все-таки Ойре-Ойре Роману Петровичу).

Читайте также:  Не работают системные значки windows 10

Кстати, подсистема устроена так, что даже если бы мы не вошли в эту форму – склонения по падежам системой для наименования уже были бы произведены. Достаточно того, что справочник «Физические лица» к подсистеме подключен.

Мы приходили сюда – просто, чтобы в этом убедиться.

Использование подсистемы «Склонение представлений объектов».

Вершиной и целью существования подсистемы являются две функции общего модуля «СклонениеПредставленийОбъектов». Они расположены в самом верху общего модуля и называются «ПросклонятьФИО» и «ПросклонятьПредставление».

Вчитавшись в описание функций в самом общем модуле – легко понять, как именно к ним обращаться.

Ну и в качестве примера использования подсистемы – давайте все же решим задачу, с которой начиналась наша статья.

Сам процесс решения подробно демонстрируется в следующем ролике:

Источник

Библиотека стандартных подсистем 1С 8.3. Склонение представлений объектов

Рассмотрена подсистема Склонение представлений объектов из библиотеки стандартных подсистем (БСП) 3.1.3.

Примеры приведены на конфигурации Зарплата и управление персоналом 3.1.17.

В пользовательском режиме

Из карточки объекта склонения, например физического лица, по кнопке Склонения можно открыть форму с результатами склонения:

При необходимости можно изменить результат склонения вручную. Результат склонения сохраняется в регистре сведений Склонения представлений объектов.

Склонение выполняется с помощью метода платформы ПолучитьСклоненияСтроки (в старых версиях выполнялось с помощью внешней компоненты). Если результат склонения не устраивает, то в разделе Администрирование -> Интернет-поддержка и сервисы -> Склонения представлений объектов можно включить использование сервиса Морфер:

В конфигураторе

Добавление автоматического склонения для нового объекта

На примере справочника Контрагенты:

  1. В определяемый тип ОбъектСклонения добавить тип справочник Контрагенты
  1. В форме элемента в обработчик ПриСозданииНаСервере добавить код:

Источник

Склонение в 1С

1. Библиотека стандартных подсистем

В состав актуальных типовых конфигураций входит подсистема «Склонение представлений объектов» Библиотеки стандартных подсистем в 1С (БСП), основное назначение: склонение ФИО в 1С, должностей и прочих наименований (например, номенклатуры).

Состав объектов подсистемы представлен на рисунке:

Рисунок 1. Состав объектов подсистемы (БСП v3.1)

Рассмотрим подробнее, как устроен данный механизм.

Объекты метаданных, для которых доступен механизм склонения, перечислены в свойстве Тип определяемого типа ОбъектСклонения. В демонстрационной конфигурации БСП 8.3 определены следующие типы:

Рисунок 2. Типы объектов склонения

1) Во всех формах элементов, для которых встраивается склонение, в обработчике ПриСозданииНаСервере добавлен фрагмент кода:

Рисунок 3. Фрагмент кода в обработчике ПриСозданииНаСервере

В параметре Представление указывается реквизит, который должен склоняться.

2) Во всех формах элементов, для которых встраивается склонение, в обработчике ПриЗаписиНаСервере добавлен фрагмент кода:

Рисунок 4. Фрагмент кода в обработчике ПриЗаписиНаСервере

В параметре Представление указывается реквизит, который должен склоняться.

В параметре ПараметрыСклонения необязательно передается структура дополнительных параметров склонения. Для конструирования структуры используется функция ПараметрыСклонения общего модуля СклонениеПредставленийОбъектовКлиентСервер.

3) Во всех формах элементов, для которых встраивается склонение, рядом с реквизитом, который необходимо просклонять, добавлена команда в виде гиперссылки с названием Склонения. Обработчик команды:

Рисунок 5. Фрагмент кода команды Склонения

В параметре Представление указывается реквизит, который должен склоняться.

В параметре ПараметрыСклонения не обязательно передается структура дополнительных параметров склонения. Для конструирования структуры используется функция ПараметрыСклонения общего модуля СклонениеПредставленийОбъектовКлиентСервер.

4) Во всех формах элементов, для которых встраивается склонение, в обработчике ПриИзменении реквизита, который должен склоняться, добавлен фрагмент кода:

Рисунок 6. Фрагмент кода в обработчике ПриИзменении

В параметре Представление указывается реквизит, который должен склоняться.

В параметре ПараметрыСклонения не обязательно передается структура дополнительных параметров склонения. Для конструирования структуры используется функция ПараметрыСклонения общего модуля СклонениеПредставленийОбъектовКлиентСервер.

Результат склонения записывается в регистр сведений «Склонения представлений объектов». Состав регистра представлен на рисунке:

Рисунок 7. Состав регистра «Склонения представлений объектов»

Измерение ХешПредставления содержит строковый результат вычисления переданного значения Представление по алгоритму MD5, а измерение Объект – значение определяемого типа ОбъектСклонения.

Читайте также:  Как настроить роутер мтс без компьютера

При обращении к методу склонения в 1С первым делом проверяется наличие результата в регистре сведений «Склонения представлений объектов». А склонение выполняется только при отсутствии записи или при вызове специального метода повторного заполнения.
Само же склонение в 1С 8.3 выполняется одним из способов, указанным в настройках подсистемы: через сторонний сервис «Морфер» или внутренний механизм платформы. Метод ПолучитьСклоненияСтроки() — доступен, начиная с версии платформы 8.3.13.

Настройка сервиса «Морфер» осуществляется в разделе «Администрирование – Интернет-поддержка и сервисы – Склонения представлений объектов»:

Рисунок 8. Настройка сервиса «Морфер»

При использовании сервиса рекомендуется выполнить регистрацию и в параметрах указать Токен, генерируемый в личном кабинете. Но стоит иметь в виду, что бесплатный вариант использования сервиса ограничен максимум 100 запросами в сутки.

Внутренний механизм платформы также выполняет склонение в 1С достаточно хорошо и может быть достойной альтернативой платному сервису.

2. Внутренние механизмы платформы

Начиная с версии платформы 8.3.13 был реализован метод ПолучитьСклоненияСтроки().
Указанный метод позволяет правильно «склонять» несклоняемые фамилии. Также он отлично справляется со сложными и иностранными именами. В особо сложных случаях есть возможность дополнительно указать, какой род следует использовать. Метод без ошибок обрабатывает следующие грамматические правила:

· склонение мужских имен, оканчивающихся на гласную;

· склонение женские имен, оканчивающихся на некоторые гласные;

· склонение только второй компоненты в двойных именах;

· склонение фамилий, оканчивающихся на согласный.

Начиная с версии платформы 8.3.14.1565 был добавлен новый метод ПолучитьСклоненияСтрокиПоЧислу(), позволяющий выводить согласованные с числительными и имеющие определенную падежную форму словосочетания. Рассмотрим основные варианты использования данного метода.

2.1 Склонение в 1С

В самом простом случае используется только возможность склонения, а числовое значение выводится одними цифрами:

2.2 Склонение количественных и порядковых числительных

Для «придания красоты» итоговому словосочетанию можно в явном виде указать разряд числительного, используемого в предложении: порядковое или количественное. В этом случае платформа самостоятельно добавит к порядковым числительным буквенное падежное окончание:

2.3 Представление числа в 1С

Поддерживается возможность самостоятельно задать то, как в итоговом словосочетании будет представлено число: как число, как число прописью или как число с окончанием. Единственное о чем следует не забывать: окончания не используются с количественными числительными и в некоторых других случаях:

2.4 Склонение единиц измерения

Нередко требуется просклонять совместно с цифровым значением также и указанные единицы измерения. Причем для дробных значений целая и дробная части могут измеряться в разных единицах. В подобной ситуации есть возможность указать как сами единицы, так и используемое количество разрядов дробной части:

2.5 Сложные словосочетания примеры

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

Источник

Склонение представлений объектов в ЗУП 3.1 — как это работает?




Для вывода на печать многочисленных печатных форм в ЗУП 3.1 часто бывает необходимо использовать различные падежи имен существительных – фамилий, имен, отчеств, должностей, подразделений. Я расскажу о том, как склоняются представления объектов в ЗУП 3.1.

Что склоняется?

Есть 2 типа объектов, наименования которых склоняются различными механизмами в ЗУП 3.1:

  1. ФИО физических лиц;
  2. остальные объекты.

ФИО физических лиц склоняются самой программой. В ЗУП 3.1 существует собственный алгоритм, который превращает фамилии, имена и отчества из именительного падежа в любой другой падеж русского языка. При этом используется пол физического лица (мужской или женский).

Все остальные имена существительные (в частности, наименования должностей и подразделений) склоняются с помощью внешнего сервиса «Морфер».

Подключение сервиса находится в разделе «Администрирование – Интернет-поддержка и сервисы – Склонения представлений объектов».

Рис. 1. Подключение сервиса «Морфер»

Анонимного входа на сервис вполне достаточно для работы.

Читайте также:  Как отремонтировать сиденье автомобиля ваз 2121

Как просклонять имя?

В карточке нового сотрудника после ввода фамилии, имени и отчества нажмите гиперссылку «Склонения» (см. рис. 2).

Рис. 2. Склонение фамилий, имен и отчеств сотрудников

Откроется окно с уже заполненными значениями по всем падежам. Останется только записать их, нажав кнопку «ОК».

ФИО физических лиц в падежных формах хранится в регистре сведений «Склонения представлений объектов».

Как это работает?

Работает это следующим образом: если склонения ФИО был сохранены в регистре, то при любом обращении к функции склонения программа будет читать данные из регистра. Это дает максимальную скорость работы, кроме того, в регистре можно отредактировать значения – бывают сложные случаи, ФИО иностранцев, например, которые могут иметь отличия от предложенных программой вариантов.

Если в регистре нет записи по искомому ФИО, то программа просклоняет его «на лету».

Рис. 3. Регистр сведений «Склонения представлений объектов»

Посмотрим на регистр сведений изнутри – из Конфигуратора.

Рис. 4. Регистр сведений «Склонения представлений объектов» — тип измерения «Объект»

Измерение «Объект» имеет тип «ОбъектСклонения» – это определяемый тип (см. рис. 5), в состав которого входят:

  • Физические лица
  • Должности
  • Подразделения
  • Позиции штатного расписания

Рис. 5. Состав определяемого типа «ОбъектСклонения»

Именно эти объекты конфигурации могут склоняться. В карточке каждого из них есть гиперссылка «Склонения», по нажатию на которую открывается форма со всеми падежами.

На рис. 6 видно, как просклонялось наименование должности «Ведущий инженер» при включенном сервисе «Морфер».

Рис. 6. Склонения элемента справочника «Должности»

Если же выключить сервис «Морфер» и перезаполнить склонения (кнопка со стрелкой вниз), а затем записать полученное состояние в регистр, то потом, даже при включенном сервисе «Морфер», в документы будут подставляться значения без склонения. Эта проблема может быть решена повторным заполнением склонений объекта при включенном сервисе «Морфер» или же удалением записи по этому объекту в регистре сведений.

Программный вызов функции склонения объектов

Функции склонения представлений объектов находятся в общем модуле «СклонениеПредставленийОбъектов».

    Функция ПросклонятьФИО(ФИО, Падеж, Объект = Неопределено, Пол = Неопределено) Экспорт

Описание:
– Склоняет ФИО.
– Только для работы на ОС Windows..
.
Параметры:
ФИО — Строка — Строка, в которой содержится ФИО для склонения.
Падеж — Число — падеж, в который необходимо просклонять представление объекта.
1 — Именительный.
2 — Родительный.
3 — Дательный.
4 — Винительный.
5 — Творительный.
6 — Предложный.
Объект — ОбъектСклонения — Ссылка на объект, реквизит которого склоняется.
Пол — Число — Число — пол физического лица,
1 — мужской,
2 — женский.

Возвращаемое значение:
Строка — Результат склонения ФИО в падеже.

Пример вызова функции склонения ФИО сотрудника

ФИОПолноеРодПадеж = СклонениеПредставленийОбъектов.ПросклонятьФИО(ФИОПолное, 2, Сотрудник, ПолСотрудника);

Функция ПросклонятьПредставление(Представление, Падеж, Объект = Неопределено) Экспорт

Описание:
– Склоняет представление объекта.
– Только для работы на ОС Windows.

Параметры:
Представление — Строка — Строка, в которой содержится ФИО для склонения.
Падеж — Число — падеж, в который необходимо просклонять представление объекта.
1 — Именительный.
2 — Родительный.
3 — Дательный.
4 — Винительный.
5 — Творительный.
6 — Предложный.
Объект — ОбъектСклонения — Ссылка на объект, реквизит которого склоняется.

Строка — Результат склонения представления объекта в падеже.

Обе функции после успешного выполнения и при заполненном параметре «Объект» записывают полученное значение в регистр сведений «СклоненияПредставленийОбъектов».

Несколько слов в заключение

Склонение представлений объектов – это часть БСП. Данный механизм встроен также и в другие типовые конфигурации, построенные на основе БСП – БП, КА, ERP и т.д.

Картинки и примеры взяты из демо-базы конфигурации «Зарплата и управление персоналом», редакция 3.1 (3.1.7.87). Платформа: 1С:Предприятие 8.3 (8.3.10.2699)

Источник

Оцените статью