Сравнение 2х однотипных баз

Обработка позволяет определить какие данные были внесены в 2 ОДНОТИПНЫХ базах, например, архивах за разные числа (проверка объектов в целом, не по реквизитам)

Обновил: Добавил возможность выборочного сравнения 🙂

Прошу строго не судить, обработку писал ООООООЧЕНЬ давно.

Принцип работы:

 

  • Запускаем обработку в одной из 2х баз. Происходит сбор всех элементов справочников и документов за указанный период, перевод их во внутренние коды и сохранение во внешний файл (файл появляется там же где и обработка)
  • 2 запуск осуществляем во второй базе, происходит все то же самое и определяется список элементов, отсутствующих в базе №1
  • 3 запуск производим опять в базе №1 и смотрим на объекты, которых нет в базе №2

НЕ ОБРАБАТЫВАЕТСЯ ИСТОРИЯ!!!  но думаю если кому надо будет, то реализовать будет не сложно по тому же принципу 🙂 Возможно, когда нибудь в дальнейшем сделаю :))))

Чтоб не возникало вопросов, снабдил обработку справкой 🙂 , которая появляется при запуске отчета 🙂

 

23 Comments

  1. Арчибальд

    А плюс я уже ставил 😉

    Reply
  2. DarkAn

    да, было дело, я просто удалил случайно(нет вопроса с подтверждением удаления), пришлось заново заливать. Чуть ускорил скорость заливки в файл

    Reply
  3. Арчибальд

    (2)Если пропадет, я восстановлю 😉

    Reply
  4. Свой

    «Происходит сбор всех элементов справочников и документов за указаный период, перевод их во внутрение коды и сохранение во внешний файл»

    — сколько это будет крутиться на базе ТиС около гигабайта ?

    Reply
  5. Арчибальд

    (4) Не по всей же базе крутиться будет… Но долго. Для активно пополняемой базы вряд ли реально сравнивать больше 2-3 дней.

    Reply
  6. DarkAn

    хм…, хорошая идея щас добавлю возможность выбора выбора какие объекты проверять 🙂 ну чтоб реально не всю базу перекручивать, а например по частям 🙂

    Reply
  7. Свой

    предлагаю идею сравнивать это дело через ОЛЕ, тогда результат будет за одно действие

    Reply
  8. DarkAn

    У меня была такая идея в самом начале, если честно не помню почему я от нее отказался.

    Поправил еще мелкие баги и сделал расшифровку

    Reply
  9. Kruzo

    Сравнить базы и выявить расхождения это хорошо. Но для чего это надо? В большинстве случаев для выгрузки добавленных объектов из одной базы в другую. Отсюда следует, что неплохо бы к обработке прикрутить стандартную выгрузку в текстовый файл.

    Reply
  10. DarkAn

    ну это уже достаточно хлопотно.

    Reply
  11. almas

    9 наверное потому, что далеко не все можно идентифицировать однозначно и приходиться изгаляться через составление строкового ключа. А если учесть, что в SQl поиск и сравнение проводится нормально по строам не более 25 символов (личный горький опыт). http://www.infostart.ru/projects/3678/ надеюсь в ближайшее время добью до «ликвидного» вида тогда выложудля всех. однозначно плюс

    Reply
  12. Лаура

    Спасибо за отчет, пригождается при поисках расхождений «где что слетело и из-за чего лезет разница», тем более что отчет РАБОТАЕТ! в Подрядчике строительства. Удобство отчета — из таблицы результатов сравнения данных можно зайти во вносящий отличия документ/справочник. Недочет — автор не обращает внимания пользователей в пояснении к отчету что после каждого этапа необходимо закрывать окно запуска отчета. Пожелания для развития отчета — документы отличия описывать в таблице суммами и проводками (если это возможно).

    Reply
  13. DarkAn

    (12)

    Недочет — автор не обращает внимания пользователей в пояснении к отчету что после каждого этапа необходимо закрывать окно запуска отчета

    ага, надо бы поправить 🙂

    Пожелания для развития отчета — документы отличия описывать в таблице суммами и проводками

    я хотел сделать детальную проверку по проводкам, но честно я у себя на RAM-диске стрельнулся ждать окончания. Самый тормоз во время перевода во внутренний код всего объема данных. Хотя т.к. добавил возможность выборочного сравнения — можно попробовать 🙂

    П.С. у нас тоже подрядчик строительство, будь он трижды проклят 😀

    Reply
  14. Resembler

    Опечатка в коде — «Чилсо» 🙂

    Reply
  15. Msokolov

    Почемуто на 3 шаге вылетела ошибка(

    ТЗ.НоваяКолонка(«Вид» , «Строка»);

    {C:USERSADMDESKTOPСРАВНИВАНИЕ_БАЗ_V1.31.ERT(28)}: Значение не представляет агрегатный объект (НоваяКолонка)

    Reply
  16. White__

    вылетает в ошибки и на шаге 1 и на шаге 2 👿

    Reply
  17. DarkAn

    (16) и в какие ошибки????

    Базы точно однотипные. Например архивы одной и той же базы за два разных числа?

    Reply
  18. vkr

    Очень интересно! Сколько раз уже нарывались в Бух-базах на пропадание объектов

    (доки, элементы справочников) — и ни одна зараза не признается в содеянном… 😀

    Попробуем выводить на чистую воду…

    Reply
  19. Necytij

    Скачал, опробовал на деле. Сравнивал БП с архивом. Потому как полетели кое-какие итоги. Нашли один документ, но это оказалось еще не все, оказалась проблема именно в итогах, помогло ТИИ. Спасибо, в этот раз помогло, хотя мне показалось, что функционал недостаточен. Наверное надо будет писать свою, и вписывать туда в первую очередь сравнение по итогам и оборотам регистров…

    Reply
  20. LanaSN

    Спасибо, когда в базе работает более 10 человек, возможность возникновения «довнесения» документов очень вероятна, поэтому когда можно за на нахождения таких ситуаций потратить меньше времени — это огромное благо!

    Reply
  21. chmv

    Очень любопытно

    Reply
  22. A151

    Полезная обработка! Возникла необходимость перенести документы в архивную базу внешней обработкой. Период год. Проверить в ручную не реально. А сомнения в правильности переноса есть. Немного исправил обработку (проверяет только вид, номер,сумму и дату док)- и сомнения улетучились. Спасибо!

    Reply
  23. JuliettT

    я думала, это на 8…. жалко… а нет такого же на 8?

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *