Имя: Пароль:
1C
1С v8
Управление регистрацией в планах обмена
0 dryms
 
01.12.11
18:22
Как программно реализовать регистрировать или нет объект для плана обмена? т.е. нужно ли его выгружать при распределенном обмене?
1 DrShad
 
01.12.11
18:23
типовую конфу украли чтоли?
2 dryms
 
01.12.11
18:28
Это к чему?))
3 rs_trade
 
01.12.11
18:31
(2) хорошо. книжки по 1С украли что ли?
4 DrShad
 
01.12.11
18:31
(2) это к тому что в типовых это уже реализовано
5 Жан Пердежон
 
01.12.11
18:34
(2) причем разными способами
6 dryms
 
01.12.11
18:46
Регистрировать можно разными способами. А как сделать отмену регистрации для определенных элементов объекта(справочник) при записи. Можно конечно поставить запрет авторегистрации и при записи справочника в модуле зарегистрировать в нужном плане обмена, но тогда придеться прописывать в каждом объекте или делать подписку на событие, это геморно. Есть ли функции которая вызывается при записи регистрации в план обмена?
7 rs_trade
 
01.12.11
18:48
(6) нет такой функции. есть документация, книги и куча примеров.
8 dryms
 
01.12.11
18:51
спасибо, жалко. Но все остальные способы считаю корявые, точнее не универсальные...
9 DrShad
 
01.12.11
18:52
(6) есть ПриОтправкеДанныхГлавному и прочие, но имхо зачем регить, если отсылать не надо и потом при формировании сообщения игнорить
10 DrShad
 
01.12.11
18:52
(8) хороший вброс - аргументируй
11 Жан Пердежон
 
01.12.11
18:53
(7) зачем обманываешь?)
ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена,ТвойДокумент);
12 rs_trade
 
01.12.11
18:53
(8) ты не знаешь того самого способа.
13 rs_trade
 
01.12.11
18:54
(11) перечитай

Есть ли функции которая вызывается при записи регистрации в план обмена?
14 Жан Пердежон
 
01.12.11
18:55
(8) а теперь открой последнюю КД и узри там правила регистрации объектов))
15 dryms
 
01.12.11
19:08
(11)
Можно конечно поставить запрет авторегистрации и при записи справочника в модуле зарегистрировать в нужном плане обмена
Эту функцию я и имел ввиду.

(9)нужно чтобы в одной базе были определенные элементы справочников, а в другой полный список. Объеснять почему думаю не стоит.
Раз функции нет, я так и сделал как, при отправке.

(10) Если была бы функция, то выполнялись только определенные объекты при регистрации, что сократило бы время выполнения регистрации (записи справочника), так мне нужно прописывать в каждый справочник кусок кода, что увеличит мое время обновление типовой конфы, если же через подписку на событи, то увеличит время записи справочников, которые не относятся к плану обмена (хотя на мили секунды). И если через обработку выгрузки делать время выполнения выгрузки увеличится, а так же может возникнуть ошибка, если вдруг человек решит выгрузить стандартными средствами через план обмена. Можно конечно в модуле обмена написать.. НО сколько "НО", из-за отсутсвия одной простой функции.
16 DrShad
 
01.12.11
19:14
(15) т.е. придуманная тобой функция не [увеличит время записи справочников, которые не относятся к плану обмена (хотя на мили секунды)]
открой для себя что для каждого объекта есть таблица изменений и она создается независимо от того входит объект в состав хотябы одного плана обмена или нет
17 DrShad
 
01.12.11
19:15
+(16) если бы была единая таблица измененных объектов, то описанная тобой функция имела бы место быть, но таблиц изменений много
18 Жан Пердежон
 
01.12.11
19:15
(15) была бы такая функция - она бы тоже увеличивала время записи на те же миллисекунды
19 rs_trade
 
01.12.11
19:21
автор давно бы уже открыл документацию и узрел для себя очистку узлов получателей
20 dryms
 
02.12.11
11:08
(15) назначение функции в первую очередь сокращение строчек когда и потери времени написания. да и дыр и времени выполнения было бы меньше. Кстате она есть, в платформе, тока в лезть в нее нельзя. а была бы в модуле плана обмена это упростило бы данный момент

(18) Она уже есть в платформе зашитая

(19) не понял к чему это
21 Maxus43
 
02.12.11
11:16
непонимаю что не нравиться автору в стандартных механизмах. Не хочеш всегда регистрировать - отключи авторегистрацию а подпиской регь которые нужны. Или при авторегистрации очищай регистрацию для тех узлов в которые не надо. Пример задачи скажи лучше
22 dryms
 
02.12.11
12:02
(21)"Или при авторегистрации очищай регистрацию для тех узлов в которые не надо. Пример задачи скажи лучше"
Какую функцию имеешь ввиду?
Пример есть контрагент "А" и "Б". "А" нужно передатьв другую базу, а "Б" нет.
23 Maxus43
 
02.12.11
12:04
отключаем авторегистрацию контрагентов. подписка при записи на конрагентов. Если контрагент "А" - ПланыОбмена.ЗарегистрироватьИзменения(, СсылкаНаКонтрагента);

Или наоборот, если авторегистрация стоит - ПланыОбмена.УдалитьРегистрациюИзменений
24 Maxus43
 
02.12.11
12:06
если надо в конкретную базу передавать из нескольких - регистрируем только в нужных узлах. всё там гибко можно кодом намутить
25 dryms
 
02.12.11
12:13
(23) ладно , спасибо:-)
Закон Брукера: Даже маленькая практика стоит большой теории.