|
Как зарегистрировать в узле все справочники, связанные с документом? | ☑ | ||
---|---|---|---|---|
0
MaxS
14.03.14
✎
18:02
|
Некоторое время вели учет в УТ 11. Потом настроили односторонний обмен УТ 11 -> БП 3.0.
Перед первым обменом сбросили регистрацию всех объектов в обоих базах. При обмене документами, естественно получаем битые ссылки в БП, т.к. справочники не переносились. Есть ли универсальная обработка регистрации справочников и их ссылочных реквизитов, на которые есть ссылки из документа? |
|||
1
Fram
14.03.14
✎
18:23
|
(0) меняй правила чтобы по ссылкам объекты тоже выгружались
|
|||
2
MaxS
14.03.14
✎
18:26
|
(1) Это разовая процедура - зарегистрировать в узле обмена.
Менять правила, значит перелопатить их полностью. :( В случае изменения справочника он и так перейдёт в БП. |
|||
3
VikingKosmo
14.03.14
✎
18:27
|
Справочников в обмене УТ-БП два десятка
|
|||
4
Fram
14.03.14
✎
18:28
|
(2) поставить 20-30 галочек
|
|||
5
VikingKosmo
14.03.14
✎
18:28
|
Обработку написать которая зарегистрирует изменения этих справочников можно минут за 10
|
|||
6
Aleksey
14.03.14
✎
18:29
|
а встроенная чем не нравится?
|
|||
7
MaxS
14.03.14
✎
18:29
|
(3) Все справочники не нужны.
УТ 11 сильно доработана, там есть нетиповые документы, которые используют типовые справочники. |
|||
8
VikingKosmo
14.03.14
✎
18:43
|
(7) нетиповые документы прописаны в ПравилахОбмена?
|
|||
9
MaxS
14.03.14
✎
18:50
|
(8) Некоторые прописаны.
Нужны не все элементы справочников, а только те, которые в составе документов, которые переносятся в БП. И реквизиты этих справочников тоже должны быть заполнены в БП. |
|||
10
Fram
14.03.14
✎
18:57
|
(9) давно бы уже проставил галочки в правилах и выгрузил
|
|||
11
VikingKosmo
14.03.14
✎
19:03
|
(10) Или написать рекурсивный поиск используемых значений...
|
|||
12
MaxS
14.03.14
✎
19:16
|
(10) Какие галочки? ))
(11) Этот вопрос в (0). Есть такая обработка? На инфостарте, например? |
|||
13
VikingKosmo
14.03.14
✎
19:22
|
(12) я что то подобное сам писал. Про Инфостарт, я хз, это там искать надо.
|
|||
14
Fram
15.03.14
✎
18:52
|
||||
15
Fram
15.03.14
✎
18:52
|
+(14) вернее наоборот - проставить эти галочки
|
|||
16
Fram
15.03.14
✎
18:53
|
+(15) тьфу.. снять галочки
|
|||
17
MaxS
16.03.14
✎
09:33
|
(16) Галочки и так сняты.
Это работает, если обычный обмен универсальной обработкой. Здесь в обмен попадает только то, что зарегистрировано в узле, т.е. только измененными объектами. Правила обмена не занимаются регистрацией объектов обмена. |
|||
18
hhhh
16.03.14
✎
10:27
|
(17) ну там есть обработка "регистрация изменений". Можно всё что хочешь зарегистрировать. Если в ут11 нет, можно с Ут10 скачать или с бп20 и запустать в режиме обычных форм.
|
|||
19
MaxS
16.03.14
✎
11:01
|
(18) Так и у меня есть - от последней конвертации, для УФ.
Как это поможет зарегистрировать _элементы_ справочников (не виды), связанных с документами? Разве, что мега запрос написать... Выбрать Документ.Реквизит1 как СсылкаСправочникаДляРегистрацииВУзле Из документ как документ где документ дата >&ДатаНач Объединить все Выбрать Документ.Реквизит2 Из документ как документ где документ дата >&ДатаНач ... Объединить все Выбрать Документ.Реквизит1.Реквизит1 Из документ как документ где документ дата >&ДатаНач Объединить все Выбрать Документ.Реквизит2.Реквизит1 Из документ как документ где документ дата >&ДатаНач ... Проще написать обработку, которую запускать в приемнике. Анализ документов за период, рекурсивный поиск битых ссылок, подключение к базе источнику и поиск там соответствующего документа и регистрация справочника. Эту обработку сделать внешней и запускать фоновым заданием какое-то время, пока все не наладится. |
|||
20
ДенисЧ
16.03.14
✎
11:13
|
Давно уже написал бы....
Такое рисуется за пару часов... А ты 2е суток с Муму любовью занимаешься.... |
|||
21
MaxS
16.03.14
✎
12:04
|
(20) Не нужно мне тыкать и указывать что делать. Хорошо?
Прежде чем изобретать велосипед, предпринимается попытка найти его. Когда и что делать я сам знаю. |
|||
22
KarpovDeniska
16.03.14
✎
13:23
|
(21) ну так посмотри, что делает эта галочка из (14) и как отрабатывает в правилах обмена, либо посмотри универсальный обмен XML, там тоже есть галочки выгружать подчиненные. Но как тебе уже написали , это делается максимум за 2 часа.
|
|||
23
ДенисЧ
16.03.14
✎
13:27
|
(21) Какие мы злые...
|
|||
24
Fram
16.03.14
✎
16:29
|
(17) Ошибаешься. Механизм выгрузки через правила всегда руководствуется правилами. Регистрация объектов это предыдущий более верхний уровень.
Т.е. если указанная мною галка не стоит, то механизм КД всегда выгрузит объекты по ссылкам, если для них есть правила. |
|||
25
MaxS
16.03.14
✎
18:42
|
(24) (22) В типовой УТ 11
Модуль ОбменДаннымиСервер Функция ПолучитьОбработкуОбменаДаннымиДляВыгрузки ... ОбработкаОбменаДанными = Обработки.КонвертацияОбъектовИнформационныхБаз.Создать(); ОбработкаОбменаДанными.РежимОбмена = "Выгрузка"; ОбработкаОбменаДанными.НеВыгружатьОбъектыПоСсылкам = Истина; Потом эта переменная используется в функции ВыгрузитьПоПравилу... Т.е. то, что зарегистрировано, то и выгружается. Если допустить выгрузку по ссылкам при обмене между базами, объемы обмена значительно возрастут. Этот вариант с выгрузкой по ссылкам если и применять, то в последнюю очередь. Самый щадящий вариант - один раз зарегистрировать нужные элементы справочников. |
|||
26
Fram
16.03.14
✎
20:42
|
(25) Ты можешь все документы зарегистрировать. Их, наверно, не так уж много видов, даже если много самих данных. Остальное паровозом приедет. И это выполнить только один раз ночью.
|
|||
27
MaxS
18.03.14
✎
07:29
|
(26) Не подходит такой вариант, т.к. будет переноситься по ссылкам всё в обход правил регистрации, игнорируя отбор по организации...
Сделал обработку, которая запускается в БП, в документах ищет битые ссылки, в УТ ищет аналогичный документ, регистрирует эти справочники в УТ и реквизиты справочника. Но делается это не за 2 часа. т.к. много времени нужно только на то, чтобы сопоставить разные типы и наименования реквизитов разных баз. Идеально было бы подгружать правила обмена УТ-БП, где все соответствия установлены, но это долго для разовой задачи. На инфостарте кое что находил, но это для идентичных распределенных баз. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |