Имя: Пароль:
1C
1С v8
Добавить поле в динамический список
0 asder117
 
02.11.21
10:27
Имеем на борту 1с Документооборот, зха форме задач необходимо получить колонку с исполнителем. В регистрах этих данных не нашел, получить могу только из самого процесс. Форма списка строиться на базе произвольного запроса.
ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
    ВЫБОР
        КОГДА ДанныеБизнесПроцессов.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Остановлен)
            ТОГДА 0
        КОГДА ДанныеБизнесПроцессов.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Прерван)
            ТОГДА 1
        КОГДА НЕ ДанныеБизнесПроцессов.Стартован
                И ДанныеБизнесПроцессов.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Активен)
                И ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту)
                И ПроцессыДляЗапуска.ДатаОтложенногоСтарта <> ДАТАВРЕМЯ(1, 1, 1)
            ТОГДА 2
        КОГДА НЕ ДанныеБизнесПроцессов.Стартован
                И ДанныеБизнесПроцессов.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Активен)
                И ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.СтартОтменен)
                И ПроцессыДляЗапуска.ДатаОтложенногоСтарта <> ДАТАВРЕМЯ(1, 1, 1)
            ТОГДА 3
        КОГДА РезультатыВыполненияПроцессовИЗадач.Результат = ЗНАЧЕНИЕ(Перечисление.ВариантыВыполненияПроцессовИЗадач.Положительно)
            ТОГДА 7
        КОГДА РезультатыВыполненияПроцессовИЗадач.Результат = ЗНАЧЕНИЕ(Перечисление.ВариантыВыполненияПроцессовИЗадач.ПоложительноСЗамечаниями)
            ТОГДА 6
        КОГДА РезультатыВыполненияПроцессовИЗадач.Результат = ЗНАЧЕНИЕ(Перечисление.ВариантыВыполненияПроцессовИЗадач.Отрицательно)
            ТОГДА 5
        КОГДА ДанныеБизнесПроцессов.Завершен = ИСТИНА
            ТОГДА 4
        ИНАЧЕ -1
    КОНЕЦ КАК СостояниеКартинка,
    ВЫБОР
        КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.НаКонтроле)
            ТОГДА ВЫБОР
                    КОГДА КешИнформацииОбОбъектах.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
                            ИЛИ КешИнформацииОбОбъектах.СрокИсполнения >= &ТекущаяДата
                        ТОГДА 1
                    ИНАЧЕ 3
                КОНЕЦ
        КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.СнятСКонтроля)
            ТОГДА 4
        КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.НаКонтролеНесколько)
            ТОГДА ВЫБОР
                    КОГДА КешИнформацииОбОбъектах.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
                            ИЛИ КешИнформацииОбОбъектах.СрокИсполнения >= &ТекущаяДата
                        ТОГДА 5
                    КОГДА КешИнформацииОбОбъектах.СрокИсполненияОбщий = ДАТАВРЕМЯ(1, 1, 1)
                            ИЛИ КешИнформацииОбОбъектах.СрокИсполненияОбщий >= &ТекущаяДата
                        ТОГДА 8
                    ИНАЧЕ 6
                КОНЕЦ
        КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.СнятСКонтроляНесколько)
            ТОГДА 7
        КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.СмешанноНесколько)
            ТОГДА ВЫБОР
                    КОГДА КешИнформацииОбОбъектах.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
                            ИЛИ КешИнформацииОбОбъектах.СрокИсполнения >= &ТекущаяДата
                        ТОГДА 9
                    ИНАЧЕ 10
                КОНЕЦ
        ИНАЧЕ 0
    КОНЕЦ КАК СостояниеКонтроля,
    ДанныеБизнесПроцессов.БизнесПроцесс КАК Процесс,
    ДанныеБизнесПроцессов.ОсновнойПредмет,
    ВЫБОР
        КОГДА НЕ ДанныеБизнесПроцессов.Стартован
            ТОГДА 0
        КОГДА ДанныеБизнесПроцессов.Завершен
            ТОГДА РАЗНОСТЬДАТ(ДанныеБизнесПроцессов.ДатаНачала, ДанныеБизнесПроцессов.ДатаЗавершения, ДЕНЬ)
        КОГДА ДанныеБизнесПроцессов.ПометкаУдаления
            ТОГДА 0
        ИНАЧЕ РАЗНОСТЬДАТ(ДанныеБизнесПроцессов.ДатаНачала, &ТекущаяДата, ДЕНЬ)
    КОНЕЦ КАК Длительность,
    ДанныеБизнесПроцессов.НомерИтерации КАК Цикл,
    ДанныеБизнесПроцессов.СрокИсполнения,
    ВЫБОР
        КОГДА НЕ ДанныеБизнесПроцессов.Стартован
                ИЛИ ДанныеБизнесПроцессов.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
            ТОГДА 0
        КОГДА ДанныеБизнесПроцессов.Завершен
            ТОГДА РАЗНОСТЬДАТ(ДанныеБизнесПроцессов.ДатаЗавершения, ДанныеБизнесПроцессов.СрокИсполнения, ДЕНЬ)
        КОГДА ДанныеБизнесПроцессов.ПометкаУдаления
            ТОГДА 0
        ИНАЧЕ РАЗНОСТЬДАТ(&ТекущаяДата, ДанныеБизнесПроцессов.СрокИсполнения, ДЕНЬ)
    КОНЕЦ КАК Дней,
    ДанныеБизнесПроцессов.ДатаНачала,
    ДанныеБизнесПроцессов.ПометкаУдаления,
    ДанныеБизнесПроцессов.Стартован,
    ДанныеБизнесПроцессов.Завершен,
    ДанныеБизнесПроцессов.Наименование,
    ВЫБОР
        КОГДА ДанныеБизнесПроцессов.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
            ТОГДА 1
        ИНАЧЕ 0
    КОНЕЦ КАК ПорядокСортировки,
    ВЫБОР
        КОГДА ДанныеБизнесПроцессов.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиЗадачи.Низкая)
            ТОГДА 0
        КОГДА ДанныеБизнесПроцессов.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиЗадачи.Высокая)
            ТОГДА 2
        ИНАЧЕ -1
    КОНЕЦ КАК ВажностьКартинка,
    ДанныеБизнесПроцессов.Дата,
    ТИПЗНАЧЕНИЯ(ДанныеБизнесПроцессов.БизнесПроцесс) КАК ТипПроцесса
ИЗ
    РегистрСведений.ДанныеБизнесПроцессов КАК ДанныеБизнесПроцессов
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КешИнформацииОбОбъектах КАК КешИнформацииОбОбъектах
        ПО ДанныеБизнесПроцессов.БизнесПроцесс = КешИнформацииОбОбъектах.Объект
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РезультатыВыполненияПроцессовИЗадач КАК РезультатыВыполненияПроцессовИЗадач
        ПО ДанныеБизнесПроцессов.БизнесПроцесс = РезультатыВыполненияПроцессовИЗадач.Объект
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроцессыДляЗапуска КАК ПроцессыДляЗапуска
        ПО ДанныеБизнесПроцессов.БизнесПроцесс = ПроцессыДляЗапуска.БизнесПроцесс
ГДЕ
    ДанныеБизнесПроцессов.Автор = &Автор
    И ДанныеБизнесПроцессов.ВедущаяЗадача = ЗНАЧЕНИЕ(Задача.ЗадачаИсполнителя.ПустаяСсылка)
    И НЕ ДанныеБизнесПроцессов.БизнесПроцесс ССЫЛКА БизнесПроцесс.РешениеВопросовВыполненияЗадач
    И НЕ ДанныеБизнесПроцессов.БизнесПроцесс ССЫЛКА БизнесПроцесс.Ознакомление
{ГДЕ
    (&ПоказыватьТолькоАктивныеПроцессы
            И ДанныеБизнесПроцессов.Завершен = ЛОЖЬ
            И ДанныеБизнесПроцессов.Состояние <> ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Прерван)
            И ДанныеБизнесПроцессов.Состояние <> ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Остановлен)
            И ЕСТЬNULL(ПроцессыДляЗапуска.Состояние, ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.ПустаяССылка)) <> ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту)
            И ДанныеБизнесПроцессов.ПометкаУдаления = ЛОЖЬ),
    (&ТолькоПросроченные
            И ДанныеБизнесПроцессов.СрокИсполнения < &ТекущаяДата1
            И ДанныеБизнесПроцессов.СрокИсполнения <> ДАТАВРЕМЯ(1, 1, 1))}
Как можно добавить колонку в форму динамического списка чтобы потом при выводе строки в поле подставлять исполнителя.
Был вариант связать этот запрос еще и с бизнес процессом но там их много и с каждым не завязать и запрос получится на кучу строк. Спасибо заранее
1 unbred
 
02.11.21
10:33
ну добавь в запрос поле. кто мешает?
2 asder117
 
02.11.21
16:37
(1) идея хорошая рабочая но колонка не появилась
3 Fish
 
гуру
02.11.21
16:38
(2) Ну так надо ещё это поле перетащить на форму.
4 asder117
 
02.11.21
16:38
(2) все разобралдся...появилсь только числового типа а мне надо с типом справочник
5 asder117
 
02.11.21
16:48
(4) вопрос снят всем спасибо