![]() |
#2 |
Участник
|
При проведении журнала коммерческих соглашений можно изменять существующие записи в ценах. Для этого в таблице PriceDiscAdmTrans должно быть заполнено поле PriceDiscTableRef.
Так как вы сами загружаете откуда-то строки, то обязанность наполнить таблицу PriceDiscAdmTrans закрываемыми строками лежит на вас. То есть, должно быть что-то подобное: Заполнили строку в PriceDiscAdmTrans. Начали выборку с подбором закрываемых строк: X++: select priceDiscTable where (!priceDiscTable.FromDate || priceDiscTable.FromDate <= fromDate) && (!priceDiscTable.ToDate || priceDiscTable.ToDate >= fromDate) && priceDiscTable.AccountCode == _priceTrans.AccountCode && priceDiscTable.AccountRelation == _priceTrans.AccountRelation && priceDiscTable.ItemCode == _priceTrans.ItemCode && priceDiscTable.ItemRelation == _priceTrans.ItemRelation && priceDiscTable.Currency == _priceTrans.Currency && priceDiscTable.InventDimId == _priceTrans.InventDimId && priceDiscTable.relation == _priceTrans.relation && priceDiscTable.Module == _priceTrans.Module X++: while (priceDiscTable) { ttsBegin; priceDiscAdmTrans.clear(); priceDiscAdmTrans.initFromPriceDiscTable_OVK(priceDiscTable); priceDiscAdmTrans.ToDate = fromDate - 1; priceDiscAdmTrans.JournalNum = _journalNum; priceDiscAdmTrans.insert(); ttsCommit; next priceDiscTable; } X++: void initFromPriceDiscTable_OVK(PriceDiscTable _priceDiscTable)
{
;
this.ItemCode = _priceDiscTable.ItemCode;
this.AccountCode = _priceDiscTable.AccountCode;
this.ItemRelation = _priceDiscTable.ItemRelation;
this.AccountRelation = _priceDiscTable.AccountRelation;
this.QuantityAmount = _priceDiscTable.QuantityAmount;
this.FromDate = _priceDiscTable.FromDate;
this.ToDate = _priceDiscTable.ToDate;
this.Amount = _priceDiscTable.Amount;
this.Currency = _priceDiscTable.Currency;
this.Percent1 = _priceDiscTable.Percent1;
this.Percent2 = _priceDiscTable.Percent2;
this.DeliveryTime = _priceDiscTable.DeliveryTime;
this.SearchAgain = _priceDiscTable.SearchAgain;
this.PriceUnit = _priceDiscTable.PriceUnit;
this.relation = _priceDiscTable.relation;
this.UnitId = _priceDiscTable.UnitId;
this.Markup = _priceDiscTable.Markup;
this.AllocateMarkup = _priceDiscTable.AllocateMarkup;
this.Module = _priceDiscTable.Module;
this.InventDimId = _priceDiscTable.InventDimId;
this.PriceDiscTableRef = _priceDiscTable.RecId;
} |
|