Обмен данными УРБД #455954


#0 by gvsgvs
Как отменить регистрацию изменения конфигурации без получения обратки из узла, т.е. нужно сделать так чтобы при выгрузке данных и конфигурации в узел очищать изменения для этого узла (как изменения данных так и конфигурации). Читал в нете что сделать так можно но как та и не разобрался. Для данных подходит УдалитьРегистрациюИзменений а для конфигурации так ничего и не нашел , может кто подскажет как быть.
#1 by Нууф-Нууф
а грозящих проблем не боишься?
#2 by mikecool
для конфигурации, кажись , никак
#3 by gvsgvs
Нет не боюсь, нет где то это хранится верстаки так как при получение облатки он как то понимает что изменения конфигурации которую он передал в узел из центра дошло до узла и в следующий раз не шлет ее в узел, так что я думаю что все таки как то это можно сделать но как я не знаю к сожалению.
#4 by Живой Ископаемый
хм... Прикольная задача... То есть односторонний (гарантированно односторонний) обмен, но чтобы ИБ-приемник принимала и изменения конфы? Может тогда пусть ИБ-отправитель формирует сообщение о получении ИБ-приемником? Типа сама? можно так?
#5 by Рэйв
#6 by gvsgvs
Если быть точным задача стоит такая есть центральный офис есть 50 узлов, данные ходят все хорошо(не 1Совский обмен а полностью переписанный) сейчас конфигурация меняется довольно часто но эти изменемния на обмен ни как не влияют(добавляются отчеты, регистры и т.д. то есть метеоданные которыми не обмениваются и наличие которых в узлах не принципиально) но все таки иногда приходится делать изменения которые должны попасть в узлы, а так как до этого делались изменения конфы то сейчас файл обмена у нас около 10 мг , данный файл пролесть в каналы связи с нашими узлами физически не может. Сейчас стоит задача затереть все измерения конфы(котрые делались ранее для центрального узла)   для узлов, для того чтобы следующие измемния для узлов весило уже не 10 мг а несколько десятков килобайт ну и в последующем чтобы измемния конфы доходили только те что дейсвительно необходимы для узла.
#7 by gvsgvs
Пробывал ПланыОбмена.УдалитьРегистрациюИзменений(Цель, Цель.НомерОтправленного); данный код затирает все данные для узла но не затирает информацию о измемение конфигурации.
#8 by Рэйв
Так конфа то изменена, она полюбому уйдет. Потому что без обновления узла обмена не будет.Все логично
#9 by Рэйв
+если хочешь перекидывать даные без изменения конфы, то используй КД 20
#10 by gvsgvs
В нашем обмене данные уйдут даже если конфа не обновлена, они не уйдут в том случае если изменена структура метеоданных именно в том ментаданном(справочник или документ) которым мы обмениваемся. Мне нужно понять как можно управлять изменениями конфигурациям при обмене УРБД.
#11 by Mirid
Как вариант можно очищать таблицу _ConfigChangeRec в скуле. Тогда файлы обмена будут содержать только новые изменения конфы.
#12 by gvsgvs
а не подскажешь как можно очисти таблицу скула из 1Ски? просто опыта как то у меня в этом вопросе не много(пример кода если можно плиз)
#13 by Mirid
примера кода нет. можно проще: снять галку у плана обмена "Расспределнный" обновить конфу БД и поставить заново. Но тогда изменения данных тоже очистятся. Я делал так: 1. Выгрузил из ЦБД 2. Загрузил во всех периферийных базах 3. Снял галку 4. Обновил конфу 5. Поставил галку и обновил конфу опять Все. Файлы обмена опять маленького размера. В автоматическом режиме нужно только прямыми запросами к скулу обращаться..
#14 by gvsgvs
У меня такая мысль тоже была но после того как снять галку и поставить то при приеме в узле Начат обмен данными по настройке "Центр" (13:19:31). Ошибка при чтении изменений при обмене РИБ:  Ошибка при вызове метода контекста (ПрочитатьИзменения): Конфигурация узла распределенной ИБ не соответствует ожидаемой! Чтение данных из файла обмена завершено с ошибками! Обмен данными по настройке "Центр" завершен (13:19:33). И это можно вылечить только отвязав узел от РИБ накатить конфу в ручную и тогда при следующем обмене будет все гуд, но сам понимаешь что в 50 узлах накатывать конфу в ручную как то не хочется, а ты пробывал очищать эту таблицу в скуле или это теоретическое предложение и какие там подводные камни могут быть?
#15 by Mirid
последствия будут те же. в том то и дело что конфигурация должна соответствовать. Этот механизм годиться только для периодического уменьшения файлов обмена раз уж флаги не приходят от подчиненных узлов. Если конфигурации будут разные то механизм РИБ не подходит вообще как было сказано в
#16 by gvsgvs
Я в принципе большего то и не прошу кроме переодического уменьшения файла но такой механизм у меня не проходит, при приеме в узле он ругается(как написана в предыдущем моем посте) а для того чтобы исправить эту ошибку нужно руками накатить конфигурацию на узел что неприемлего в моем случае так как конфа целиком просто не пролезет по моим каналам связи.
#17 by gvsgvs
Ты на каком релизе 1С по своей схеме делал у меня релиз платформы 13.
#18 by Mirid
Не должно быть такой ошибки. Если ты залил последние изменения и очистил таблицу регистрации, то при изменении конфы в последующем платформа зарегистрирует новые изменения и все должно взлететь. Опиши последовательность действий которые ты делал поэтапно. Платформа 15-я, но думаю платформа тут ни причем.
#19 by gvsgvs
Снял галку в конфигураторе Распределенная ИБ, обновил базу , затем обратно поставил галку , опять обновил базу , выгрузил файл обмена(он стал маленький), при попытки загрузить это файл в узел он ругается  Конфигурация узла распределенной ИБ не соответствует ожидаемой!
#20 by Mirid
перед тем как снимать галку нужно выгрузить последние изменения в переферийную базу и загрузить их там. и в это время конфу не менять.
#21 by gvsgvs
да мне данные которые зарегистрированы не  нужны
#22 by Mirid
ну значит очистить надо УдалитьРегистрациюИзменений главное конфу выгрузить последнюю
#23 by gvsgvs
щас попробую заодно сейчас накатил себе 15 релиз надеюсь что поможет
#24 by gvsgvs
обновление до 15 релиза ничего не дало :-( так и ругается Конфигурация узла распределенной ИБ не соответствует ожидаемой! и хрен знает что делать
#25 by Mirid
даже если она не меняется?
#26 by gvsgvs
да просто ставлю снимаю галку и ставлю кроме этой галки ничего не трогаю
#27 by Mirid
до того как галку снимаешь конфигурации соответствуют?
#28 by Serg_1960
Все не осилил читать потому-что автор пишит без знаков препинания В типовых конфах уже давно есть функционал позволяющий при незначительной адаптации автоматически обрабатывать изменение конфигурации в подчиненных узлах риб-базы без регистрации ошибок указанных автором.
#29 by gvsgvs
а может подскажешь где это функционал и как им пользоваться? конфигурации перед тем как снял и поставил галки разные (не делал их одинаковыми так как это условия задачи ) то есть на данный момент у нас конфа в центральном узле не совпадает с конфигурацией в узлах.
#30 by Mirid
Если задача совместить разные конфы, то это Я думал задача уменьшение размеров передаваемых файлов
#31 by gvsgvs
задачи две передать новые изменения конфы но не при помощи протаскивания файла в 10 мг через канал связи он туда просто не лезет
#32 by Mirid
а подробней можно? где он находится? т.е. ты хочешь только части конфы передавать? если да, то думаю не взлетит..
#33 by gvsgvs
Ситуация в следующем , у нас сейчас как я говорил 50 узлов и центральная база, обмен данными идет по средством обмена который я написал без привязки к стандартному 1Совскому обмену, стандартным обменам передаются только константы(и то очень редко так как константы редко меняются). Написаный мною обмен работает хорошо если даже конфы не идентичны. В узлах у нас вообще бардак(с точки зрения конфигурации, но все хорошо с точки зрения данных) в некотрых узлах обновлем конфу регуларно(раз в пару дней), с кем то раз в месяц,  с некоторыми узлами не обменивались конфами пару месяцев и конфа в этих узлах сильно уже устарела. Обмен конфами мы делаем только в одну сторону из центра на переферию(стандартными средствами РБД), обратку из узла в центр мы не высылаем. при такой схеме с каждым разом файл из центра у узел рос, но всем было наплевать так как файл обмена влазил в канал и его можно было прокачать. В новгодние праздники много чего наколбасили в конфигурации и появилась необходмость обновить все узлы. но этого сделать сейчас не можем так как большинсвто файлов обмена просто передать не можем в узел из за его размер. Сейчас нам необходимо обновить конфу во всех узлах.
#34 by gvsgvs
очень много узлов у нас сейчас находятся в состояние недельной давности обмена, туда уходят большие файлы обмена так как мы не посылали обратки и "центр" не знает что эти узлы обновлялись и каждый раз им посылает изменения конфу за продолжительное время. Как указать центральной базе что по этим узлам передавать изменения конфигурации за последние два месяца не нужно а нужно только передать за последние неделю что должно сократить размер файла выгрузки на порядок.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С