Имя: Пароль:
1C
1С v8
Вывести бизнес-процесс в определенной точке маршрута
, ,
0 shadow1337
 
25.10.19
16:13
Я делаю запрос, который должен вывести все бизнес-процессы, которые находятся в определенной точке маршрута.

ГДЕ
ПроверкаДоговоров.ТочкаМаршрута = ЗНАЧЕНИЕ(БизнесПроцесс.УтверждениеДоговоров.ТочкаМаршрута.ПроверкаВК)

Или в СКД:
http://ipic.su/img/img7/fs/Snimok2.1572009170.png

Почему-то такое условия не приносит результата, просто пусто в итоге. Подозреваю, что ошибка в синтаксисе. В чем проблема?
1 Михаил Козлов
 
25.10.19
16:14
Просто запросом не пробовали проверить?
2 shadow1337
 
25.10.19
16:19
(1) Как это делается?
3 Михаил Козлов
 
25.10.19
16:24
Запрос в консоли запросов.
ПроверкаДоговоров - что за таблица?
4 shadow1337
 
25.10.19
16:32
(3) Нет, простите, не указал
УтверждениеДоговоров - это бизнес-процесс
ПроверкаДоговоров - задача этого бизнес-процесса
5 Михаил Козлов
 
25.10.19
16:47
В запросе:
ВЫБРАТЬ
    ЗадачаИсполнителя.БизнесПроцесс КАК БизнесПроцесс,
    ЗадачаИсполнителя.ТочкаМаршрута КАК ТочкаМаршрута,
    ЗадачаИсполнителя.Ссылка КАК Ссылка
ИЗ Задача.ЗадачаИсполнителя КАК ЗадачаИсполнителя
ГДЕ ЗадачаИсполнителя.ТочкаМаршрута = ЗНАЧЕНИЕ(БизнесПроцесс.Задание.Точки.Проверить)
работает.
6 shadow1337
 
25.10.19
17:07
Вроде сделал по такому же принципу, но пишет ошибку. Ошибся где-то? Проверьте, пожалуйста

ВЫБРАТЬ
    ПроверкаДоговоров.УтверждениеДоговоров КАК БизнесПроцесс,
    ПроверкаДоговоров.ПроверкаВК КАК ТочкаМаршрута,
    ПроверкаДоговоров.Ссылка КАК Ссылка
    ИЗ Задача.ПроверкаДоговоров КАК ЗадачаИсполнителя
ГДЕ ЗадачаИсполнителя.ТочкаМаршрута = ЗНАЧЕНИЕ(БизнесПроцесс.УтверждениеДоговоров.Точки.Проверить)
7 shadow1337
 
25.10.19
17:08
(5) http://ipic.su/img/img7/fs/Snimok4.1572012515.png

Вот это высвечивается
8 Михаил Козлов
 
27.10.19
20:49
Не видя Вашу конфигурацию не могу судить о правильности запроса, но смущает синоним ЗадачаИсполнителя и имя таблицы ПроверкаДоговоров в полях запроса.
Попробуйте воспользоваться конструктором запроса.
9 palsergeich
 
27.10.19
21:36
(7) Точки - это табличная часть.
Передавайте точку как параметр в запрос
10 palsergeich
 
27.10.19
21:38
(9) Уточню, даже не ТЧ. а виртуальная таблица
11 palsergeich
 
27.10.19
21:41
Точкапрверить = БизнесПроцессы.БизнесПроцесс1.ТочкиМаршрута.Проверить;
Запрос.Установитьпараметр("Точкапроверить",Точкапроверить);
ВЫБРАТЬ
    ПроверкаДоговоров.УтверждениеДоговоров КАК БизнесПроцесс,
    ПроверкаДоговоров.ПроверкаВК КАК ТочкаМаршрута,
    ПроверкаДоговоров.Ссылка КАК Ссылка
    ИЗ Задача.ПроверкаДоговоров КАК ЗадачаИсполнителя
ГДЕ ЗадачаИсполнителя.ТочкаМаршрута = &Точкапроверить
Как то так
12 Михаил Козлов
 
27.10.19
21:43
(9) Можно и как ЗНАЧЕНИЕ(…)
13 palsergeich
 
27.10.19
21:45
(12) Спорить не буду, но в ДО нигде через Значение не получают
14 palsergeich
 
27.10.19
21:47
(12) Думаю врядли через ЗНАЧЕНИЕ, у точки всего 3 поля - ссылка, порядок и представление.
15 Михаил Козлов
 
27.10.19
21:48
(14) См. (5)
16 palsergeich
 
27.10.19
21:49
Хотя нет, работает
ВЫБРАТЬ
    ОзнакомлениеТочки.Ссылка КАК Ссылка,
    Значение(БизнесПроцесс.Ознакомление.Точки.Ознакомиться)
ИЗ
    БизнесПроцесс.Ознакомление.Точки КАК ОзнакомлениеТочки
17 palsergeich
 
27.10.19
21:51
(6) Скорее всего точка как то по другому называется.
Посмотри ее название в контекстной подсказке в коде БизнесПроцесс.УтверждениеДоговоров.Точки
и в контекстной найди как именно она назвается
18 palsergeich
 
27.10.19
21:54
Все вспомнил.
https://yadi.sk/i/1DATMN0kPwgU9g
Независимо от того, куда вы едете — это в гору и против ветра!