Поиск объекта по идентификатору#

Система позволяет найти объект по его глобальному идентификатору (GID), который имеет формат: [идентификатор класса]/[идентификатор объекта].

Чтобы найти объект, в любом приложении выберите пункт меню:
Сервис > Поиск по глобальному идентификатору.

Откроется окно ввода:

3

После ввода GID система открывает карточку объекта. Если объект не найден, отображается сообщение об ошибке.

Открытие карточки объекта по параметрам#

Карточку объекта можно открыть по внешней ссылке с параметрами поиска. При переходе по такой ссылке механизм Btk_UrlObjectFinder автоматически обрабатывает URL-запрос, извлекает параметры, находит объект в базе данных и открывает его карточку.

Механизм работает автоматически при переходе по ссылке. У него нет пользовательского интерфейса, и он не предназначен для ручного запуска.

URL для открытия карточки можно сформировать с помощью метода Btk_UrlObjectFinderPkg#createExternalCardUrl().

Поиск поддерживает любое количество параметров, пока не превышена максимальная длина URL. Рекомендуемая длина URL — не более 1024–2048 символов.

Пример URL:

https://example.ru:8080/PGDEV/gtk-ru.bitec.app.btk.utils.Btk_UrlObjectFinder%23UrlFinder/?ex;sTableName_dz=Bs_Performer&ex;id=1234

В примере:

  • example.ru — доменное имя сервера;

  • 8080 — порт сервера;

  • PGDEV — рабочая база;

  • Btk_UrlObjectFinder%23UrlFinder — выборка и отображение, через которые выполняется открытие карточки;

  • sTableName_dz=Bs_Performer — имя таблицы или объекта, в котором выполняется поиск;

  • id=1234 — параметр поиска.

При переходе по этой ссылке система выполнит поиск объекта в таблице Bs_Performer по атрибуту id со значением 1234 и откроет карточку найденного объекта.

Внимание

Имя таблицы должно быть указано с учетом регистра.

Например, нужно указывать Btk_UrlObjectFinder, а не btk_urlobjectfinder.

Параметры поиска#

Параметры поиска передаются в URL как пары <FieldName>=<Value>.

Первый параметр передается после ?ex;, каждый следующий — после &ex;.

Если в URL передано несколько условий, они объединяются логической операцией AND. Карточка открывается только для объекта, который соответствует всем переданным условиям.

Примеры параметров поиска:

  • Bs_Performer.id=1234 — поиск по атрибуту связанной коллекции Bs_Performer;

  • gidsrcobj=1/1 — поиск по атрибуту объекта;

  • dEnd=07.07.1997 — поиск по дате.

Примечание

Названия атрибутов регистронезависимы.

Формат дат#

Для поиска по дате используются следующие форматы:

  • дата — ДД.ММ.ГГГГ;

  • дата и время — ДД.ММ.ГГГГ ЧЧ:ММ:СС.

Примеры:

  • 22.03.2007;

  • 23.02.2023 16:25:01.

Поиск по атрибутам связанных таблиц#

При открытии карточки по параметрам можно искать основной объект не только по его собственным атрибутам, но и по атрибутам связанных таблиц.

Для этого используется точечная нотация:

<связанная-таблица>.<атрибут>=<значение>

Пример:

http://<host>:<port>/<cluster>/gtk-ru.bitec.app.btk.utils.Btk_UrlObjectFinder%23UrlFinder/?ex;sTableName_dz=Bs_Contras&ex;Bs_ContrasRWStation.idRailwayStation=2701234677

В примере система ищет объект Bs_Contras, у которого в связанной таблице Bs_ContrasRWStation есть запись с атрибутом idRailwayStation, равным 2701234677. После нахождения объекта открывается карточка Bs_Contras.

Открытие карточки объекта по GID#

Карточку объекта можно открыть по ссылке, в которой передан глобальный идентификатор объекта (GID). Такой способ используется, когда нужно перейти к конкретному объекту напрямую, без ручного поиска в интерфейсе.

При переходе по ссылке система определяет объект по параметру gid и открывает его карточку.

Пример URL:

http://<host>:<port>/<cluster>/gtk-ru.bitec.app.btk.Btk_OpenByGid%23Card/?ex;gid=1260600/27213

В примере:

  • <host> — доменное имя или IP-адрес сервера;

  • <port> — порт сервера (необязательно);

  • <cluster> — рабочая база;

  • gtk-ru.bitec.app.btk.Btk_OpenByGid%23Card — выборка и отображение, через которые открывается карточка объекта;

  • gid=1260600/27213 — глобальный идентификатор объекта.

Готовую ссылку на текущий объект можно получить из окна Информация об объекте.

Путь: Информация > Информация об объекте.

Также окно можно открыть сочетанием клавиш Ctrl + Alt + I.

В окне Информация об объекте ссылка находится в поле Гиперссылка на экземпляр БО. Ее можно скопировать и использовать для прямого перехода к карточке объекта.

Структура запроса#

http://<host>:<port>/<cluster>/gtk-ru.bitec.app.btk.Btk_OpenByGid%23Card/?ex;gid=<gid>
  • <host> — доменное имя или IP-адрес сервера.

  • <port> — порт сервера (не обязательно).

  • <cluster> — рабочая база.

  • gtk-ru.bitec.app.btk.Btk_OpenByGid%23Card — выборка и отображение сервиса.

  • gid=<gid> — глобальный идентификатор объекта (например: gid=1260600/27213).