Одинаковые детали с разными фильтрами на одной вкладке
Добрый день.
Необходимо добавить несколько одинаковых деталей на одну вкладку с разными фильтрами.
Имена у деталей на странице разные, SQL запросы выполняются корректно. Колонки настроены, ошибок в консоли нет. Результат на скриншете. Почему данные могут так отображаться и как это исправить?
Нравится
Пащенко Александр Сергеевич,
Создаете справочник, например Журналы изменений, который в себе хранит ваши 9 типов деталей, которые вы вывели на страницу, это поле добавляется на текущую карточку.
При выборе, в данном справочном поле, Журнал Изменений1 - ваша деталь филитруется по фильтрам соответствующим ЖурналуИзм1,
и так для всех остальных пунктов.
Таким образом получится, что у вас на странице будет одна деталь, которая в зависимости от того, что хотят посмотреть, будет показывать те или иные данные по соответствующим фильтрам.
Нужно отлаживать ваши фильтры и смотреть почему записи не привязываются (фильтруются) в нужные детали, в первую очередь обратите внимание на колонки по которым идет связь детали со страницей редактирования
Алла Савельева,
Данные попадают только в одну деталь. Предпоследнюю. В остальных отображаются только заголовки.
Например, у меня есть 3 детали контрагента. Номера телефонов, адреса контрагента, организационная структура.
Если изменился телефон и адрес (создались записи логов), то данные должны отобразиться в первых двух деталях, а третья быть пустой. Фактически получаю записи только в предпоследней детали, в первых заголовки столбцов, в последней пусто.
Фильтр используется вида [AccountCommunication:Id:RecordId].Account
Где
AccountCommunication - присоединяемая таблица,
RecordId - Колонка в таблице логирования, тип - уникальный идентефикатор, хранит Id логируемой записи Используется для Join
Григорий Чех,
Фильтры проверял, с ними все ок. Отлавливал запросы профайлером, возращают правильные данные.
Фильтр используется вида [AccountCommunication:Id:RecordId].Account
Где
AccountCommunication - присоединяемая таблица,
RecordId - Колонка в таблице логирования, тип - уникальный идентефикатор, хранит Id логируемой записи Используется для Join
Проблема явно связана с тем, что в верстке Grid имеет одинаковое именование. Пока не могу понять, как ее можно решить?
Пащенко Александр Сергеевич пишет:
А что если сделать справочную колонку от которой будут зависеть фильтры Одной вашей детали?
Быть может это более удачное решение будет самой задачи?
Литвинко Павел,
Павел, не понял ваше предложение. Где сделать справочную колонку? Механизм логирования может быть добавлен для любой сущности, поэтому хранится только Id Записи. Для логирования используется приложение из маркетплейса.
Пащенко Александр Сергеевич,
Создаете справочник, например Журналы изменений, который в себе хранит ваши 9 типов деталей, которые вы вывели на страницу, это поле добавляется на текущую карточку.
При выборе, в данном справочном поле, Журнал Изменений1 - ваша деталь филитруется по фильтрам соответствующим ЖурналуИзм1,
и так для всех остальных пунктов.
Таким образом получится, что у вас на странице будет одна деталь, которая в зависимости от того, что хотят посмотреть, будет показывать те или иные данные по соответствующим фильтрам.
Литвинко Павел,
Спасибо за подсказку, хорошая идея. Попробую реализовать.
Ещё на marketplace было решение с иерархическими деталями. Тоже позволит использовать одну деталь
Пащенко Александр Сергеевич,
Проверьте, пожалуйста, как будет вести себя система, если добавить 2 разные детали, которые ссылаются на одну EntitySchema, но имеют разные фильтры.
Помню, что ранее была проблема с отображением одной и той же детали на одной странице.
Возможно, что она и осталась.
Всем спасибо за подсказки. Реализовал вариант со справочником. При выборе значения обновляется деталь. В FilterMethod детали вычитывается название колонки детали и добавляется в фильтр.
Алла Савельева,
Проверил, проблема осталась. Разные детали в моем случае не подходят, т.к. их может быть около 10 на сущность.