Вообщем, у меня так:
X++:
static void Job7(Args _args)
{
TotalsTrans TotalsTrans;
TotalsTrans TotalsTmp;
;
TotalsTmp.setTmp();
insert_recordset TotalsTmp (ItemId,Qty,InventLocationId)
select ItemId, sum(Qty), InventLocationId from TotalsTrans
group by ItemId, InventLocationId
where TotalsTrans.SalesDate >= 01\01\2008
&& TotalsTrans.SalesDate <= systemDateGet();
}
валится клиент.
Если убрать insert_recordset, то работает:
X++:
static void Job8(Args _args)
{
TotalsTrans TotalsTrans;
TotalsTrans TotalsTmp;
;
TotalsTmp.setTmp();
//insert_recordset TotalsTmp (ItemId,Qty,InventLocationId)
while select ItemId, sum(Qty), InventLocationId from TotalsTrans
group by ItemId, InventLocationId
where TotalsTrans.SalesDate >= 01\01\2008
&& TotalsTrans.SalesDate <= systemDateGet()
{
TotalsTmp.ItemId = TotalsTrans.ItemId;
TotalsTmp.InventLocationId = TotalsTrans.InventLocationId;
TotalsTmp.Qty = TotalsTrans.Qty;
TotalsTmp.insert();
}
}
Почему я считаю, что insert_recordset не уместен для временной таблицы? Т.к. он все равно не даст выигрыша (преимущество insert_recordset в том, что он может исполняться на сервере БД), в случае временной таблице - она все равно либо на АОСе либо на клиенте.
P.S. DAX4.0 SP2WE