|
КД2: произвольный алгоритм - как получить объекты? |
☑ |
0
mikecool
02.09.19
✎
17:55
|
Что-то я завис
Перед обработкой в ПВД определяю ВыборкаДанных, результат запроса
Читаю хелп к этому событию: если определить данную переменную, то обход коллекции и выгрузка объектов будет осуществляться автоматически
ожидаю, что в "Перед выгрузкой" уже будет конкретный объект этой выборки, в этом событии в зависимости от значений реквизитов выбираю ИмяПКО
но получаю в качестве объекта - выборка из результата запроса
во всех примерах используется ВыгрузитьПоПравилу, но в эту функцию надо передать имя ПКО
у меня же оно определяется на следующем шаге, перед выгрузкой
как быть?
если вызову ВыгрузитьПоПравилу с "произвольным" видом ПКО, отработает ли перед выгрузкой и определится ли "правильное" имя ПКО?
|
|
1
mikecool
02.09.19
✎
18:16
|
сработала ВыгрузитьПоПравилу
вот только не знаю, отрабатывает ли выбор правила в перед выгрузкой
|
|
2
mikecool
02.09.19
✎
18:21
|
+1 должна отработать
|
|
3
Йохохо
02.09.19
✎
18:27
|
ВыборкаДанных любая коллекция для которой доступен цикл Для Каждого и доступ через [] к полям
|
|
4
mikecool
02.09.19
✎
20:28
|
(3) ну вот подсунул я ей результатзапроса и получил в перед выгрузкой выборку
а судя по хелпу, подсунув любую из коллекций я должен получать объекты
|
|
5
fisher
02.09.19
✎
21:22
|
(4) Нифига. Подсовывая коллекцию в "перед обработкой" ПВД, на вход ПКО подается просто элемент этой коллекции. Под "выгрузкой объектов" подразумеваются образы объектов ПРИЕМНИКА. А на "входе" может быть что угодно, от слова "совсем". Если ты на вход ПКО хочешь подать именно объект базы-источника из выборки результата запроса, это можно попробовать сделать вручную. Ну типа запрос у тебя выбирает поле "Ссылка", например. Тогда в "перед выгрузкой" ПВД попробуй написать
Объект = Объект.Ссылка.ПолучитьОбъект();
|
|
6
fisher
02.09.19
✎
21:31
|
Я просто не встречал, чтобы так делали, потому что эффективнее (в т.ч. по производительности) просто обеспечить в выборке ПВД все нужные поля, необходимые для ПКО.
|
|