Сравнение баз 1С #85684


#0 by k
Есть две БД (одинаковые по структуре). Одна из них архивная, другая - рабочая. (Вариант - обе базы архивные, но за разные периоды). Как бы получше их сравнить и найти расхождения. Может есть какие наработки-обработки?
#1 by k
Up.
#2 by vaah
Если обе твои базы "одинаковые по структуре", а тебе нужны "обработки-наработки", тогда и сравни их размеры. Если тебе нужно узнать, кто что нового вводил туда, тогда напиши сам обработку по сравнению доков в этих базах
#3 by k
Все чуть-чуть не так. С 1-й базой прекратили работать, например, 31 января, со 2-й - 28 февраля. 2-я база - преемник первой. Интересует ответ на вопрос: что изменено (в том числе злонамеренно) во второй базе в части документов и движений регистров за период с ... по 31 января?
#4 by NOA
Как рецепт на будущее могу предложить Вам следующее1) К каждому контролируемому обьекту вешается реквизит сигнатуры2) При любой записи обьекта он обновляется данными о текущей записи и времени3) Обработка сравнивает их между собой и выдает список несоответствийPS У меня так работала схема синхронизацией документами (2 псевдоидентичные базы. Обьединять их не позволяла религия руководства). Переносятся только измененные документы
#5 by k
Реквизит сигнатуры - это хэш-функция? Если да, то какая? А как быть с движениями регистров?
#6 by 2Green
прикольно, и наверное довольно просто добавить проверку в существующие обработки выгрузки
#7 by tesei
OLE тебе поможет
#8 by k
OLE мне полностью не поможет. У меня есть готовая обработка (OLE), сравнивающая документы в 2-х базах. (Тупой перебор в лоб). Интересует, во-первых, возможное существование менее тупых вариантов, и, во-вторых, как быть с регистрами (перепроведение документов КРАЙНЕ нежелательно).
#9 by NOA
Я сделал просто реквизит Строка    WSign=Строка(ТекущаяДата)+"/"+ТекущееВремя;Просто и немудренно :) Именно так
#10 by NOA
Строка. Общий реквизит - чтобы не прорисовывать в каждом документе.
#11 by k
В моем случае не годится. Хочется найти и злонамеренные изменения (например, в обход интерактивных механизмов 1С).
#12 by NOA
Тогда не судьба... А идея кажется изящной.
#14 by k
Up..
#15 by k
Up...Неужели в самом деле не судьба?
#16 by MITROFILL
Давай мыло. Намылю обработку Глазунова А.Н.
#18 by MITROFILL
Ушло
#19 by k
Спасибо! Тестирую ... С первого взгляда веселей, чем OLE.По-прежнему нет никаких идей с движениями регистров.:(
#21 by k
Up..
#22 by k
Up...
#23 by BlackFox
А что это за "злонамеренные изменения в обход интерактивных механизмов 1С"? Просто интересно (а в голову ни каких идей по поводу того, что и как бы это могло быть, не приходит)
#24 by k
Запись в таблицы движений регистров значений, не согласующихся с цифирками в документах. И в DBF- и в SQL- вариантах такая запись возможна. А перепроводить документы (чтобы восстановить движения) не хочется.
#25 by кРРыС
В чем проблема то? Оле рулит. В ГМ сажаешь фунцию вычисляющую все что нужно (в частности хэш движения регистров, совокупное влияние на "баланс"...).Единственный дефект ОЛЕ сравнение баз за 4 года(базы на самом деле двухдневной разницы, но за этот промежуток меняли на 4-хлетнюю глубину), сами базы порядка 1GB одних dbf-ок на неслабом серваке(2*Xeon 3.06,2GB,SCSI Raid 0...) час работает. Обе монопольно.
#26 by k
Мне не очень понятно как бы ничего из движений не пропустить (есть же еще всякие итоги). Или пересчет итогов спасет?
#27 by кРРыС
Не понял? к доку то привязаны именно движения если не заморачиваться содержательным смыслом этих движение то можно вообще через метаданные _все_ движения получать - точно ничего не пропустишь.
#28 by k
Те движения, которые "привязаны" к документу - это не все записи, которые хранятся в таблицах регистров (и по которым могут быть построены отчеты).
#29 by кРРыС
поясни
#30 by k
Например, при выполнении запроса обычно не происходит перебор движений с начала времен, а берутся итоги на определенную дату и уже от них если надо происходит перебор. Вот эти-то итоги (уже вычисленные) я и имею в виду.
#31 by кРРыС
Ну и что? итоги ты можешь тем же методом получать. Но ксати говоря если на начальный этап итоги совпадали то далеше тебе именно движения надо контролировать.
#32 by k
Самый главный вопрос - как не забыть проверить ВСЕ итоги. Ну и второй вопрос - как бы их побыстрее проверить?
#34 by k
Up.. :)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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