29.03.2007, 10:50 | #1 |
Участник
|
Свёртывание складских проводок
В целях снижения размера БД была произведена чистка одной из аналитик (не стандартных – добавленных нами). После чего, для уменьшения размеров таблицы складских проводок была поставлена задача свертки проводок в разрезе лота. Для этой цели используется метод updateSumUp(…) таблицы InventTrans. В этом методе свертка производится только в том случае, если проводки не в статусе Закуплено\Продано или не имеют сопоставлений:
X++: if (! this.isUpdatedFinancial() || ! this.hasSettlements()) {}. 1. Для чего проводится анализ статусов прихода/расхода в методе isUpdatedFinancial()? К каким последствиям в дальнейшем может привести, если эту проверку пропустить? X++: boolean isUpdatedFinancial()
{
return (this.statusReceipt <= StatusReceipt::Purchased &&
this.statusIssue <= StatusIssue::Sold);
} X++: InventSettlement inventSettlement; ; while select forupdate inventSettlement index hint RecIdTypeIdx where inventSettlement.transRecId = = _fromRecId { inventSettlement.TransRecId = _toRecId; inventSettlement.update(); } |
|