gifts2017

Универсальное сопоставление двух баз различной структуры

Опубликовал Осипов Сергей (fixin) в раздел Отчеты - Анализ учета

Обработка позволяет сопоставить две базы, не обязательно идентичной конфигурации. Правила сопоставления задаются в виде таблицы, что намного проще изучения конвертации данных.

Используется на практике, проверено.

Сопоставление ведется через COM-соединение, в планах - сравнение выгруженных в файл данных, для удаленных баз данных.

Прилагаю готовые правила для сопоставления УТ и Розницы.

 

Скачать файлы

Наименование Файл Версия Размер
Обработка 81 119
.epf 26,78Kb
01.12.11
119
.epf 26,78Kb Скачать
Правила сопоставления Розницы с УТ 35
.mxl 15,59Kb
01.12.11
35
.mxl 15,59Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Игорь Исхаков (Ish_2) 01.12.11 18:15
С начинанием !
Даже не смотрел. Кажется по постановке , такая задача уже встречалась.
2. Осипов Сергей (fixin) 01.12.11 18:25
(1) Не уверен, что встречалась. Но буду рад потягаться качеством.
3. Игорь Исхаков (Ish_2) 01.12.11 18:30
(2) Поиск вел по фразе "сравнение баз" пока ничего похожего.
4. Осипов Сергей (fixin) 01.12.11 18:34
в качетсве прикола расскажу, что потерял готовую обработку, но осталась версия 50% готовности. Скрепя сердце, таки ее написал повторно, т.к. очень нужна на практике, особенно там где идут обмены УТ-Бух или РТ-УТ.
5. anry mc (AnryMc) 01.12.11 18:39
(0) А почему "Буриданов осёл"?
6. Роман Романов (romansun) 01.12.11 18:47
(5)
ну типа - изучать КД-не изучать КД, изучать-не изучать..

а тут ррраз - и эта обработка :)

По публикации - люблю простые обработки, даже если уже и написано пятьсот суперкомбайнов. Как буду что-нить сравнивать, обращу внимание, спасибо.
7. Vladimir (Boroda) 01.12.11 19:09
А правила для других, кроме УТ-Бух или РТ-УТ, конфигураций в перспективе ожидаются? Или обработка их сама формирует, на основании каких-либо заданных условий?
И преимущества перед Конвертацие данных?
8. Игорь Исхаков (Ish_2) 01.12.11 19:55
9. Сергей Рудаков (fishca) 01.12.11 20:04
Ура! "Карлсон" вернулся :)
10. Осипов Сергей (fixin) 02.12.11 00:03
(9) привет, Малыши!
(6) КД изучать однозначно. Уж сколько я от нее открещивался, но если начинаете работать во франче, самое оно...
(5) не знаю, на тему "сравнения" картинок не нашел, пришлось использовать тему "выбора", там тоже знаете ли идет постоянное сравнение.
(7) У меня есть правила УТ-УТ, где-то завалялись правила УТ-Бух, попробую все это выложить. Но эти правила тривиальны, вы сами можете их набросать по аналогии. Все же это тулза для программистов. А насчет преимуществ перед КД - это вы о чем? КД уже умеет СРАВНИВАТЬ базы?
11. Игорь Исхаков (Ish_2) 02.12.11 08:23
(10) А мне удалось отбиться. Не знаю КД.
12. Осипов Сергей (fixin) 02.12.11 11:14
(11) Ну это до поры до времени. Типовые обмены данными между УТ и Бух и другими неоднородными конфами написаны на КД, так что хочешь не хочешь, а хотя бы поверхностно (на уровне сопровождения, а не создания правил обмена) знать придется.
13. Александр Никонов (sandro1) 19.12.11 11:27
14. Мастер Йода (master_yoda) 11.01.12 13:12
15. Miffka (mikhailv) 04.06.12 18:00
Большое спасибо автору! Интересная и очень полезная обработка. Из плюсов хотелось бы отметить универсальность (даже вычисления над данными поддерживаются), интуитивную понятность правил (примеры качать обязательно!) и наглядность.
Среди минусов:
- сравниваются только документы (легко исправляется копипастом для справочников)
- довольно долго работает, т.к. метод ".выбрать", но это видимо плата за универсальность.

