Замена дублей партнеров и контрагентов по телефону УТ 11.4
У клиента используется соответствие 1:1 контрагентов и партнеров. Все телефоны предварительно приведены к единому формату.
Написал обработку, которая копирует телефон партнера в поле «Дор ключ для свертки», проставил это поле, запустил поиск дублей по этому полю:
Нашлось 77 дублей:
Предварительно делаю копию базы скриптом SQL, уже сколько раз спасало:
BACKUP DATABASE [trade_wrk] TO DISK = N'C:\Backup\\sql 25-01-1001 tmp.bak' WITH NOFORMAT, NOINIT, NAME = N'trade_wrk-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10
GO
Далее по классике. Убираю из списка найденных групп явно ошибочные номера, запускаю автоопределение правильных элементов и замену во всех группах. Выполняю замену и удаление помеченных.
Это надо сделать оперативно, чтобы в базе не было партнеров, содержащих одинаковые телефоны, а то может случайно опять не туда привязаться при загрузке заказов с сайта. Хотя я сделал доработку в коде, чтобы помеченные на удаление не учитывались при поиске контрагентов.
Потом повторяю поиск помеченных на удаление. Контрагенты тоже привяжутся к одному партнеру.
Вот тут можно найти дубли уже контрагентов — по одинаковому значению партнера:
1С находит 236 дублей контрагентов. Сортирую по количеству элементов в группе. Большие группы убираю из замены. С ними лучше поработать отдельно.
Заменяю дубли контрагентов.
Удаляем помеченные объекты.
Среда: УТ 11.4.13.46 Объем: 2 час.
Свежие комментарии