Поиск по связанным сущностям
Стандартный Finder позволяет искать данные в рамках одной сущности, но не всегда этого достаточно для того, чтобы в кратчайшие сроки найти конкретную информацию. Для более точного поиска в технологической платформе Sherp реализован Finder, позволяющий искать сведения с использованием данных из связанных сущностей. Пример его применения представлен в этой статье.
В одном из наших проектов мы столкнулись со следующей задачей: необходимо узнать логин пользователя, удалившего определенный документ. Известно имя датаблока удаления, временной промежуток, в который был удален документ, а также ID и тип документа.
Данные, хранимые в рамках сущности «Лог датаблоков» не включают в себя параметры самих датаблоков. Таким образом, для поиска данных по логу датаблоков в стандартном Finder’е мы можем указать «Имя датаблока» и диапазон дат:
С использованием этих параметров поиска получим следующий результат:
Среди отфильтрованных записей присутствует нужная, но для того, чтобы её найти, потребуется вручную перебирать строки, просматривая параметры датаблоков.
В «Расширенном поиске» возможно задать критерии для поиска также по параметрам из связанных сущностей. Для того, чтобы воспользоваться расширенным поиском, необходимо выбрать соответствующий Finder:
Для поиска по основной сущности укажем наименование датаблока и временной диапазон.
Если выполнить поиск с указанием только этих критериев, то результат получим аналогичный предыдущему.
Так как нам известен также ID документа, дополнительно укажем его. Для этого на форме «Расширенный поиск по логу датаблоков» выберем в меню слева пункт «Параметры» с пометкой «Включая», а в области справа введем известные нам данные:
В результате отобразится окно «Лог датаблоков», содержащее искомые сведения:
Таким образом реализована возможность поиска необходимой информации по связанным сущностям в логе датаблоков. Создание подобного Finder’а возможно также и для поиска других данных в местах, где это может потребоваться.
0 комментариев