Сравнить содержимое файловых баз.
Я понимаю, что ещё не пятница, а вопрос довольно странны.
Есть две файловых базы.
Можно ли как-то сравнить их содержимое (убедиться — базы одинаковые или разные)?
Конфигурации — легко. "Выгрузить конфигурацию в файлы", сравнить полученные каталоги.
А вот то, что "внутри"?
Пока вижу только путь — загрузить в SQL, средствами SQL сравнить всё содержимое всех таблиц.
Есть ещё какие-то варианты?
Написать обработку, которая в одной базе будет последовательно обходить все метаданные, выгружать их в какую-то таблицу значений (ТЗ-1), потом (через COM?) соединяться с другой, выгружать там эти же метаданные в ТЗ-2, сравнивать ТЗ-1 и ТЗ-2?
что-то типа этого
cmd
compare file1 file2 >r.txt
(1) Что предлагается сравнивать? файлы 1Cv8.1CD?
Не работает.
Сделал две копии одной и той же базы.
Вошёл в одну, вышел.
Вошёл в другую, вышел.
Сравниваю 1Cv8.1CD — они разные.
Мне нужно сравнить и конфигурации, и данные в двух базах.
Конфигурации — я могу сравнить (и в (0) это описал).
Как убедиться, что данные в базах — одинаковые?
(4) Делал выгрузку в dt из одной и другой базы. У них даже размер не совпадает.
"Одна база" — эталон.
"Другая база" — получена (в данном случае) просто копированием каталога первой ("эталонной").
После создания "другой базы" был осуществлён вход в "одну базу" и выход из неё и в "другую базу" и выход из неё.
Всё делалось именно для того, что бы найти инструмент сравнения содержимого баз.
Как сравнить две базы 1с и выявить отличия и изменения
Обработка «Консоль сравнения данных из разных источников» написана замечательным программистом из Белоруссии Виталием Сертаковым (связаться с ним) и публикуется с его разрешения.
Описание
Обработка предназначена для сравнения данных, выбранных из разных источников: информационных баз 1С 8, баз данных SQL, файлов форматов CSV/TXT/DBF/XLS.
Реализован следующий функционал:
- Выполнение запросов к внешним информационным базам 1С 8 через COM;
- Выполнение запросов к базам данных SQL через COM/ADO/ODBC;
- Загрузка данных из файлов форматов CSV/TXT/DBF/XLS;
- Загрузка данных из табличного документа, расположенного на форме обработки;
- Возможны различные варианты соединения результатов запросов;
- Возможно соединение по простому и составному ключу из двух столбцов;
- Возможна фильтрация результатов сравнения.
Скачать подробное описание обработки в формате PDF можно здесь, кроме того описание обработки всегда можно почитать во встроенной справке с помощью клавиши F1.
Скачать
Вам нужно скачать её на рабочий стол.
Далее открыть её через меню Файл->Открыть (подробнее здесь Я скачал обработку, как мне её открыть в 1C?).
Благодарность
Виталий Сертаков сам связался со мной и совершенно бескорыстно поделился своими наработками. Поверьте, такое происходит не часто, поэтому я чертовски рад и благодарен ему за это
С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).
Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.
Как в 1С сравнить два документа, таблицы или две базы БП по ОСВ.
Например, когда кто-то меняет операцию прошлом периоде и у вас меняются остатки на счетах бухгалтерского учета. На поиск ошибки, порой уходит много времени.
В такой ситуации потребуется восстановить базу из ближайшего архива, сформировать в ней оборотно-сальдовую ведомость по всем счетам и сравнить ее с ОСВ из рабочей базы. Но если, в конце каждого дня делать ОСВ и сохранять ее в файл mxl, то восстановление из бекапа не потребуется.
MXL — это специальный формат программы 1с. Он описывает и сохраняет данные и структуру любого отчета в базе.
Конечно, вы могли бы сами искать ошибку, просматривая остатки на каждом счете, но с помощью инструмента 1С «Сравнение файлов это можно сделать гораздо быстрее. Поэтому, нам не придется самим сравнивать эти два файла «в ручную». Программа 1С сравнит их и подсветит все отличия, и в каких полях есть изменения.
Можете сохранять и сравнивать любые файлы из 1с, например, ведомость по банку на 500 листов. Просто, в конце каждого месяца, после сверки платежей делайте копию карточки 51 счета. Если слетят остатки, то сформируйте отчет, сохраните его и сравните с прошлыми файлами.
Как сравнить два документа в 1С?
Что бы сравнить два документа их нужно выгрузить в формате mxl. Этот формат можно открыть только в 1С. Давайте, посмотрим, как это сделать.
Формируем отчет ОСВ по всем счетам с начала года. Теперь, вверху нажимаем на вертикальные три точки, «Файл» — «Сохранить как». В открывшемся окне, в нижней строчке, выбираем — «Табличный документ mxl», даем название и сохраняем. Либо можно нажать сочетание клавиш «Ctrl + S».
Чтобы сравнить, вверху программы нажимаем на полоски или кружочек, в разных интерфейсах, по разному, это меню называется «Сервис и настройки». Далее, «Файл» — «Сравнить файлы».
У нас есть возможность сравнить текстовые документы, таблицы, сохраненные из 1С и двоичные данные. Выбрать вариант сравнения можно в нижней строке.
Мы будем сравнивать табличные данные, которые сохраняли из отчета. Поэтому, выбираем в первом реквизите архивный файл, а во втором актуальный.
Программа откроет окно сравнения и подсветит зеленым цветом новые данные. Мы видим сразу все изменения. Теперь очень легко можно найти расхождения и ошибки, если такие есть.
Сравнение и объединение конфигураций
Механизм сравнения и объединения конфигураций позволяет сравнивать между собой два прикладных решения и объединять их полностью или выборочно по результатам сравнения.
Такая возможность используется, например, когда одно прикладное решение разрабатывается несколькими независимыми разработчиками, или в случае, когда в исходную конфигурацию нужно загрузить сделанные изменения.
Этот механизм обеспечивает не только сравнение общих свойств объектов прикладного решения (справочников, документов и т. д.), но и сравнение их отдельных реквизитов, табличных частей. Также выполняется сравнение форм: сравниваются тексты модулей, тексты описаний и макеты.
Все результаты сравнения можно просмотреть в детальном виде.
Установка соответствия объектов
При запуске режима сравнения система анализирует сравниваемые конфигурации и устанавливает соответствие между объектами конфигураций, исходя из их имен:
Однако не исключена ситуация, когда одинаковые объекты прикладного решения будут иметь различные имена или наоборот, различные объекты будут называться одинаково. В этом случае разработчик имеет возможность отказаться от соответствий, установленных по умолчанию, и установить их вручную:
Сравнение конфигураций
Результат сравнения конфигураций отображается в специальном окне:
Разработчик имеет возможность настроить состав информации, отображаемой в этом окне. Возможен просмотр всех объектов прикладного решения, только отличающихся, только измененных, присутствующих только в какой-либо одной конфигурации или только неизмененных объектов.
Для каждого отличающегося объекта можно просмотреть детальную информацию об отличиях:
Кроме того, информация об отличиях может быть получена в виде отчета:
Объединение конфигураций
Для выполнения объединения конфигураций следует отметить те объекты прикладного решения, которые будут участвовать в объединении и установить режим объединения конфигураций.
Установка режима объединения конфигураций возможна как для всей конфигурации в целом, так и для каждого элемента прикладного решения в отдельности:
Варианты сравнения и объединения конфигураций
- основная конфигурация;
- конфигурация базы данных;
- конфигурация, сохраненная во внешнем файле;
- конфигурация поставщика.
Таким образом, например, возможно сравнение двух конфигураций, сохраненных во внешних файлах, или сравнение основной конфигурации с конфигурацией поставщика.
Сохранение / загрузка настроек объединения конфигураций
Настройки объединения конфигураций (или настройки обновления конфигурации на поддержке) можно сохранять в xml файл. Также доступна и обратная операция — загрузка этих настроек из файла.
Пакетный режим запуска конфигуратора также поддерживает использование настроек при объединении и обновлении конфигураций. Таким образом при объединении конфигураций, содержащих большое количество изменений, когда объединение выполняется регулярно, существует возможность полностью автоматизировать операции сборки конфигураций.
Использование внешней программы
Существует целый ряд сторонних специализированных программ, с помощью которых можно выполнять объединение модулей. Если недостаточно встроенных возможностей 1С:Предприятия, или если хочется использовать одну из сторонних программ, есть возможность подключить её в настройках конфигуратора и использовать для сравнения, настройки объединения и собственно объединения модулей конфигурации.
- Araxis Merge;
- DiffMerge;
- Kdiff3;
- TortoiseMerge;
- Perforce P4Merge.
При желании можно использовать и другие программы, которые поддерживают запуск из командной строки. Их параметры нужно добавить в настройки конфигуратора самостоятельно.