|
11.12.2015, 13:23 | #1 |
Участник
|
QueryBuildDataSource - получить поля группировок
День добрый товарищи! Ест ли какой то метод/способ который помог бы получить мне список группировочных полей из объекта QueryBuildDataSource? Заранее спасибо за ответ!
|
|
11.12.2015, 13:33 | #2 |
Участник
|
|
|
|
За это сообщение автора поблагодарили: mazzy (2), r2d2 (1). |
11.12.2015, 13:35 | #3 |
Британский учённый
|
Вот хороший пример из \Data Dictionary\Tables\InventDim\Methods\queryGetSortAndGroupByFields
X++: /// <summary> /// Gets the list of fields being sorted and grouped by in the specified query. /// </summary> /// <param name="_query"> /// The query to examine. /// </param> /// <param name="_includeGroupByFields"> /// true if <c>GroupByFields</c> at the query level should be examined too. /// </param> /// <returns> /// A list of field IDs. /// </returns> client server static private List queryGetSortAndGroupByFields( Query _query, boolean _includeGroupByFields ) { QueryBuildDataSource qbsDim = _query.dataSourceTable(tableNum(InventDim)); Counter h; FieldId inventDimFieldId; QueryGroupByField groupByField; List fieldList = new List(Types::Integer); for (h = 1; h <= qbsDim.sortFieldCount(); h++) { inventDimFieldId = qbsDim.sortField(h); fieldList.addEnd(inventDimFieldId); } if (_includeGroupByFields) { for (h = 1; h <= _query.groupByFieldCount(); h++) { groupByField = _query.groupByField(h); if (groupByField.tableSelector() == tableNum(InventDim)) { inventDimFieldId = groupByField.fieldID(); fieldList.addEnd(inventDimFieldId); } } } return fieldList; }
__________________
Людям физического труда для восстановления своих сил нужен 7-8 часовой ночной сон. Людям умственного труда нужно спать часов 9-10. Ну а программистов будить нельзя вообще. Последний раз редактировалось Link; 11.12.2015 в 13:38. |
|
|
За это сообщение автора поблагодарили: r2d2 (1). |
|
|