Как программно просклонять в 1с документообороте
Внешний компонент "Склонение ФИО"
Внешний компонент предназначен для склонения сочетаний фамилий, имен и отчеств на русском языке. Компонент может быть использован в конфигурациях "1С:Предприятия 7.7" и " 1С:Предприятия 8".
Компонент предоставляет прикладному разработчику метод Просклонять ( Decline ) , который производит склонение ФИО, представленного в виде строки, в требуемом падеже.
Описание метода "Просклонять"
Просклонять(ФИО, Падеж, Пол)
Параметры
ФИО (обязательный), тип - строка .
Параметр должен содержать фамилию , имя и отчество в именительном падеже единственного числа. Строка должна состоять только из букв русского алфавита, пробелов и дефисов. Фамилия, имя и отчество должны разделяться пробелами. Внутри фамилии, имени и отчества пробелов быть не должно.
Допустимы следующие сочетания фамилии, имени и отчества: ФИО, ИОФ, ИО, ИФ, ФИ, Ф, И, О. Двойные и тройные имена и фамилии должны писаться через дефис, например: Попов-Левин , Анна-Роза-Мария . Имена и отчества должны быть полными.
Падеж (обязательный), тип - число.
Падеж, в который необходимо поставить ФИО. Падеж задается числом и может принимать следующие значения:
Значение | Падеж |
---|---|
1 | Именительный |
2 | Родительный |
3 | Дательный |
4 | Винительный |
5 | Творительный |
6 | Предложный |
Пол ( необязательный), тип - число.
Возможные значения : 0 – авто, 1 - мужской, 2 – женский.
Данный параметр предназначен для разрешения возможных неоднозначностей, например, имя Карен Акопян может принадлежать и мужчине, и женщине и в зависимости от этого склоняться или не склоняться. В остальных случаях рекомендуется опускать этот параметр или использовать значение 0 ("авто"), т. к. неправильное указание пола может повлиять на правильность склонения.
Пример использования внешнего компонента в среде "1С:Предприятия 8.0"
Приведенный ниже фрагмент кода на встроенном языке "1С:Предприятия 8.0" загружает компонент и, используя метод компонента Просклонять , получает форму родительного падежа для ФИО "Иванов Иван Иванович".
Функции склонения представлений объектов находятся в общем модуле «СклонениеПредставленийОбъектов».
Функция ПросклонятьПредставление(Представление, Падеж, Объект = Неопределено) Экспорт
Описание:
– Склоняет представление объекта.
– Только для работы на ОС Windows.
Параметры:
Представление - Строка - Строка, в которой содержится ФИО для склонения.
Падеж - Число - падеж, в который необходимо просклонять представление объекта.
1 - Именительный.
2 - Родительный.
3 - Дательный.
4 - Винительный.
5 - Творительный.
6 - Предложный.
Объект - ОбъектСклонения - Ссылка на объект, реквизит которого склоняется.
Строка - Результат склонения представления объекта в падеже.
(2) Пишу:
СклонениеПредставленийОбъектов.ПросклонятьПредставление(Строка(Должность.Наименование), 2, Должность)
Должность - выборка из справочника "Должности"
Выходит должность в именительном падеже (изменение цифры, т.е. падежа не приносит ни какого результата - всегда в именительном).
(4) По этой статье Морфер подключил . короткие должности типа "Программист", "Уборщица" и т.д. склоняет нормально, но длинные должности типа "Начальник отдела прикладного программирования", "Ведущий специалист" уже не склоняет и внизу окошка со всеми падежами пишет, что сервис "Морфер" не доступен. (5) В случае, если мне требуется просклонять должность из нескольких слов, то я склоняю каждое слово, разбивая должность стандартной функцией РазложитьСтрокуВМассивПодстрок(), или если ты очень "крут", то можно просто СтрРазделить(Должность, " "); =) (4) запись в регистре убивал, но после перепроведения должности - запись опять появляется в именительном падеже во всех падежах.(6) Перепроведения? Это же справочник.
В регистр записывается то же, что в окошке с падежами.
(8)То есть можно просклонять должность вручную, это запишется в регистр и будет использоваться дальше во всех печатных формах. (9) Это можно, но этих должностей уже три десятка, некоторые из семи-восьми слов. Вроде как этот Морфер платный, т.е. ФИО он нормально склоняет, а должности (с длинным названием) уже не склоняет, пишет "Ошибка при вызове сервиса склонения. Обратитесь к администратору. Техническая информация . " Видимо, есть ограничения у этого сервиса. Там же есть авторизованный доступ еще - но тут я не могу ничего подсказать. Странно, что "СклонениеПредставленийОбъектов.ПросклонятьПредставление(Строка(Должность.Наименование), 2, Должность)" не отработало, попробуй переделать на что то типо такого ДолжностьНаименование = Должность.Наименование; СклонениеПредставленийОбъектов.ПросклонятьПредставление(ДолжностьНаименование, 2, Должность);Как вариант - установить платформу 8.3.13.1513 и воспользоваться новой функцией по работе со строками "ПолучитьСклоненияСтроки".
Если есть доступ к сайту с обновлениями, можно ознакомиться в списке изменений к платформе. Порой там много интересных новшеств можно найти. finservice; Spacer; Slypower; Pete; ApTeM_26_; Aspire1C; ivangrant; vlast; MikStyle; pyrkin_vanya; DmvKab; Vida; mea1c; config; + 14 – Ответить Мы пользуемся библиотекой Padeg.dll. Склоняет сносно. Неверно только двойные должности.. типа "заместитель начальника управления - начальник отдела". Чего так сложно , то ? Сейчас склонение должностей в ЗУП 3.1 хранится прямо в базе "Регистр сведений. Склонения представлений объектов" EvgeTrofi; mart-artur; kaps22; romulanin; user705522_constantin_h; olegmedvedev; + 6 – Ответить
тоже всегда пользуюсь этой функцией. типовые не использовал. эта функция пока у маеня еще ни разу не вывела ошибочных результатов ни в ФИО, ни в должности.
Настройка и доработка 1С:Документооборот для борьбы с ошибками. Гарантия на все результаты работ.
Оперативные консультации по 1С:Документооборот без предоплаты. Первая консультация бесплатно.
Типовой функционал, встроенный в прикладные решения 1С
Идеально подходит для средних, крупных компаний и холдингов со сложной организационной структурой и сложным документооборотом.
В офисной рутине сотрудники часто имеют дело с формированием каких-либо однотипных, повторяющихся документов, которые они зачастую просто копируют и чуть-чуть редактируют по своему усмотрению. Создание шаблона в 1С Документооборот позволяет существенно сократить время, регулярно затрачиваемое пользователем на создание и подготовку печатных форм типовых документов, при этом установив корпоративные форматы документов, не позволяя обычному пользователю вносить изменения в основной текст.
В формируемый пользователем файл документа данные подставляются автоматически из настроенной карточки документа. Помимо этого, работа с шаблонами позволяет ускорить согласование таких документов по сокращенной схеме обработки.
Чтобы программа имела возможность работать с автозаполняемыми шаблонами, нужна соответствующая настройка шаблонов. Перейдем по пути «Настройка и администрирование-Настройка программы-Работа с файлами».
Для возможности работы с автозаполнением шаблонов документов должна быть включена функция «Использовать автозаполнение шаблонов файлов».
Подготовить шаблон документов в 1С
Далее перейдем к созданию файла шаблона. Для этого нам нужен пустой файл документа MS Word, который в дальнейшем мы закрепим в настройках. Перейдем в раздел «Документы и файлы-Файлы».
В открывшемся окне, выделив папку «Шаблоны файлов», загрузим нашу новую заготовку для шаблона по кнопке «Создать файл». В диалоговом окне выберем команду «Загрузить с диска».
В открывшемся окне выберем заранее подготовленный пустой файл документа MS Word. Для примера назовем его «Пример шаблона договора». В дальнейшем в нем будет разработан шаблон документа для заполнения.
Сохраняем по нажатию «Записать и закрыть».
Мы видим наш шаблон файла в списке.
Чтобы открыть карточку нашего шаблона, нужно щелкнуть на нем правой кнопкой мышки и выбрать команду «Открыть карточку».
Создаем шаблоны в 1С Документооборот
Далее, для примера, создадим новый вид документа, который будет заполняться из шаблона. Откроем раздел «Нормативно-справочная информация» - «Виды документов».
С помощью кнопки «Создать» создадим новый вид документа.
Назовем его «Пример шаблона договора» и в настройках установим галочки «Использовать срок исполнения», «Является договором». При необходимости документ можно включить в какую-либо группу, задать индекс нумератора (префикс или суффикс документа) и установить другие настройки. Если каких-либо реквизитов не хватает, их можно задать, перейдя по гиперссылке «Набор дополнительных свойств документов данного вида».
В открывшемся окне мы можем задать дополнительные реквизиты по кнопке «Добавить».
При создании нового реквизита указывается его наименование и задается тип значения из предложенного списка. Если тип значения задан как «Дополнительное значение», то их список можно задать на закладке «Значения».
На закладке «Нумерация» задается порядок нумерации документа.
Перейдем на закладку «Шаблон документа», дополнительная закладка «Настройка». Здесь можно:
- Запретить редактировать реквизиты;
- Запретить редактировать файлы;
- Запретить удалять присоединенные файлы.
Здесь же можно ограничить круг пользователей, для которых будет доступен шаблон.
На закладке «Реквизиты документа» можно заполнить значения по умолчанию, которые будут заполнены при сохранении документа.
На закладке «Файл» мы добавляем файл шаблона. Нажав гиперссылку, можно выполнить настройку заполнения шаблона, выбрав реквизиты для заполнения текстовых полей в документе.
В открывшемся окне отметим галочками реквизиты и их количество. В шаблоне мы можем эти реквизиты вставлять в нужные места текста (используя команды «Копировать», «Вставить»).
Все указанные реквизиты будут перенесены в наш пустой документ. Далее подготовим текст документа и вставим их в текст в нужные места.
Настройка и доработка 1С:Документооборот для борьбы с ошибками. Гарантия на все результаты работ.
Оперативные консультации по 1С:Документооборот без предоплаты. Первая консультация бесплатно.
Типовой функционал, встроенный в прикладные решения 1С
Для поиска и упорядочивания документов, как правило, используется нумерация. Номер в документах может быть достаточно сложным и состоять из нескольких элементов, поэтому давайте разберемся, как правильно настраивается автоматическая нумерация документов в системе 1С:Документооборот.
Для настройки нумерации в разделе «Нормативно-справочная информация» переходим в меню «Нумераторы».
В реестре нумераторов отображаются все нумераторы, внесенные в систему.
В реестре желтыми точками отмечены предопределенные нумераторы. Их можно изменять, но нельзя удалить.
Нумератор в 1С Документооборот представляет собой конструктор, где можно собрать любой необходимый нумератор из предустановленных элементов. Сложность и состав при этом может быть совершенно произвольный, а ограничен только длиной поля «Номер в документах», то есть тридцатью символами. В нумераторе можно использовать любые печатные символы, среди которых наиболее используемые – дефис и косая черта.
Внизу в карточке для более точного составления нумератора можно увидеть пример того, что в результате получится в номере. В качестве элементов нумератора могут быть применены аналитики, расположенные в правой части окна настройки.
Давайте разберемся, что каждый из них значит:
- Номер – номер по порядку в пределах периода нумератора, обязательный элемент;
- День месяца – текущее число месяца, 2 знака;
- Номер месяца – номер текущего месяца, 2 знака;
- Номер квартала – номер текущего квартала, 2 знака;
- Год (2 знака) – текущий год, последние два знака, например, текущий год – 19;
- Год (4 знака) – текущий год, например, 2019;
- Индекс вида документа – десятизначный строковый индекс вида документа, который нумеруется данным нумератором. Указывается в карточке Вида документа.
- Индекс подразделения – десятизначный строковый индекс подразделения, указанного в реквизите «Подразделение документа», которому будет присваиваться номер по правилам этого нумератора. Автоматически при создании документа в этот реквизит проставляется подразделение автора документа. Указывается в карточке подразделения.
- Индекс контрагента – десятизначный строковый индекс контрагента, будет подставляться, если в виде документа установлен признак учета по контрагентам. Указывается в карточке контрагент.
- Индекс организации – десятизначный строковый индекс организации, которой принадлежит документ. Указывается в карточке организации.
- Индекс вопроса деятельности – десятизначный строковый индекс вопроса деятельности, указанного в документе. Будет подставляться, если в настройке системы установлен признак использования вопросов деятельности. Указывается в карточке вопроса деятельности.
- Индекс номенклатуры дел – десятизначный строковый индекс заголовка номенклатуры дел, присвоенного документу, будет подставляться, если в настройке системы установлен признак использования номенклатуры дел. Указывается в карточке заголовка дела.
- Индекс проекта – десятизначный строковый индекс проекта, указанного в одноименном реквизите документа, будет подставляться, если в настройке системы установлен признак «Вести учет по проектам». Указывается в карточке проекта.
- Номер связанного документа – номер документа, указанного на закладке «Связи». При добавлении этого элемента в нумератор система попросит указать тип связи, которая будет учитываться в нумераторе.
- Индекс ответственного – десятизначный строковый индекс ответственного за документ, указанного в одноименном реквизите документа. Указывается в карточке пользователя.
Обратите внимание, все вышеперечисленные индексы – индекс вида документа, индекс подразделения, индекс контрагента, индекс организации, индекс вопроса деятельности, индекс номенклатуры дел, индекс проекта, индекс ответственного, – изначально в карточках соответствующих объектов отсутствуют. Они становятся видимыми при добавлении того или иного индекса в какой-либо нумератор.
Далее в нумераторе необходимо настроить периодичность – период, по окончании которого элемент «Номер» будет начинаться опять с 1. Например, установив период в год, можно быть уверенным, что с 1 января каждого года счетчик будет начинаться с начала – с единицы.
Если настроить непериодический нумератор, то счетчик «Номер» обнуляться не будет. На следующей закладке настраиваются документы, для которых будет действовать данный нумератор.
Здесь же можно конкретно указать, для каких видов документов будет действовать нумератор, для каких подразделений, контрагентов, проектов или вопросов деятельности. По этим объектам в нумераторе используются индексы. Также эту настройку можно выполнить из карточки каждого объекта по ссылке «Настройка нумерации».
На последней закладке настройки нумератора устанавливаются разрезы независимой нумерации – организация, связанный документ, подразделение, проект, вопрос деятельности или вид документа.
Если установить данный признак, по этому разрезу будет вестись независимый счетчик «Номер». Например, если установить независимую нумерацию по связанному документу для Дополнительных соглашений, то их нумерация будет вестись независимо по каждому договору, с которым установлена соответствующая связь.
Нумератор – очень важный и крайне полезный механизм системы электронного документооборота. 1С:Документооборот, предоставляет пользователям широкие возможности по настройке, что позволяет максимально эффективно использовать эту систему для управления документами в организациях любого масштаба.
Читайте также: