AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.08.2006, 13:20   #1  
miaa is offline
miaa
Участник
Аватар для miaa
 
23 / 10 (1) +
Регистрация: 26.09.2004
Адрес: Москва
Фильтрация в форме "В наличии" по агрегатному полю "Физ. наличие"
Можно ли как-нибудь отфильтровать записи в форме "В наличии" по агрегатному полю "Физ. наличие" != 0 ?
Может есть у форм аналог метода send() (в отчетах)?
Старый 29.08.2006, 14:44   #2  
slava09 is offline
slava09
Участник
Аватар для slava09
MCBMSS
Дети Юза
1C
 
1,642 / 237 (11) ++++++
Регистрация: 06.03.2003
Адрес: Украина, Киев
Просто так не отфильтровать. Это же дисплей.
Старый 29.08.2006, 14:51   #3  
miaa is offline
miaa
Участник
Аватар для miaa
 
23 / 10 (1) +
Регистрация: 26.09.2004
Адрес: Москва
Я понимаю, что просто так не отфильтровать. Думал может можно в _DS не включать нулевые записи. Например цветом выделить их через displayOption(..) я могу, а так чтоб в грид они не попали - нет. ?
Старый 29.08.2006, 15:02   #4  
mit is offline
mit
Участник
Аватар для mit
 
386 / 36 (2) +++
Регистрация: 15.01.2003
Адрес: Moscow
можно, только нужно переделать форму. сторить ее на временной таблице, которую заполнять при открытии. тогда и фильтр и сортировка будут работать
__________________
Дом поросенка должен быть крепостью. (Наф-Наф, полн. собр. соч., т.5, стр. 286)
Старый 29.08.2006, 15:03   #5  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Если очень нужно, есть способ: добавить поле в InventSum, которое будет содержать значение товара в наличии. Естественно при этом нужно это поле инициализировать значением из ф-ии \Data Dictionary\Tables\InventSum\Methods\physicalInvent при любом изменении ее слагаемых.
Старый 29.08.2006, 15:05   #6  
mit is offline
mit
Участник
Аватар для mit
 
386 / 36 (2) +++
Регистрация: 15.01.2003
Адрес: Moscow
все равно расчет будет. там ведь в разрезе аналитики показано значение
__________________
Дом поросенка должен быть крепостью. (Наф-Наф, полн. собр. соч., т.5, стр. 286)
Старый 29.08.2006, 15:10   #7  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Цитата:
Сообщение от mit
все равно расчет будет. там ведь в разрезе аналитики показано значение
Вообще-то строки в InventSum тоже в разрезе аналитики хранятся...
Старый 29.08.2006, 15:20   #8  
Mario is offline
Mario
Участник
 
2 / 10 (1) +
Регистрация: 31.07.2003
Адрес: СПб
В таблице InventSum в методе update() написано слудующее:
void update()
{
;
this.closedQty = this.isAllQtyFieldsZero();
this.closed = this.isAllValueFieldsZero() && this.closedQty;
this.setAvailFields();

super();

}
А в методе setAvailFields() соответственно:
void setAvailFields()
{
this.availOrdered = this.availOrdered();
this.availPhysical = this.availPhysical();
this.physicalInvent = this.physicalInvent();


}
Так что пробуйте использовать для фильтрации поле, а не дисплейный метод.
Старый 29.08.2006, 15:20   #9  
miaa is offline
miaa
Участник
Аватар для miaa
 
23 / 10 (1) +
Регистрация: 26.09.2004
Адрес: Москва
Физ. наличие для конкретной записи расчитыватся, как сумма пяти полей. Можно ли к запросу добавить критерий, что (postedQty + received - deducted + registered - picked != 0) ? Было бы тоже неплохо, но с Аксаптовским синтаксисом запросов кажется, что такое не получится или я ошибаюсь?

По поволу временной таблицы - все хорошо, да только много времени будет уходить на её формирование (InventSum большая).
Добавить поле - можно, но нарушается нормализация таблицы. Это не страшно, но попробуем отговорить от такой идеи.

Спасибо.
Старый 29.08.2006, 15:25   #10  
miaa is offline
miaa
Участник
Аватар для miaa
 
23 / 10 (1) +
Регистрация: 26.09.2004
Адрес: Москва
Цитата:
Сообщение от Mario
void setAvailFields()
{
this.availOrdered = this.availOrdered();
this.availPhysical = this.availPhysical();
this.physicalInvent = this.physicalInvent();


}
Странно, получается, что они "Физ, наличие" хранят в поле и при этом на форме отображают через методы. Я этого не заметил. Попробую. Спасибо.
Старый 29.08.2006, 15:30   #11  
slava09 is offline
slava09
Участник
Аватар для slava09
MCBMSS
Дети Юза
1C
 
1,642 / 237 (11) ++++++
Регистрация: 06.03.2003
Адрес: Украина, Киев
Это они "физически доступно" хранят в поле.
Старый 29.08.2006, 15:35   #12  
Mario is offline
Mario
Участник
 
2 / 10 (1) +
Регистрация: 31.07.2003
Адрес: СПб
и физ. наличие тоже, это поле physicalInvent
Старый 29.08.2006, 15:44   #13  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Вообще-то на форме используется группировка в датасоурсе. Axapta не умеет делать having sum() <> 0. Так что нулевые суммы как были, так и останутся
__________________
Axapta v.3.0 sp5 kr2
Старый 29.08.2006, 23:45   #14  
_AnK_ is offline
_AnK_
Участник
Аватар для _AnK_
Ex AND Project
 
160 / 31 (2) +++
Регистрация: 03.11.2005
Адрес: СПб
Покажи им как выгружать в Excel, а там пускай фильтруют как хотят.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Вопрос по полю Spid(s) на форме "активные пользователи" xgmann DAX: Программирование 2 18.02.2008 23:38
Галка "Закрыто" на таблице "В наличии" sev DAX: Функционал 1 11.04.2006 10:19
Отображение финансовых аналитик в "Номенклатура" - "В наличии" Roenick DAX: Функционал 50 27.03.2006 21:58
Фильтрация на форме "Журнал" Valery DAX: Функционал 16 02.09.2005 10:39
Как сбросить флаг "Используется" в форме "Складской журнал" ATimTim DAX: Функционал 1 24.06.2004 19:19
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 16:50.