15.01.2007, 17:55 | #1 |
Гость
|
Pack() "убил" линк в запросе
Развитие темы про количество записей
Есть форма, на которой расположены данные из 2 таблиц. Table1, table2. Table2 связана с table1 через JoinDatasource. Захотелось посчитать количество записей в table2, для этого перекрыл ExecuteQuery() X++: QueryRun qr; ; super(); qr = table2_qr; print SysQuery::countTotal(qr); Как только происходит X++: container c = sysQuery::countPrim(_queryRun.pack(false)); X++: countQueryRun = new QueryRun(_queryPack); Связь table2 с table1 пропадает. В чём я неправ, когда пытаюсь так посчитаться? |
|
15.01.2007, 19:14 | #2 |
Участник
|
На всякий случай: А какой тип связи между этими двумя источниками? LinkType свойство источника
|
|
15.01.2007, 22:46 | #3 |
Участник
|
Вот код - работает.
X++: Query q = new Query(); QueryBuildDataSource qbds = q.addDataSource(tableNum(PurchTable)); QueryBuildDataSource qbds2 = qbds.addDataSource(tableNum(PurchLine)); QueryRun qr; ; qbds2.relations(true); qr = new QueryRun(q); info(strFmt("%1", SysQuery::countLoops(qr))); А что это значит? Что запроса у вас на самом деле 2 а не один. А соответственно все верно отработало - просто неверно считаете. |
|
16.01.2007, 11:37 | #4 |
Участник
|
|
|
16.01.2007, 15:01 | #5 |
Гость
|
|
|