22.06.2006, 13:06 | #1 |
Участник
|
Как скрыть на форме поле для queryBuildRange ?
В методе "public Query initQuery()" есть переменная qBRangedat типа queryBuildRange. При запуске формы (и соответственно вызове initQuery()) в условиях появляется группа "Истори по сроку службы" с полем "Дата".
Эту группу я хочу скрыть. Соответственно, в коде процедуры initQuery() добавляю строку qBRangedat.enabled(false); Поле "Дата" исчезает, но вместо него появляются поля "Инвентарный номер ОС", "Время изменения" и "Тип движения", которые мне ТЕМ БОЛЕЕ не нужны На всякий случай, вот код: public Query initQuery() { queryBuildDataSource qBDS; queryBuildRange qBRange; ; // создаём объект динамического запроса query = new Query(); //определяем источник данных qBDS = query.addDataSource(tablenum(RAssetMoveHist)); qBRangedat = qBDS.addRange(fieldnum(RAssetMoveHist, ChangeDate)); //qBRangedat.enabled(false); qBDS = qBDS.addDataSource(tablenum(RAssetTable)); //устанавливаем связь qBDS.addLink(fieldnum(RAssetMoveHist, AccountNum),fieldnum(RAssetTable, AccountNum) ); // определяем поле-критерий qBDS.addRange(fieldnum(RAssetTable, HB_AClassCode_OS)); qBRange = qBDS.addRange(fieldnum(RAssetTable,AssetType)); qBRange.value(queryvalue(RassetType::Smallvalueable)); Return query; } Так как всё-таки правильно спрятать qBRangedat ? Спасибо! |
|
22.06.2006, 13:11 | #2 |
Злыдни
|
Перекройте showIndexField, чтобы он возвращал false для датасурса.
|
|
|
За это сообщение автора поблагодарили: Poleax (1), Dzha (1). |
22.06.2006, 13:11 | #3 |
Участник
|
qBRangedat.status(RangeStatus::Hidden);
а до этого Вы вообще выключили условие, поэтому появился стандартный набор условий из запроса. RTFM |
|
|
За это сообщение автора поблагодарили: Poleax (1). |
22.06.2006, 13:16 | #4 |
Участник
|
Цитата:
Сообщение от Yprit
Перекройте showIndexField, чтобы он возвращал false для датасурса.
|
|
22.06.2006, 13:17 | #5 |
Участник
|
Цитата:
Сообщение от Косых Артём
qBRangedat.status(RangeStatus::Hidden);
а до этого Вы вообще выключили условие, поэтому появился стандартный набор условий из запроса. RTFM |
|
22.06.2006, 13:30 | #6 |
Участник
|
Цитата:
Сообщение от Косых Артём
qBRangedat.status(RangeStatus::Hidden);
а до этого Вы вообще выключили условие, поэтому появился стандартный набор условий из запроса. RTFM Код: public Query initQuery() { queryBuildDataSource qBDS; queryBuildRange qBRange; ; // создаём объект динамического запроса query = new Query(); //определяем источник данных qBDS = query.addDataSource(tablenum(RAssetMoveHist)); qBRangedat = qBDS.addRange(fieldnum(RAssetMoveHist, ChangeDate)); qBRangedat.status(RangeStatus::Hidden); //НЕ ПОМОГАЕТ??? //ЕСЛИ НЕТ, значит вы что-то неправильно делаете :) qBDS = qBDS.addDataSource(tablenum(RAssetTable)); //устанавливаем связь qBDS.addLink(fieldnum(RAssetMoveHist, AccountNum),fieldnum(RAssetTable, AccountNum) ); // определяем поле-критерий qBDS.addRange(fieldnum(RAssetTable, HB_AClassCode_OS)); qBRange = qBDS.addRange(fieldnum(RAssetTable,AssetType)); qBRange.value(queryvalue(RassetType::Smallvalueable)); Return query; } |
|
22.06.2006, 13:52 | #7 |
Участник
|
Насколько я понимаю, вопрос в отображении условий выборки при использовании диалогов?
__________________
Axapta v.3.0 sp5 kr2 |
|
22.06.2006, 13:55 | #8 |
Участник
|
Цитата:
Сообщение от AndyD
Насколько я понимаю, вопрос в отображении условий выборки при использовании диалогов?
|
|
22.06.2006, 14:00 | #9 |
Участник
|
Наследник RunBase?
А вы после изменения кода на указанный выше поменяли CurrentVersion? (Или очистили пользовательские настройки?) |
|
22.06.2006, 14:14 | #10 |
Участник
|
Цитата:
Сообщение от kashperuk
Наследник RunBase?
А вы после изменения кода на указанный выше поменяли CurrentVersion? (Или очистили пользовательские настройки?) #define.CurrentVersion(3) #localmacro.CurrentList _reportdate, _emplId #endmacro |
|
22.06.2006, 16:14 | #11 |
Участник
|
Сделайте инкрементную компиляцию вашего класса
__________________
Axapta v.3.0 sp5 kr2 |
|
07.10.2008, 13:14 | #12 |
Участник
|
query.addDataSource(tableNum(LedgerJournalTable), "LedgerJournalTable"); qbd = query.dataSourceTable(tableNum(LedgerJournalTable)); qbr = qbd.addRange(fieldNum(LedgerJournalTable, JournalType)); qbr.status(rangestatus::HIDDEN); qbr.value(strfmt("%1", LedgerJournalType::CustPayment)); qbr = qbd.addRange(fieldNum(LedgerJournalTable, Posted)); qbr.status(rangestatus::HIDDEN); qbr.value(strfmt("%1", NoYes::Yes)); У меня почти такая же проблема, только то что я скрыл диалог не показывает . но показывает фильтр который я вобще не добавлял(( оне мне не нужен в диалоге , как его скрыть? |
|
07.10.2008, 13:33 | #13 |
Участник
|
Цитата:
X++: public boolean showIndexFields(tableId id) { return false; } |
|
|
За это сообщение автора поблагодарили: propeller (1), Dzha (1). |
|
|