Доброе время суток!
Задача: выбрать строки из одной таблици и кол-во строк соответстующие в другой таблице.
Объясните почему не я вижу данные одной таблицы, а данные второй таблица с суммой строк нет. Что не так делаю?
X++:
query = new Query();
queryBuildDataSource = query.addDataSource(tableNum(PurchTable));
queryBuildDataSource.addSortField(fieldNum(PurchTable, PurchId));
queryBuildDataSource.addSortField(fieldNum(PurchTable, OrderAccount));
queryBuildDataSource.addSortField(fieldNum(PurchTable, DeliveryDate));
queryBuildDataSource.addRange(fieldnum(PurchTable,OrderAccount)).value(stVendAccount.valueStr());// поставщик
queryBuildDataSource.addRange(fieldnum(PurchTable,PurchStatus)).value(queryvalue(PurchStatus::Backorder)); // Статус закупки открыто
queryBuildDataSource.addRange(fieldnum(PurchTable,DeliveryDate)).value(queryRange(Str2Date(DateStart.valueStr(),123),Str2Date(DateEnd.valueStr(),123))); // Статус закупки открыто
queryBuildDataSource2 = queryBuildDataSource.addDataSource(tableNum(PurchLine));
//queryBuildDataSource2.relations(true);
queryBuildDataSource2.addLink(fieldNum(PurchLine, PurchId),fieldNum(PurchTable, PurchId));
queryBuildDataSource2.addSelectionField(fieldNum(PurchLine, LIneNum), SelectionField::Count);
queryBuildDataSource2.orderMode(OrderMode::GroupBy);
queryBuildDataSource2.addRange(fieldnum(PurchLine,ItemId)).value(stItemId.valueStr()); // номенкалатура
queryBuildDataSource2.addRange(fieldnum(PurchLine,PurchStatus)).value(queryvalue(PurchStatus::Backorder)); //статус
queryBuildDataSource2.addSortField(fieldNum(PurchLine, ItemId));
queryBuildDataSource2.addSortField(fieldNum(PurchLine, PurchStatus));
queryBuildDataSource2.joinMode(JoinMode::ExistsJoin);
queryRun = new QueryRun(query);
ItogTable_BRR.selectForUpdate(true);
delete_from ItogTable_BRR;
while(queryRun.next())
{
_PurchTable = queryRun.get(tableNum(PurchTable));
//_PurchLine = queryRun.get(tableNum(PurchLine));
_PurchLine = queryRun.getNo(2);
}