• 450098 г.Уфа
  • ул. Российская 157/2

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

4Статус: Готовое решение

Версия: 1.0

Платформа: DIRECTUM 4.7 - 5.0



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


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


*Под записью-дубликатом будем понимать запись, частично отличающуюся в содержательной части или идентичную записи-оригиналу, но при этом запись-дубликат и запись-оригинал – это совокупность сведений об одном и том же объекте.


Появление записи-дубликата в информационной системе может произойти по двум основным причинам:

  • ошибка при вводе данных оператором системы;
  • создание дубликата при импорте данных в систему.

В DIRECTUM наиболее вероятно появление записей-дубликатов в следующих справочниках: Персоны, Работники (для крупных организаций), Контактные лица организации, Организации.


Решить проблему наличия записей-дубликатов в справочниках в стандартной поставке системы DIRECTUM можно двумя способами:

  • установка ссылки в записи-дубликате на запись-оригинал;
  • удаление записи-дубликата.

Ссылка в свойствах записи-дубликата на запись-оригинал


Основная последовательность действий при этом способе представлена на рисунке 1.


7

Рис. 1. Установка ссылки записи-дубликата на запись-оригинал с использованием стандартных средств DIRECTUM.


Данный способ логично применять, когда запись-дубликат необходимо оставить в информационной системе, например для предметного историзма. В этом случае DIRECTUM будет выдавать стандартное предупреждение о наличие записи-оригинала при выборе записи-дубликата непосредственно из справочника.


Удаление записи-дубликата


Основная последовательность действий при этом способе представлена на рисунке 2.


72

Рис. 2. Удаление записи-дубликата с использованием стандартных средств DIRECTUM.


Главным недостатком обоих способов является неавтоматизированный поиск всех связей записи-дубликата с другими записями справочников системы и неавтоматизированная замена их на связи с записью-оригиналом. Соответственно решение проблемы наличия записей-дубликатов в справочниках в стандартной поставке системы DIRECTUM – очень трудоемкая задача. Кроме того, ручной поиск связей не гарантирует полную его достоверность. Оператор может пропустить связь по невниманию или специально, или задать неточный критерий поиска или фильтрации.


Исходя из вышесказанного, в информационной системе необходимо наличие механизмов, которые бы частично автоматизировали и упростили процесс поиска и замены связей записей-дубликатов. Одним из таких механизмов является «Механизм закрытия дубликатов значений справочников», разработанный МУП «МИТЦ», который полностью устраняет перечисленные недостатки стандартных способов, т.е. автоматизирует процессы поиска и замены связей записей-дубликатов с записями справочников системы (см. рис. 3).

7

Рис. 3. Замена записи-дубликата на запись-оригинал при использовании компоненты DIRECTUM «Механизм закрытия дубликатов значений справочников».


Назначение компоненты


  • Упрощение поиска и замены связанных записей справочников при закрытии дубликатов;
  • Снижение вероятности ошибки при замене связанных с дубликатом записей за счет возможности просмотра найденных связей;
  • Значительное сокращение времени на удаление записей-дубликатов;
  • Повышение качества данных в информационной системе;
  • Рациональное использование вычислительных ресурсов.

Описание алгоритма работы компоненты

 Механизм закрытия дубликатов значений справочников состоит в следующем:

  • Выбор записи-дубликата и записи-оригинала объекта;
  • Автоматический поиск всех записей в справочниках системы, связанных с записью-дубликатом;
  • Просмотр карточек всех найденных записей справочников системы при необходимости;
  • Автоматическая замена всех связей записей справочников с записью-дубликатом на связи записей справочников с записью-оригиналом;
  • Закрытие записи-дубликата.

Пример использования компоненты


В качестве примера реализации механизма можно рассмотреть справочник «Персоны». В карточке Персоны дополнительно была создана кнопка «Удаление дубликата» (см. рис. 4).

7

Рис. 4. Реализация технического решения «Механизм закрытия дубликатов значений справочников» в справочнике «Персоны».


При обнаружении записи-дубликата справочника «Персоны», необходимо открыть ее карточку и нажать на кнопку «Удаление дубликата».

При этом появляется окно с перечнем всех записей справочников системы DIRECTUM, связанных с данной записью-дубликатом (см. рис. 5).

7

Рис. 5. Перечень всех записей справочников, связанных с удаляемой записью-дубликатом справочника «Персоны».


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


После просмотра карточек записей справочников, в которых будут замещаться связи на другую персону, вновь откроется перечень записей справочников системы, связанных с удаляемой персоной (см.рис. 5). При выборе действия «Заменить ссылки» обязательно указывается персона–оригинал, на которую мы меняем дубликат (см. рис.6).


7

Рис. 6. Выбор записи-оригинала, на которую меняем запись-дубликат справочника «Персоны».


Таким образом, все записи справочников системы, которые ранее были связаны с дубликатом, теперь ссылаются на оригинал. Пользователю выдается диалог выбора, в котором он может закрыть запись-дубликат или оставить ее действующей. В случае подтверждения закрытия статус записи-дубликата автоматически становится «Закрытый». Заключение


Компонента «Механизм закрытия дубликатов значений справочников» способствует поддержанию качества данных в системе DIRECTUM на высоком уровне, при минимизации затрат на это. При её использовании появляется возможность автоматизировано закрывать записи-дубликаты:


  • без нарушения их связей с другими записями справочников системы, что сохраняет целостность базы данных;
  • без ручной замены ссылок записей справочников системы на записи-дубликаты;
  • без потенциально возможного пропуска записей справочников системы, ссылающегося на выбранную запись-дубликат.

Таким образом, время на процедуру закрытия записей-дубликатов справочников значительно сокращается, а сама процедура закрытия дубликатов значительно упрощается. Этот механизм наиболее актуален для справочников с большим числом активных записей, формируемым значительным количеством пользователей.