|
06.04.2011, 09:38 | #1 |
Участник
|
Фильтр по журналам с пустыми строками
Всем привет!
Можно ли сделать фильтр который отображает в форме только те журналы у которых имеются строки? |
|
|
За это сообщение автора поблагодарили: ice (-2), S.Kuskov (2). |
06.04.2011, 09:39 | #2 |
Участник
|
конечно можно
|
|
|
За это сообщение автора поблагодарили: S.Kuskov (-1), breakpoint (-1), kornix (0). |
06.04.2011, 10:01 | #3 |
MCP
|
Да, используйте exists join
|
|
06.04.2011, 10:06 | #4 |
Участник
|
первое что попробовал, у меня на строках фильтр свой ставится...
|
|
06.04.2011, 10:47 | #5 |
Участник
|
Поясните мысль? AndyD все правильно написал. Или речь не про стандартные складские журналы?
__________________
Ivanhoe as is.. |
|
06.04.2011, 10:03 | #6 |
Участник
|
В складских журналах, к примеру, добавьте в расширенном фильтре к Таблице складского журнала через отношение 1:n Строки складских журналов - у вас покажутся только те журналы, у которых есть строки.
Фактически, происходит соединение по ExistsJoin
__________________
Axapta v.3.0 sp5 kr2 |
|
06.04.2011, 11:15 | #7 |
Участник
|
Задача такая: отфильтровать строки складского журнала по определенному условию и если в рез-те у какого-нибудь журнала не окажется строк, то не показывать его. Вроде все просто, но почему то не работает. Exist join пробовал, релейшена м/у InventJournalTrans и InventjournalTable не было - создал, все равно не работает. В чем еще может быть проблема?
|
|
06.04.2011, 11:38 | #8 |
Участник
|
Цитата:
И ещё. Что заначит "не работает"? Показывает лишние? или не показывет нужные? Может у вас мусор какой-нибудь в строках журнала? Т.е. строки есть, просто на форме не отображаются (например нет связи со складской аналитикой) Релейшен не обязательно должен быть указан на таблице, он может быть указан в расширенном типе данных вторичного ключа |
|
06.04.2011, 12:12 | #9 |
Участник
|
кстати, шапка фильтруется правильно, а в строках пусто
|
|
06.04.2011, 12:22 | #10 |
Участник
|
А у вас оба грида (по журналам и строкам) на одной форме?
Если так, то вам надо добавить на форму еще один датасорс InventJournalTrans, его связать по ExistJoin с InventJournalTable и на него накладнывать нужные фильтры А для первого InventJournalTrans надо восстановить старую связь - он для отображения строк из выбранного журнала
__________________
Axapta v.3.0 sp5 kr2 |
|
|
За это сообщение автора поблагодарили: breakpoint (1). |
06.04.2011, 12:38 | #11 |
Участник
|
breakpoint, вы пытаетесь настроить стандартный фильтр (Ctrl+F3) через пользовательский интерфейс или хотите запрограммировать его в коде?
Если второе, то Только ещё замечу, что этот вспомогательный DataSource не обязательно явно добалять в источники данных формы. Его можно добавить программно непосредственно в методе init() фильтруемого DataSource. |
|
|
За это сообщение автора поблагодарили: breakpoint (1). |
06.04.2011, 13:40 | #12 |
Участник
|
Цитата:
Сообщение от AndyD
А у вас оба грида (по журналам и строкам) на одной форме?
Если так, то вам надо добавить на форму еще один датасорс InventJournalTrans, его связать по ExistJoin с InventJournalTable и на него накладнывать нужные фильтры А для первого InventJournalTrans надо восстановить старую связь - он для отображения строк из выбранного журнала Только еще пришлось добавить фильтр который применяется к первому датасорсу и на второй датасорс (который для отображения), чтобы отображались не все строки которые есть в журнале. |
|
06.04.2011, 13:15 | #13 |
Участник
|
В шапке складского журнала есть поле Строки (NumOfLines) на закладке История. Фильтруйте просто по этому полю.
|
|
06.04.2011, 13:20 | #14 |
Участник
|
|
|
07.04.2011, 09:35 | #15 |
Участник
|
Я вот что подумал. Если у вас оба грида и оба источника данных шапок журнала и строк журнала находятся на одной форме, то тогда нет необходимости задействовать дополнительный датасорс. Нужно просто связать отображаемые строки с шапками связью не Existjoin а InnerJoin и задать необходимый фильтр на строки. Всё.
|
|
07.04.2011, 10:22 | #16 |
Участник
|
Тогда кол-во отображаемых журналов будет равно кол-ву строк, а в нижнем гриде будет видна одна строка
__________________
Axapta v.3.0 sp5 kr2 |
|
|
За это сообщение автора поблагодарили: S.Kuskov (2). |
07.04.2011, 10:34 | #17 |
Участник
|
Да. Вы правы. Это я что-то напутал. Нет в аксапте такого типа связи, чтобы реализовать задуманное без дополнительных датасурсов. А было бы не полхо иметь такой тип связи, согласитесь
|
|
|
Похожие темы | ||||
Тема | Ответов | |||
Как программно снять "фильтр по выделению" | 7 | |||
ERP-BLOG: Axapta, фильтр по сетке | 26 | |||
Исполнить сформированный фильтр | 14 | |||
Сложный фильтр складских журналов | 13 | |||
Иногда не работает фильтр | 0 |
|