Имя: Пароль:
1C
1С v8
КД 2: правила для "Универсальный обмен данными". И обмена данными, помеченными к выгрузке.
0 PiotrLoginov
 
23.11.17
18:46
Всем добра.

Вопрос: как связаны ПВД с механизмом регистрации объектов к выгрузке? Анализирую сейчас готовые правила обмена между некоторыми типовыми конфигурациями. Там все ПВД - "Стандартная выборка". Но понятно, что когда выбираются объекты, происходит все-таки выборка не всех объектов, а помеченных к отправке (ВыгрузитьИзменения()).

Вопрос этот появился у меня при написании правил для обмена между некими нетиповыми конфигурациями, когда понадобилось создать ПВД с произвольным алгоритмом:

В обработчике ПВД ПередОбработкой произвольным запросом выбираются некоторые данные из БД-источника. Если далее правила используются в обработке "Универсальный обмен данными", то все понятно: добавляем в запрос условие по ДатаНачала и ДатаОкончания (доступны в контексте модуля этой обработки, устанавливаются интерактивно в форме обработки) - и выгружаем всё, что вернул запрос. Если же потом эти правила использовать для обмена с помощью данными с помощью планов обмена, то запрос уже будет некорректен, ибо никаких ДатаНачала и ДатаОкончания уже не будет. Да и отправлять надо уже не все данные, выбранные произвольным запросом, а только помеченные к отправке.
1 ГдеСобака Зарыта
 
23.11.17
18:51
Данные к выгрузке нужно регистрировать на узле плана обмена. Для это существуют правила регистрации объектов ПРО.
2 PiotrLoginov
 
23.11.17
19:06
(1) Если говорить об использовании правил обмена в конфигурациях с нужным нам планом обмена, т.е. обмена данными, помеченными к выгрузке, то да, действительно, к моменту, когда вручную или регламентным заданием решили выполнить обмен, в БД-источнике есть объекты, помеченные к выгрузке благодаря правилам регистрации.

Это понятно. Но когда начнется выгрузка данных по правилам обмена, как отработают ПВД с произвольным алгоритмом, т.е. выборкой данных произвольным запросом, где в тексте запроса указано условие "ГДЕ Объект.Дата МЕЖДУ &ДатаНачала и &ДатаОкончания" ? Значит ли это, что при создании правил с помощью КД 2 для обмена с помощью Планов обмена вообще не следует использовать в ПВД произвольные запросы?

Я вот вообще такого указания нигде в методичках не встречал. Значит, что-то недопонимаю, что-то упустил? Что именно?
3 PiotrLoginov
 
23.11.17
19:24
Господа, пишите, что думаете. Вопрос, наверное, простой. Вероятно, создавать в КД правила для использования в "Универсальный обмен данными" надо, не забывая про ДатаНачала и ДатаОкончания,
а для полноценного обмена между конфигурациями с использованием Плана обмена - без ПВД с произвольными запросами.

Как вы думаете? Или это все уже давно предусмотрено в БСП, и произвольный запрос при выгрузке данных в рамках плана обмена сам выкинет из своего текста условие по датам, и выгрузка из БД-источника произойдет не всех возвращенных запросом данных, а только тех, которые помечены к выгрузке?
4 PiotrLoginov
 
23.11.17
19:36
Мнений нет... Ок. Если сабж для вас ясен как божий день, но попытка растолковать кажется слишком долгой и бесперспективной, чтобы отписаться в теме, так и напишите: мол, там все просто, надо было внимательней читать ИТС/руководство разработчика.
5 Ёпрст
 
гуру
23.11.17
19:38
(4) всё просто, достаточно открыть отладчик или в ПВД запихать отладочные сообщения в лог.
Проверяется же всё на раз-два.
6 Ёпрст
 
гуру
23.11.17
19:39
вот и узнаешь, при обмене через план обмена, участвует пвд, али нет
7 PiotrLoginov
 
23.11.17
19:41
ок, буду смотреть на практике. спасибо
8 MaxS
 
23.11.17
19:51
(2) Могу что-то подзабыть. Мнение что произвольную выборку в ПВД в планах обмена если и использовать, то с какой-то практической целью. Например, если этого объекта нет в составе конвертации, например, при обмене утром отправить меню на сегодняшний обед. ))
9 PiotrLoginov
 
23.11.17
19:58
(8) ага. И тогда ПВД с произвольным алгоритмом выгрузит все, что захочет, дополнительно к выгрузке зарегистрированных/измененных данных обычными ПВД. Вот это уже имеет смысл. Спасибо.