Руководство по эксплуатации : RC: Сопоставление записей вручную


RC: Сопоставление записей вручную
Сопоставление данных вручную
В случаях, когда это необходимо, для универсального списка может быть настроен способ сопоставления "Вручную". Для таких списков, страница просмотра записей имеет вид:

Где,
•Блок фильтрации записей (поиск)
•Блок сопоставления
•Информационный блок
•Блок выделения группы записей
•Часть таблицы с исходными данными
•Часть таблицы с сопоставленными данными
Реализация
Сопоставление - процесс нахождения соответствия каких-либо данных (наборов данных) поступивших извне системы - данным внутри системы. Например, поиск соответствия Города, Улицы, Дома, ЛС и т.д.
Процесс сопоставления разбивается на некоторые этапы, соответствующие минимальным порциям сопоставляемых данных. Так, для того, чтобы, в конечном итоге, сопоставить (найти) ЛС по адресу, необходимо последовательно сопоставить Город, Улицу, Дом, Квартиру.
Для каждого этапа настраиваются правила сопоставления в виде инструкций на языке SQL. Условно правила для каждого этапа существуют в двух вариантах:
•Уточненный, используется для условно более точного поиска, позволяющего снизить количество возможных значений, опираясь на исходные данные, до минимума.
•Упрощенный, используется, когда уточненный поиск не дал результатов.
Ручное сопоставление реализовано путем указания пользователем одного из нескольких возможных значений сопоставляемого поля выбранной (указанной) записи.
Последовательность прохождения этапов сопоставления обеспечивается заранее определенной связи между этапами. Так, Улица не может быть сопоставлена до того, как станет известен Город, Дом не может быть сопоставлен до тех пор, пока не станет известна Улица, Поставщик не может быть определен до нахождения принадлежности к УК и т.д. При этом, обеспечивается также непротиворечивость сопоставления, а именно, удаление зависимых результатов сопоставления при изменении родительского. Например, если при уже сопоставленном Доме, изменить Улицу, то результаты сопоставления Дома, будут удалены.
Блок сопоставления
Имеет вид:

Сопоставление производится путём выбора из доступных к сопоставлению названий полей таблицы с сопоставляемыми данными и указания конкретного значения, которое будет установлено для указанного набора записей.
Набор записей определяется переключателем "Применить":
•Ко всем. Выбранное значение будет установлено у всех записей, подпадающих под условия,выбранные в блоке фильтрации записей и допускающим действие "Сопоставить"(определяется на основе настроек переходов состояний записей)
•К выбранным на странице в блоке выделения группы записей. Выбранное значение будет установлено у записей, выбранных только на, отображаемой в данный момент, странице(порции записей), независимо от выбора записей на других страницах.
Возможные поля для сопоставления и набор возможных значений для выбранного поля, определяются на основе настроек сопоставления и указанного набора записей, следующим образом:
•Просматриваются все записи из набора к изменению, и определяется общий набор сопоставленных полей. Окончательный набор возможных полей для сопоставления будет являться объединением общего набора и следующих (согласно настройкам связей) полей.
•По выбранному полю просматриваются все записи из набора записей для сопоставления и выбираются все доступные значения (результат выбора), по каждой записи в отдельности.Итоговым набором возможных значений будет являться объединение результатов выбора по всем записям.
Если в наборе записей для сопоставления, присутствуют записи, не допускающие действия "Сопоставить", то такие записи не участвуют в поиске значений и к ним не применяется сопоставление.
При ручном сопоставлении, согласованность данных обеспечивается пользователем. Так, если в наборе данных будет присутствовать две записи со значениями поля "Город": Ашхабад и Мары, и будет производиться сопоставление улицы, то пользователь сможет выбрать улицу одного из городов, а сохранить значение в обе записи. Таким образом нарушится согласованность между значениями поля "Город" и поля "Улица" для обозначенных записей.
Фильтрация данных
Фильтрация данных обеспечивается блоком поиска (1),

Набор фильтров определяется индивидуально для каждого списка. Набор возможных значений в фильтрах определяется на основе записей списка, как объединение значений соответствующих полей записей списка.
Связи данных
Данные о связях между сопоставляемыми полями используются для удаления значений зависимых полей при обновлении родительского. Хранятся в специальных структурах БД, могут быть выведены в интерфейс пользователя. Частично используются для реализации автоматического сопоставления.

Вы нашли эту статью полезной?