Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис   
J-ИРБИС :  ИРБИС Irbis
 
Логика формы поиска
Пользователь: mixalevo432 (IP-адрес скрыт)
Дата: 30, January, 2015 07:43

Логика в форме поиска, которая содержит рубрикатор и другие стандартные элементы, между элементами стоит "и", всё хорошо, но когда туда добавляется второй рубрикатор, то логика между рубрикаторами становится "или", (проще говоря они работают как один, а не как 2 рубрикатора) хотя должна оставаться "и".

Как и где исправить данную вещь? Это ведь по сути ошибка. Речь идёт именно о общей логике, а не внутри рубрикатора.

Рубрикаторы используют разные базы: HELP (стандартная) и NAV (моя).

Огромное спасибо за нововведение. Для рубрикаторов.

Прикладываю свои файлы из папки units и форму.

-------------------------------------------------------------------------------------------------------------
Кирсанов Никита
ФГУП "ВНИИА" ОПИНТИ



Редактировано 2 раз. Последний раз 30.01.2015 09:19 пользователем mixalevo432.

Вложения: units.zip (2.5KB)  
Re: Логика формы поиска
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 01, February, 2015 02:05

Логика определяется тобой в ji_field_user.php по аналогии с имеющимися в ji_field.php функциями disc_multiselect и multiselect (здесь вообще используется непопулярный оператор (F)). Чем ты будешь объединять элементы – исключительно твой выбор.

Правило объединения, заданное для конкретного поля (LOGIC) может использоваться или не использоваться. Это исключительно твой выбор.

Re: Логика формы поиска
Пользователь: mixalevo432 (IP-адрес скрыт)
Дата: 01, February, 2015 09:27

Кирилл, речь идёт о логике формы вообще. В форме всё идёт через И, если она с одним рубрикатором, а если она с двумя рубрикаторами, то между ними логика остаётся ИЛИ, как будто он один.
Получается что они не независимые.

Ради интереса, попробуй вывести грнти в 2х экземплярах в форму с другими элементами (автор, заглавие и тд), только через отдельный файл из папки units, предварительно создав дубль бд HELP с другим именем. Там будет такая ситуация. Это странно. Они оба работать на общее уточнение, а работают как один.

Каким образом там имеет влияние multiselect? Если речь идёт об общем взаимодействии с другими элементами, а не внутри рубрикатора.

-------------------------------------------------------------------------------------------------------------
Кирсанов Никита
ФГУП "ВНИИА" ОПИНТИ



Редактировано 1 раз. Последний раз 01.02.2015 18:05 пользователем mixalevo432.

Re: Логика формы поиска
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 04, February, 2015 00:06

mixalevo432 написал(а):
-------------------------------------------------------
> Кирилл, речь идёт о логике формы вообще. В форме
> всё идёт через И, если она с одним рубрикатором, а
> если она с двумя рубрикаторами, то между ними
> логика остаётся ИЛИ, как будто он один.
> Получается что они не независимые.

Два рубрикатора с одним именем на одной странице не имеют смысла. Каждый рубрикатор должен иметь своё имя в таблице "Правила обработки форм"

В этом случае элементы выбранные в одном рубрикаторе будут объединяться ИЛИ, а элементы разных -- И.

Re: Логика формы поиска
Пользователь: mixalevo432 (IP-адрес скрыт)
Дата: 04, February, 2015 11:38

Кирилл, рубрикаторы разные, в таблице они разделены. Скрины прилагаются.

В это упирается очень многое.

Посмотри пожалуйста файлы. Может я где ошибку допустил при их настройке. Там файлы из папки units.

-------------------------------------------------------------------------------------------------------------
Кирсанов Никита
ФГУП "ВНИИА" ОПИНТИ



Редактировано 2 раз. Последний раз 09.02.2015 09:58 пользователем mixalevo432.

Вложения: 1.png (26.8KB)   2.png (20KB)   units.zip (1.4KB)  
Re: Логика формы поиска
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 09, February, 2015 11:54

mixalevo432 написал(а):
-------------------------------------------------------
> Посмотри пожалуйста файлы. Может я где ошибку
> допустил при их настройке. Там файлы из папки
> units.

Никита, в твоих руках как программиста все средства для разработки -- произвольные units для отображения рубрик и ji_field.php для обработки значений. Я не вижу что ещё можно добавить к этому инструментарию. Возможности моделировать твою ситуацию на своей системе у меня сейчас физически нет.

Единственный совет: ji_fak_kaf_tree.php даёт пример того, как в рубрикатор вместе с терминами подаются префиксы. Это может пригодиться.

Re: Логика формы поиска
Пользователь: mixalevo432 (IP-адрес скрыт)
Дата: 09, February, 2015 12:02

Так ведь дело во взаимодействии. Получается твоё утверждение по поводу логики не верно. 2 рубрикаторами работают как один. При этом они абсолютно разные. Это разные элементы формы. А должны быть независимыми. Как каждый элемент формы. В параметрах ji_search_form.PHP формы стоит логика и, но на 2х рубрикаторах она не действует.

Значит не достаточно инструментов.

-------------------------------------------------------------------------------------------------------------
Кирсанов Никита
ФГУП "ВНИИА" ОПИНТИ



Редактировано 3 раз. Последний раз 09.02.2015 12:30 пользователем mixalevo432.

Re: Логика формы поиска
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 15, February, 2015 14:15

mixalevo432 написал(а):
-------------------------------------------------------
> Получается твоё
> утверждение по поводу логики не верно.

Ещё раз проверил -- все элементы, имеющие разные имена объединяются по умолчанию И. Это можно изменить на уровне сессии (параметр form_logic), но по-умолчанию это так.

Практически уверен, что в твоём случае рубрикаторы имеют повторяющееся имя или ID

> Значит не достаточно инструментов.

В данном случае ты выступаешь не как администратор, для которого J2 - черный ящик с непонятным кодом, а как программист. И в твоём распоряжении полностью открытый код. Разберись и добавь то, что считаешь нужным.

Re: Логика формы поиска
Пользователь: mixalevo432 (IP-адрес скрыт)
Дата: 15, February, 2015 14:56

Я ведь приложил в прошлом сообщении Скрины. Там всё разное. Проверь пожалуйста у себя 2 рубрикаторами на одной форме. Будет тоже самое что и у меня.

-------------------------------------------------------------------------------------------------------------
Кирсанов Никита
ФГУП "ВНИИА" ОПИНТИ

Re: Логика формы поиска
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 16, February, 2015 02:06

mixalevo432 написал(а):
-------------------------------------------------------
> Я ведь приложил в прошлом сообщении Скрины. Там
> всё разное. Проверь пожалуйста у себя 2
> рубрикаторами на одной форме. Будет тоже самое что
> и у меня.

Из скриншотов я могу лишь заключить, что различаются ID рубрикаторов (иначе бы ничего не работало). Проверь атрибут name=, он должен быть тождественен ID.

Ещё вызывает вопросы то, что у обоих рубрикаторов используется один и тот же префикс - R=

Чтобы протестировать ситуацию, я сам должен создать формы с двумя рубрикаторами и сделать целый ряд тестовых изменений. Но моделировать самостоятельные разработки пользователей у меня возможности нет. Если ты пришлёшь мне полный набор (формы, UNITS, базы рубрикаторов), я постараюсь посмотреть решение в марте. Но никак не раньше.



Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.