![]() |
#1 |
Участник
|
Помогите с Query
Друзья, всем доброго времени суток
Возможно подобные темы здесь уже не раз обсуждались, но что-то не нашел ничего подходящего. Помогите, пожалуйста, с запросом. Нужно реализовать формирование отчета по РБП в разрезе групп расхода. Как выбрать подели учета по соответствующей группе я примерно знаю, но вот как выбрать соответствующие проводки? Вот кусок кода метода, который подсчитывает суммы по проводкам X++: query = new Query(); qbds = query.addDataSource(tablenum(RDeferralsTable)); qbds.orderMode(orderMode::GroupBy); qbds.addSortField(fieldNum(RDeferralsTable, DeferralsId)); qbds.addSortField(fieldnum(RDeferralsTable, Name)); qbds.addSortField(fieldNum(RDeferralsTable, AcquisitionDate)); qbds.addSelectionField(fieldNum(RDeferralsTable, Name)); qbds.addSelectionField(fieldNum(RDeferralsTable, DeferralsId)); qbds.addSelectionField(fieldNum(RDeferralsTable, AcquisitionDate)); qbds = qbds.addDataSource(tablenum(RDeferralsTrans)); qbds.orderMode(orderMode::GroupBy); qbds.relations(true); qbds.addSortField(fieldNum(RDeferralsTrans, TransDate)); qbds.addSelectionField(fieldNum(RDeferralsTrans, DeferralsId)); qbds.addSelectionField(fieldNum(RDeferralsTrans, DeferralsBookId)); qbds.addSelectionField(fieldNum(RDeferralsTrans, TransDate)); qbds.addSelectionField(fieldNum(RDeferralsTrans, Amount), SelectionField::Sum); qbds.addRange(fieldNum(RDeferralsTrans, TransDate)).value(queryRange(dateStartYr(reportDate), reportDate)); qbds.addRange(fieldNum(RDeferralsTrans, DeferralsBookId)).value(rDeferralsBookId); qbds.addRange(fieldNum(RDeferralsTrans, StornoRecId)).value(int2str(0)); if (dimensionCriteria5) { qbr = qbds.addRange(fieldId2Ext(fieldnum(RDeferralsTrans, Dimension), 5)); qbr.value(dimensionCriteria5); } qbds = qbds.addDataSource(tablenum(RDeferralsBook)); qbds.orderMode(orderMode::GroupBy); qbds.relations(true); qbds.addSelectionField(fieldNum(RDeferralsBook, DeferralsId)); qbds.addSelectionField(fieldNum(RDeferralsBook, DeferralsBookId)); qbds.addSelectionField(fieldNum(RDeferralsBook, LifeTime), SelectionField::Sum); qbds.addSelectionField(fieldNum(RDeferralsBook, DeferralsAmount), SelectionField::Sum); qbds.addRange(fieldNum(RDeferralsBook, Status)).value(queryValue(RDeferralsStatus::Open)); if (dimensionCriteria5) { qbr = qbds.addRange(fieldId2Ext(fieldnum(RDeferralsBook, Dimension), 5)); qbr.value(dimensionCriteria5); } if (rDeferralsGroupId) { qbds.addRange(fieldNum(RDeferralsBook, DeferralsGroupId)).value(rDeferralsGroupId); } qbds = qbds.addDataSource(tablenum(RDeferralsLedger)); qbds.joinMode(joinMode::ExistsJoin); qbds.relations(false); qbds.addLink(fieldNum(RDeferralsBook, PostingProfile), fieldNum(RDeferralsLedger, PostingProfile)); |
|
|
![]() |
||||
Тема | Ответов | |||
Помогите с query ... | 10 | |||
jinx: Dynamics AX – Query-Ranges und Filtereinstellungen des Benutzers | 0 | |||
Помогите с Query | 22 | |||
Помогите новичку в создании Query | 2 | |||
Помогите с query | 23 |
|