Доброго всем времени суток!
Решил обратиться за помощью к гуру акспапты.
sql 2000 axapta 3.0 sp5
после изменения механизма расчета аванса появились блокировки на таблице inventsum, в которой у нас всего 13 записей..(при одновременном расчете)
включив sql-трассировку, получаю вот:
Код:
252655 мс на 'EXECUTE+FETCH (execute, first chunk of data)': SELECT A.ITEMID,A.POSTEDQTY,A.POSTEDVALUE,A.DEDUCTED,A.RECEIVED,A.RESERVPHYSICAL,A.RESERVORDERED,A.ONORDER,A.ORDERED,A.QUOTATIONISSUE,A.QUOTATIONRECEIPT,A.DEL_CONFIGID,A.INVENTDIMID,A.CLOSED,A.REGISTERED,A.PICKED,A.AVAILORDERED,A.AVAILPHYSICAL,A.PHYSICALVALUE,A.ARRIVED,A.PHYSICALINVENT,A.CLOSEDQTY,A.LASTUPDDATEPHYSICAL,A.LASTUPDDATEEXPECTED,A.POSTEDVALUESECCUR_RU,A.PHYSICALVALUESECCUR_RU,A.RECVERSION,A.RECID FROM INVENTSUM A WITH( INDEX(I_174ITEMDIMIDX), UPDLOCK) WHERE ((DATAAREAID=?) AND ((ITEMID=?) AND (INVENTDIMID=?))) OPTION(FAST 1)
это только при расчете одной точки учета.
тормозит в методе
X++:
static InventSum find(ItemId itemId,
InventDimId dimId,
boolean _forUpdate = false)
{
InventSum inventSum;
;
if (_forUpdate)
{
inventSum.selectForUpdate(_forUpdate);
if (appl.inventUpdateTTSControl().mustUseTTSSystem())
inventSum.setConnection(appl.inventUpdateTTSControl().DBConnectionUpd());
}
if (itemId)
select firstonly inventSum
index hint ItemDimIdx
where inventSum.itemId == itemId &&
inventSum.inventDimId == dimId;
return inventSum;
}
на селекте inventSum..
люди добрые, помогите
index hint убирал, не помогает..(