Как сравнить документы в двух базах? #109560


#0 by Oleg_SK
Привет всем! Я первый раз на этом форуме, и надеюсь что не в последний :-) Помогите начинающему. У меня есть две базы. По идее они должны быть одинаковые, но есть подозрение, что это не так. Похоже, что во второй базе бухи изменили содержимое каких-то док-тов. Нужно как-то сравнить эти базы между собой и найти те доки, содержимое которых отличается. Подскажите, плиз, как это можно сделать? З.Ы.: Речь идет о базах для 1С-Предприятие v7.7.
#2 by Oleg_SK
Crew, спасибо за ваш ответ. Как я понял, эта тулза синхронизирует базы. Это несовсем то, что мне требуется. Мне нужно найти доки, в которые были внесены изменения.
#3 by ккккккк
пиши обработку, я в текст выгружал из одной базы, а вдругой анализировал, ещё по оле можно.
#4 by Oleg_SK
ккккккк, спасибо за ваш ответ. Да, я тоже подумал об этом. Проблема в том, что реквизиты док-тов могут иметь типы каких либо справочников и док-тов. Я не знаю как мне преобразовать значения таких реквизитов в форму текста...
#5 by Oleg_SK
Я поня как можно преобразовать значение таких реквизитов в форму строки. Для этого можно использовать функцию: ЗначениеВСтроку.
#6 by Oleg_SK
По ходу написания обработки для выгрузки содержимого документов в объект "Текст". Появилась другая проблема. Дело в том, что я сделал цикл выборки документов всех видов за определенный период. Таким образом, я не знаю документ какого вида выбран на любой взятой итерации этого цикла, и соответственно не знаю состав реквизитов этого док-та. Как мне теперь обойти все реквизиты (т.е. и шапки, и таблицы) док-та произвольного вида и получить их значения? Можно конечно проверять вид и организовать отдельную обработку для каждого вида док-тов, но это геморно, т.к. их видов много и реквизитов у каждого вида тоже много. Можно ли как-то организовать обход реквизитов док-та не зная их состава и получить их значения?
#7 by ккккккк
метаданные
#8 by zzzzz
Не мучайся. Сделай по оле. Работает команда ТипЗначенияСтр,Вид и т.д. Элементы справочника - по уникальность. (код или что там), доки - по номерам и времени (могли просто изменить порядок доков, а НДС поплыла, так что лучше делать выборку документов и сразу сравнивать порядок. Получил из одной базы док - получаешь из другой и сравниваешь, тот ли док получил) Просто условий такая куча.
#9 by Долорес Ибаррури
Если база дбф, и предполагаемых изменений действительно немного, можно снначала сравнить содержимое их каталогов, например, в фаре, а потоом уже разбираться с различающимися дбф-ами.
#10 by Долорес Ибаррури
а для пущей уверенности можно прогнать все файлы через fc
#11 by Crew
А если подумать? Выкачать и попробывать?
#12 by zzzzz
Я подобные сравнения делаю для сегодняшней базы и архива. Чтобы увидеть кто и с чем напортачил. У примерно такая же задача.
#13 by Oleg_SK
Все, проблема решена. Всем спасибо за помощь! Особую благодарность я хочу выразить  Crew, который (-ая) избавил меня от работы связанной с написанием обработки. Мне пришлось только немного модифицировать обрабртку на которую он дал линк.
#14 by Oleg_SK
Похоже эта тема еще не исчерпана. Обработка, на которую дал линк Crew, конечно очень полезная, но не до конца проработанная... Сейчас, по мере возможностей, я подогняю ее под себя. По ходу этого дела, наткнулся на баг с которым не могу справиться своими силами. Баг заключается в следующем: в таблице выбора документов для синхронизации предусмотрена возможность двойным щелчком мыши открыть форму нужного док-та. Так вот, для док-тов принадлежащих той базе, в которой была запущена эта обработка эта возможнасть работает прекрасно, а для док-тов из той базы, c которой установлена связь через OLE эта фишка почему-то не работает:( Немогу понять почему... Вроде-бы все делается правильно. Помогите, плиз, разобраться с этим. Сам я впервые столкнулся с OLE. Смотрел под отладчиком, все вроде бы работает нормально, но форма док-та не открывается.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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