Универсальная сверка данных между разными базами 1С через веб-сервис

Публикация № 1478041 21.07.21

Администрирование - Администрирование данных 1С - Свертка базы

сверкаданных вебсервисы расширения

Сверяем данные. Механизм был создан для проверки корректности проведённой свёртки базы, хотелось сравнить свёрнутую облегчённую базу, где были удалены старые данные и введены остатки - с копией до работ. Базы большие, копия находилась на другом сервере, поэтому пришлось организовать сверку и сравнение данных по сети (через SOAP-вебсервис).

Суть

Вашему вниманию представляется механизм сравнения данных в различных базах 1С, расположенных на разных серверах (можно и на одном, конечно) через веб-сервис. Тестировалось в том числе и на больших объёмах данных. 

Цель

Основная цель разработки - сверить данные после свёртки баз/обрезки старых периодов. Создавалось сразу после методики быстрого удаления данных. Также можно использовать в любых других целях, когда нужно сравнить данные в разных базах. И неважно расположены они на одном сервере или на разных, имеют одну конфигурацию или разные, работают на одной платформе или разных - главное, чтоб одна из этих баз была доступна для второй через веб-сервер. Второй необходимый компонент - запросы, которыми Вы планируете сверять данные. То есть обработка не сверяет ВСЕ подряд данные в базе. А просто позволяет выполнить запрос в удалённой базе, потом в текущей базе, и сравнить результат. Примеры запросов в обработке приводятся, по образу и подобию можете добавить любые другие.

Требования

  1. В случае CF должна подойти любая 8.3
  2. В случае расширения - для добавления справочника нужна будет 8.3.11
  3. Из-за добавления справочника - потребуется монопольное (нединамическое) обновление. Если по каким-то причинам Вам неудобно добавлять справочник с параметрами подключения и хотелось бы например добавить разработку в свою базу без завершения сеансов пользователей - дайте мне знать любым способом, пожалуйста (в личку, либо в комментариях), оперативно сделаю вариант без справочника.

Устройство механизма

  1. Справочник для хранения параметров подключения к веб-сервису
  2. Веб-сервис для выполнения запросов, упаковки, сжатия и выдачи результата (в базе А)
  3. Обработка для обращения к веб-сервису (из базы Б) и сверки результатов запросов обеих баз
  4. Бантики
    1. Подсистема для удобства установки через CF и отделения объектов подсистемы в конфигураторе
    2. Стиль для приятного отображения

Варианты установки

  1. Механизм представляется в виде расширения. Так как расширение добавляет новые метаданные (справочник), то потребуется режим совместимости не ниже 8.3.11
  2. Для случаев, когда режим совместимости ниже 8.3.11 либо Вы по каким-то причинам не хотите подключать расширение, а планируете встроить разработку в основную конфигурацию - приводится альтернатива в виде CF

Оба варианта идут в одном архиве

 

Порядок установки в качестве расширения

  1. Подключаете расширение в обеих сверяемых базах
  2. В одной из баз запускаете Конфигуратор с правами администратора и публикуете веб-сервис, используя галку "Публиковать Web-сервисы расширений по умолчанию" (см скриншот)

Порядок установки через CF

  1. В обеих сверяемых базах делаем в Конфигураторе "Сравнить, объединить в конфигурацией из файла...", указываем скачанный CF, и делаем "Отметить по подсистемам из файла" 
  2. В одной из баз запускаете Конфигуратор с правами администратора и публикуете новый веб-сервис с префиксом "свд_" 

 

Подготовка и запуск

  1. Собираем ссылку на WSDL как http://имясервера/имяпубликации/ws/svd_unilink.1cws?wsdl
    где имясервера - говорит само за себя, если компьютер тот же - можно заменить на localhost,
    а имяпубликации - первый параметр с той же картинки, важно: чувствителен к регистру!
  2. Открываем ссылку в браузере, если получаем XML после ввода логина/пароля в базу - значит публикация прошла успешно!
  3. Идём во вторую базу, и заполняем справочник "Параметры подключения..", в качестве адреса указываем ссылку из прошлого пункта, логин, пароль в базу и тд 
  4. Пишем запросы, их лучше заранее подготовить в консоли запросов. Примеры под кнопкой "Заполнить запросы", как вариант: можно добавить в конфигураторе новые пункты под Ваши цели
  5. Открываем обработку "Выполнить произвольный запрос.."
    1. Выбираем параметры подключения (из п.5)
    2. Заполняем тексты запросов любым способом
    3. Указываем период (любые другие параметры можно аналогично Периоду добавить в Конфигураторе самостоятельно)
    4. Нажимаем большую кнопку
    5. Ожидаем выполнения запросов, передачи данных и сверки результатов
    6. Анализируем разницы (если они есть), но это уже другая история

Особенности использования

  1. Если в выходных полях запроса используются ссылки, а не только простые типы - обязательно нужно поставить галку "Упаковывать в хранилище"
  2. Работает на данный момент только на обычных формах

 

В качестве бонуса

 
Другой кейс использования сверки

 

Вместо эпилога

Конструктивную критику, вопросы и пожелания - прошу в комментарии!

Спасибо за внимание!

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

Наименование Файл Версия Размер
Универсальная сверка данных между разными базами 1С через веб-сервис:

.zip 68,61Kb
1
.zip 68,61Kb 1 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Xershi 1169 21.07.21 10:10 Сейчас в теме
Есть автор КСД руки не дошли у него до веба, туда бы прикрутить, цены бы не было.
2. METAL 133 25.07.21 20:11 Сейчас в теме
[+] Добавлена вторая обработка с дополнительным кейсом использования (подробней в описании публикации под катом)
Оставьте свое сообщение

См. также

daСклонение: склонение ФИО, должностей, чисел, прилагательных, существительных на языке 1С + ТестЦентр Промо

Универсальные функции v8 1cv8.cf Абонемент ($m)

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

1 стартмани

14.02.2015    112853    114    daMaster    90    

Обзор полезных методов БСП 3.1.4

Практика программирования БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

Библиотека стандартных подсистем (далее - БСП) является частью любой типовой конфигурации, поэтому умение применять готовые процедуры и функции повышает качество разработки и избавляет от написания лишнего кода. К сожалению, не у всех есть время и упорство овладеть всей документацией, поэтому я собрал воедино наиболее популярный функционал.

25.03.2021    27628    rayastar    49    

Сравнение реального дохода со средним доходом из API.HH.RU

Зарплата Управленческие v8 v8::СПР ЗУП3.x УУ Абонемент ($m)

Внешняя обработка на управляемой форме для 1С:Предприятие 8.3 по интеграции с HH.RU используя HH REST API. Ключевые функции: получение списка вакансий по должностям (Ключ для работы не нужен); расчет среднего дохода; Тестирование проводилось на платформе 1С:Предприятие 8.3 (8.3.13.1513) Зарплата и управление персоналом, редакция 3.1 (3.1.11.68) совместно с API.HH.RU.

1 стартмани

11.11.2019    5557    8    solaru    2    

Конфигурация для рекламного агентства

Управление услугами и сервисом Управление взаимоотношениями с клиентами (СRM) Производство готовой продукции (работ, услуг) Управление взаимоотношениями с клиентами (СRM) Производство готовой продукции (работ, услуг) v8 Реклама, PR и маркетинг УУ Абонемент ($m)

Данная конфигурация выполнена для решения тестового задания: Цель задания: 1) Понять, на каком из клиентов сколько мы заработали;  2) Понять, по какому виду СМИ сколько мы заработали;  3) Проследить по каждой услуге: у кого за сколько купили и кому за сколько продали, с возможностью перейти в соответствующий документ. Реализовано с помощью: 1. Справочники - контрагенты, номенклатура 2. Документы - Поступление услуг, реализация услуг 3. Отчеты - отчет по контрагентам, номенклатуре и движений.

1 стартмани

21.05.2019    7514    0    solaru    0    

Загрузка номенклатуры в УТ 10.3 из Excel файла с генерацией штрихкодов

Загрузка и выгрузка в Excel Обработка справочников Оптовая торговля Розничная торговля Учет ТМЦ Оптовая торговля Розничная торговля Учет ТМЦ v8 УТ10 Россия Абонемент ($m)

Обработка позволяет генерировать новые номенклатурные позиции на основе данных из файла Excel с последующей генерацией штрихкодов (ШК). Может быть полезна при больших поступлениях товаров на склад, где ручное создание и присваивание штрихкода  (ШК) может занимать много времени.

1 стартмани

24.03.2017    9077    7    solaru    0    

Под капотом управляемых форм

Практика программирования v8 1cv8.cf Бесплатно (free)

Управляемые формы уже давно и плотно вошли в жизнь 1С-разработчика. Однако, судя по недавним публикациям на Инфостарте, многие до сих пор мало знакомы с ними. Предлагаю разобраться с тем, что же это такое.

26.08.2013    285020    Evil Beaver    275    

[NotaBene] Универсальный отчет по таблице значений

Практика программирования v7.7 1cv7.md Россия Абонемент ($m)

1C v.7.7 Готовое решение. Не требует настройки. Не требует допрограммирования. Данная обработка решает часто встречающуюся задачу вывода в "красивом" виде таблицы значений (полученной, например, из запроса). Поддерживается произвольное группирование данных, отключение/включение группировок, в т.ч и создание "шахматок" (типа "продажи понедельно"). Обработка может использоваться как и в отладочных целях (для нормального просмотра ТЗ), так и в составе вполне рабочих отчетов. По крайней мере, я неоднократно клиентам данную обработку ставил вместо того, чтобы каждый раз писать замороченные выводы данных. И клиенты довольны, и мне - проще...

4 стартмани

07.05.2007    31425    2902    CheBurator    64