HelpF.pro

запрос ФИО руководителя полностью, сделал на основе оригинальной функции

Код 1C v 8.2 УП
 Функция ОтветственныеЛицаОрганизации(Организация, ДатаСреза, Исполнитель = Неопределено) Экспорт

    Результат = Новый Структура("Руководитель, РуководительДолжность, ГлавныйБухгалтер, Кассир");
    
    Если Организация <> Неопределено тогда

          ЗапросПоЛицам = Новый Запрос();
        ЗапросПоЛицам.УстановитьПараметр("Организация", Организация);
        ЗапросПоЛицам.УстановитьПараметр("ДатаСреза",   ДатаСреза);
        ЗапросПоЛицам.Текст = "
        |ВЫБРАТЬ РАЗРЕШЕННЫЕ
        |    ОтветственныеЛицаОрганизацииСрезПоследних.ОтветственноеЛицо,
        |    ОтветственныеЛицаОрганизацииСрезПоследних.Должность.Наименование КАК Должность,
        |    ВЫБОР КОГДА (ФИОФизЛицСрезПоследних.ФизЛицо) ЕСТЬ NULL  ТОГДА ОтветственныеЛицаОрганизацииСрезПоследних.ФизическоеЛицо.Наименование ИНАЧЕ ФИОФизЛицСрезПоследних.Фамилия + ВЫБОР КОГДА (ФИОФизЛицСрезПоследних.Имя) <> """" ТОГДА "" "" + (ФИОФизЛицСрезПоследних.Имя) ИНАЧЕ """" КОНЕЦ + ВЫБОР КОГДА (ФИОФизЛицСрезПоследних.Отчество) <> """" ТОГДА "" "" + (ФИОФизЛицСрезПоследних.Отчество) ИНАЧЕ """" КОНЕЦ КОНЕЦ КАК ФИОПолное
        |ИЗ
        |    РегистрСведений.ОтветственныеЛицаОрганизации.СрезПоследних(&ДатаСреза, СтруктурнаяЕдиница =Организация) КАК ОтветственныеЛицаОрганизацииСрезПоследних
        |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(&ДатаСреза, ФизЛицо ССЫЛКА Справочник.ФизическиеЛица) КАК ФИОФизЛицСрезПоследних
        |        ПО ОтветственныеЛицаОрганизацииСрезПоследних.ФизическоеЛицо = ФИОФизЛицСрезПоследних.ФизЛицо";
                
        Выборка = ЗапросПоЛицам.Выполнить().Выбрать();
                
        Пока Выборка.Следующий() Цикл

              Если Выборка.ОтветственноеЛицо = Перечисления.ОтветственныеЛицаОрганизации.Руководитель Тогда
                Результат.Руководитель            = Выборка.ФИОПолное;
                Результат.РуководительДолжность   = Выборка.Должность;

              ИначеЕсли Выборка.ОтветственноеЛицо = Перечисления.ОтветственныеЛицаОрганизации.ГлавныйБухгалтер Тогда
                Результат.ГлавныйБухгалтер        = Выборка.ФИОПолное;

              ИначеЕсли Выборка.ОтветственноеЛицо = Перечисления.ОтветственныеЛицаОрганизации.Кассир Тогда
                Результат.Кассир                  = Выборка.ФИОПолное;

              КонецЕсли;

          КонецЦикла;
    КонецЕсли;

    Возврат Результат;

КонецФункции // ОтветственныеЛицаОрганизации()

Опубликовано на сайте: https://HelpF.pro
Прямая ссылка: https://HelpF.pro/faq8/view/1797.html