09.02.2011, 11:17 | #1 |
newborn in DAX
|
Сколько строк в гриде после фильтра
Есть форма с одним dataSource. По определению все данные показываются в гриде. Есть текстовые поля - фильтры типа Date From, Date to и т.д.
При изменении поля-фильтра запускается метод modified -> запускается метод ExecuteQuery из DataSource. 1.Как узнать сколько строк в гриде после фильтра или нескольких фильтров? 2. Где можно почтать соответствующую информацию public boolean modified() { boolean ret; ret = super(); Table_ds.executeQuery(); return ret; } public void executeQuery() {.... if(Filter.valueStr() == '0') { rangeFilter.value(sysQuery::value("!'a'")); } else { rangeFilter.value(sysQuery::value(Filter.valueStr())); } ..... } //classdeclaration public class FormRun extends ObjectRun { QueryBuildRange rangeFilter; } |
|
09.02.2011, 11:24 | #2 |
Administrator
|
Почитать можно здесь: [ANN] Tabax 0.1 -- панель задач для Axapta
Там же можно узнать как считать кол-во записей в курсоре
__________________
Возможно сделать все. Вопрос времени |
|
10.02.2011, 08:48 | #3 |
newborn in DAX
|
спасибо за наводку
всё оказалось гораздо проще в executeQuery вставила : QueryRun queryRun; queryRun = new QueryRun(Table_ds.query()); RowCount = SysQuery::countTotal(queryRun); RowCount показывает количество, но теперь детских вопрос как связать полученное число с элементом на форме чтобы отображался? |
|
10.02.2011, 08:50 | #4 |
Участник
|
|
|
10.02.2011, 09:18 | #5 |
newborn in DAX
|
а можно поподробнее для начинающих...
RowCount подчитывается в executeQuery , а элемент на форме. Как их связать в дисплей методе - Метод на форме, на датасорсе или на элементе? |
|
10.02.2011, 09:24 | #6 |
Участник
|
переменную RowCount объявите в классдекларейшен формы. метод создайте на форме, внем одну строчку return RowCount. создайте контрол и пропишите в него ваш дисплей метод и все
|
|
10.02.2011, 09:57 | #7 |
newborn in DAX
|
добавила в classDeclaration - int RowCount;
в методах формы display Integer mlm_QueryCountRowNumber() { return RowCount; } в дизайне формы есть контрол IntEdit:RowCount в properties которого добавила DataMethod -mlm_QueryCountRowNumber() компилируется, даже запускается но в дебагере в executeQuery на строчке с RowCount выдаёт NAME: RowCount VALUE: Error: Symbol "RowCount" was not found что-то ещё не хватает? или по другому надо определять в classDeclaration ??? |
|
10.02.2011, 10:17 | #8 |
Участник
|
|
|
10.02.2011, 10:28 | #9 |
newborn in DAX
|
В ELEMENT правильное значение, которое не отображается, кроме того пичет что не знает метода в дизайне DataMethod
Нужен property Autodeclaration Yes для RowCount? - нет Огромное спасибо, дисплей метод прицепила к датасоурсу и ЗАРАБОТАЛО. Последний раз редактировалось timaluhs; 10.02.2011 в 10:34. |
|
10.02.2011, 10:49 | #10 |
Участник
|
|
|
10.02.2011, 10:57 | #11 |
newborn in DAX
|
но если метод просто в Forms->Method
то в properties елемента DataMethod не признаёт, даёт ошибку или где-то что-то ещё надо поправить. |
|
10.02.2011, 11:15 | #12 |
Участник
|
При этом у вас элемент формы привязан к датасорсу? Если привязан - то метод должен быть на DS, если не привязан - то должен давать указать метод самой формы.
__________________
Ivanhoe as is.. |
|
10.02.2011, 12:03 | #13 |
newborn in DAX
|
Количество строк привязано к datasource? На форме просто элемент.
|
|