Из БД $irbDb читается запись с mfn $mfn.
Из ini-файла читается [SEARCH] SCNTNUMB. Если значение == 0 - возвращается сообщение об ошибке.
Ini-файлы просматриваются в следующем порядке (пока не встретится ini-файл у которого [SEARCH] SCNTNUMB != 0):
ini-файл БД
- ini-файл АРМ
- modules/Ini/DefaultSearch.ini
Далее просматриваются все [SEARCH] ScntName{i}, где {$i} - номер по порядку от 0 до [SEARCH]SCNTNUMB-1
Для каждого поиска по связи читаются:
- [SEARCH] SCNTPREF{$i} - Префикс для поиска записей
- [SEARCH] SCNTSUFFIX{$i} - Суффикс для поиска записей
- [SEARCH] SCNTLOGIC{$i} - Логика объединения с поиском
- [SEARCH] SCNTFORMAT{$i} - Формат
Для каждого поиска по связи происходит расформатирование текущей записи с помощью формата, указанного в [SEARCH] SCNTFORMAT{$i}
К каждой строке результата расформатирования добавляется префикс и суффикс, указанные в [SEARCH] SCNTPREF{$i} и [SEARCH] SCNTSUFFIX{$i} соответственно
Получившиеся строки объединяется в одну с помощью логики, указанной в [SEARCH] SCNTLOGIC{$i}:
- 0 - "+" - оператор логического ИЛИ. Соединение двух операндов (терминов) логическим оператором ИЛИ обозначает требование поиска записей, в которых присутствует хотя бы один из терминов.
- 1 - "*" - оператор логического И. Соединение двух терминов логическим оператором И обозначает требование поиска записей, в которых присутствуют оба термина.
- 2 - ^ - оператор логического НЕ. Соединение двух терминов логическим оператором НЕ обозначает требование поиска записей, в которых присутствует первый термин и отсутствует второй. Оператор НЕ не может быть одноместным (т.е. данному оператору, как и всем другим, должен ОБЯЗАТЕЛЬНО предшествовать термин).
- 3 - (F) - оператор контекстного И. Соединение двух терминов таким оператором контекстного И обозначает требование поиска записей, в которых оба термина присутствуют в одном и том же повторении поля (или точнее – когда у терминов совпадают вторые и третьи части ссылок).
- 4 - . - (точка обрамленная пробелами) оператор контекстного И. Соединение двух терминов таким оператором контекстного И обозначает требование поиска записей, в которых оба термина присутствуют в одном и том же повторении поля друг за другом (или точнее – когда у терминов совпадают вторые и третьи части ссылок, а третьи части ссылок отличаются на единицу).
- 5 - (G) - оператор контекстного И. Соединение двух терминов таким оператором контекстного И обозначает требование поиска записей, в которых оба термина присутствуют в одном и том же поле (или точнее – когда у терминов совпадают вторые части ссылок)