03.01.2006, 14:17 | #1 |
Участник
|
Почему при запросе field() из Range функция возвращает не тот ID, который в таблице..
Пример: Код: dictField = new DictField( tableNum(LedgerTable), qbds.range(iRange).field() ); Код: qbr = queryRun.query().dataSourceNo(1).addRange(fieldnum(LedgerTable,AccountPlType)); qbr.value( '!'+enum2str(LedgerAccountType::Heading) ); PPS: То что я пытюсь сделать, это сгрупировать все значения всех полей и потом выводить в отчёте.. Код: qbds = this.query().dataSourceTable(tableNum(LedgerTable)); if ( qbds.rangeCount()!=0 ) { for ( iRange=1; iRange<=qbds.rangeCount(); iRange++ ) { oldValue = ''; oldLabel = ''; fieldId = strfmt( '%1_%2', qbds.range(iRange).table(), qbds.range(iRange).field() ); if ( mapRanges.exists(fieldId) ) { [oldLabel,oldValue] = mapRanges.lookup(fieldId); mapRanges.remove(fieldId); } if (!oldLabel) { dictField = new DictField( tableNum(LedgerTable), qbds.range(iRange).field() ); oldLabel = dictField.label(); } if ( oldValue ) oldValue += ', '; oldValue += qbds.range(irange).value(); rangeData = [oldLabel,oldValue]; mapRanges.insert( fieldId, rangeData ); } } |
|
03.01.2006, 14:40 | #2 |
Участник
|
Reshil..
Код: dictField = new DictField( tableNum(LedgerTable), qbds.range(iRange).field() ); fieldId = fieldname2id( tableNum(LedgerTable), dictField.name() ); |
|
04.01.2006, 10:17 | #3 |
Участник
|
<div class='XPPtop'>X++</div><div class='XPP'>
fieldId = fieldExt2Id(qbds.range(iRange).field());</div>
__________________
Axapta v.3.0 sp5 kr2 |
|
04.01.2006, 13:03 | #4 |
Участник
|
Spasibo, vrode vse ok..
|
|