Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 мар 2024, 13:59

Склонение должностей через компоненту (Native API)

Автор Space_minus, 01 мар 2017, 11:58

0 Пользователей и 1 гость просматривают эту тему.

Space_minus

Здравствуйте не получается адекватно просклонять должность через компоненту(Native API)
Подключение компоненты:

ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаСклоненияФИО", "Decl", ТипВнешнейКомпоненты.Native);
компонента = Новый("AddIn.Decl.CNameDecl");
РезультатСклонения = "";
Если РезультатЗапроса.СотрудникУЦПК.Физлицо.Пол = Перечисления.ПолФизическогоЛица.Мужской тогда
пол=1;
иначе
пол=2;
КонецЕсли;


обращение к компоненте:
СтроковыеФункцииКлиентСервер.Просклонять(компонента, РезультатЗапроса.ДолжностьКраткоеНаименование, 4, Пол, РезультатСклонения);
ДолжностьПадеж = РезультатСклонения;

вывод:

ОбластьМакета = Макет.ПолучитьОбласть("Абзац5");
ОбластьМакета.Параметры.Абзац5 = "          4. Контроль за выполнением данного приказа возложить на "+ДолжностьПадеж+"" "УЦПК"+ПолучитьФамилиюИО(РезультатЗапроса.СотрудникУЦПК)+"";
ОбластьМакета.Параметры.Заполнить(РезультатЗапроса);
ТабДок.Вывести(ОбластьМакета);


Вот так склоняет:

а нужно: на заведующего учебной частью

AsadRoman

Чой-то я подозреваю, что эта компонента не знает таких словей... или словов...

Space_minus

А подскажи действующий пример склонения должностей?
Пример если есть...

http://forum.infostart.ru/forum68/topic66586/
пробовал, но ошибки в коде ... не пошло

alex0402

самый действенный - это добавить РС с измерениями Должность,Падеж и реквизит - Значение (строка в соответствующем падеже) и брать из РС в отчет.
Спасибо за Сказать спасибо

LexaK

ну зачем так мучиться?
используемых должностей в вашей базе десяток, ну двадцать,
используемых падежей 3-4 вряд ли все 7
создайте таблицу где заранее все должности в заданных падежах
прим
   Им.п        Вин.п       Род.П     ...
Заведующий   Заведующего  Заведующим ...
и т.д.
а в макете печати так и укажите Параметры <ДолжностьРП>, <ДолжностьВП>,
при печати, получаете должность сотрудника (Им.п) из настроечной таблицы (регистр/справочник) 
получаете все остальные должности в разных падежах, а дальше дело техники вывести нужную должность под заданный параметр


зачем вся эта автоматизация (по склонению, тем более что она не работает у вас)
когда можно обойтись простым перебором.
если помогло нажмите: Спасибо!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск