Дорый день!
Как можно создать новое правило для поиска дублей для контрагента? Мне нужно к списку полей, по которым уже производится поиск, добавить свое поле.
Нравится
Есть такой пример:
Добавление правила поиска Контрагентов по названию
Пользовательскими средствами реализовать невозможно. Однако, разработчик может создать свои правила поиска дублей по аналогии с тем, как реализованы стандартные правила на уровне базы данных (найти их можно в хранимых процедурах FindAccountDuplicate(для контрагента) и FindContactDuplicate(для контакта)).Добавить запись в таблицу DuplicateRule:
INSERT INTO DuplicatesRule (Name, IsActive, ObjectId) VALUES ('Account duplicates. Account name', '1', '25D7C1AB-1DE0-4501-B402-02E0E5A72D6E')2. Изменить хранимую процедуру tsp_FindAccountDuplicate (если правило поиска дублей для контакта, то менять tsp_FindContactDuplicate)(во вложении находится пример измененной хранимой процедуры tsp_FindAccountDuplicate):
Объявить правило AccountName, указать Id с таблици DuplicatesRule:
Добавить описание работы правила AccountName:
"Зверев Александр" написал:Есть такой пример:
Цитата:
Добавление правила поиска Контрагентов по названию
Пользовательскими средствами реализовать невозможно. Однако, разработчик может создать свои правила поиска дублей по аналогии с тем, как реализованы стандартные правила на уровне базы данных (найти их можно в хранимых процедурах FindAccountDuplicate(для контрагента) и FindContactDuplicate(для контакта)).Добавить запись в таблицу DuplicateRule:
INSERT INTO DuplicatesRule
(Name,
IsActive,
ObjectId)
VALUES
('Account duplicates. Account name',
'1',
'25D7C1AB-1DE0-4501-B402-02E0E5A72D6E')
2. Изменить хранимую процедуру tsp_FindAccountDuplicate (если правило поиска дублей для контакта, то менять tsp_FindContactDuplicate)(во вложении находится пример измененной хранимой процедуры tsp_FindAccountDuplicate):
Объявить правило AccountName, указать Id с таблици DuplicatesRule:
Добавить описание работы правила AccountName:
Прикрепленный файлРазмер
1.png
32.16 кб2.png
46.68 кб3.png
135.54 кбtsp_findaccountduplicate.zip
2.45 кб
Спасибо! А это будет работать при добавлении новой записи контрагента?
Это 2 разных механизма, глобальный и локальный поиск. Эти правила — только для глобального. А для локального:
Поиск дублирующихся записей при сохранении страницы контрагента или контакта (локальный поиск дублей) производится по следующим полям:•При сохранении нового контрагента — по полям [Название], [Альтернативное название] и детали [Средства связи].
•При сохранении нового контакта — по полям [ФИО], [Мобильный телефон], [Домашний телефон], [Skype], [Email].
"Зверев Александр" написал:Это 2 разных механизма, глобальный и локальный поиск. Эти правила — только для глобального. А для локального:
Цитата:
Поиск дублирующихся записей при сохранении страницы контрагента или контакта (локальный поиск дублей) производится по следующим полям:
•При сохранении нового контрагента — по полям [Название], [Альтернативное название] и детали [Средства связи].
•При сохранении нового контакта — по полям [ФИО], [Мобильный телефон], [Домашний телефон], [Skype], [Email].
А не подскажете, как при локальном поиске добавить еще свое поле?
Возможно, нужно дорабатывать хранимку tsp_SearchForAccountDuplicates (список параметров очень похож на цитату выше). Но не факт, надо смотреть, где она вызывается в конфигурации.
Здравствуйте! Я на 3.x делаю доработки по дублям, процедуру я поменяла, в верхней таблице списка дубликатов сам список дублей хорошо отображается, изменила отображение деталей (фильтры не по равенству, а на включение (содержит ..)). Единственное что не получается - пересчитать количество дублей в верхней таблице. Буду благодарна советам ) спасибо!
Здравствуйте, Светлана!
Для того, чтобы понять в чем заключается ошибка и почему неверное считается количество дублей, запустите debugger и отладьтесь в окне мастера поиска дублирующихся записей.
Это окно в конфигурации называется wnd_ViewSearchResult.
в этом окне и меняла скрипты, не могу найти сам подсчет.. с террасофтом работаю недавно, и возможно упускаю нужный кусок, дебаггером отследить не получается, так как на момент отображения таблицы там уже есть проставленное количество.
Светлана, в этой теме обсуждается работа с дублями в 7.Х, она полностью отличается от того, что было в 3.4. Попробуйте задать свой вопрос в нужной ветке, подробно описав со скриншотами и листингами, где и что Вы меняете, что хотите получить, как работает сейчас и что в этом не устраивает.