Также большая просьба дополнить обработку на тему условных обозначений: вызвало затруднение сразу понять, что означает "Т" и "Б". Оказалось, "Т" - текущая, "Б" - удалённая. Можно отметить это в надписях к строкам соединений, тогда будет понятно, мне кажется.
Это же касается и легенды к цветовому обозначению.

В целом - зачётно!
16. Осипов Сергей (fixin) 04.06.12 18:58
(15) спасибо за дельные советы. На дооформление, увы, пока что нет времени.
Выбрать конечно же можно заменить запросом, если имеет смысл.
Вообще я хотел делать не только через ком-соединения, но и через выгрузку данных из базы в файлы.
Тогда можно было на удаленных базах запускать, а потом в центре сравнивать.
Но так и не доковырял для файла. Дерзайте, ныне ободренны, Фиксина чтобы перегнать.
17. Осипов Сергей (fixin) 17.07.12 12:36
Вот такой примерно код можно использовать для автоматического запуска сопоставления и рассылки его почтой:

О = САП.ДатьВнешнююОбработку("Сопоставление объектов");
Ф = О.ПолучитьФорму(); 
Ф.Открыть();
О.ИмяФайлаНастроек = "d:\1c\Обработки\Сопоставление баз\Сопоставление объектов в Рознице с УТ.txt";
О.флНастройкиШапка = истина;
Ф.ЗагрузитьСохранитьНастройки(истина); //Загрузка
//О.Дата1 = '00010101'; //с начала времен
О.Дата1 = НачалоДня(ТекущаяДата()) - 3600*24*365; ; //за год
О.Дата2 = НачалоДня(ТекущаяДата()) - 3600*24*2; //минус два дня...
//Ф.Дата1 = Ф.Дата2; //для отладки
Ф.КнопкаВыполнитьНажатие(Неопределено); 

ТабДок = Ф.ЭлементыФормы.Результат;
ЗаписьЖурналаРегистрации("Отладка.Сопоставление",,,,"Сформирован отчет по сопоставлению");
ИмяФайла = ПолучитьИмяВременногоФайла("XLS");
ЗаписьЖурналаРегистрации("Отладка.Сопоставление",,,,"Устанавливаем флаг разрешения вывода: " + ТабДок.Вывод);
ТабДок.Вывод = ИспользованиеВывода.Разрешить;  //
ЗаписьЖурналаРегистрации("Отладка.Сопоставление",,,,"Установлен флаг разрешения вывода: " + ТабДок.Вывод);
ТабДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.XLS);
ИмяАрхива = ПолучитьИмяВременногоФайла("ZIP");
САП.УпаковатьФайлВZIP(ИмяФайла, ИмяАрхива);

Получатели = "1s@domen.ru";
САП.ОтправитьПисьмо(, Получатели, "Сопоставление объектов Розницы и УТ за период с " + Формат(Ф.Дата1, "ДФ=dd.MM.yyyy") + " по " + Формат(Ф.Дата2, "ДФ=dd.MM.yyyy") , "Смотрите отчет в приложенном XLS-файле", ИмяАрхива);

...Показать Скрыть
18. ivanov660 ivanov660 (ivanov660) 22.07.13 17:19
Мне кажется не хватает алгоритма проведения вышеуказанной манипуляции. Без общего описания не вижу смысла качать.
19. Осипов Сергей (fixin) 22.07.13 17:35
(18) да, это обработка для продвинутых программистов. ;-)
гыгыгыгы
20. ivanov660 ivanov660 (ivanov660) 24.07.13 01:11
И что? Без "ста грамм" не разберешься ;-)
На нет и суда нет...
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа