![]() |
#3 |
Участник
|
Цитата:
Сообщение от George Nordic
Смотрите класс SalesLineType метод initFromInventTable
С Уважением, Георгий. Ps Я делал метод initFromInventJournalTrans на таблице SalesLine и юзал его. Код: InventJournalTrans invJournalTrans; SalesLine salesLine; InventDim inventDim; InventTable inventTable; InventItemBarcode inventItemBarcode; ; while select invJournalTrans where invJournalTrans.JournalId == "Ж00061" { ttsbegin; inventTable = InventTable::find(invJournaltrans.ItemId); inventDim = invJournaltrans.inventDim(); inventItemBarcode = InventItemBarcode::findSalesBarcode(inventTable.itemId); inventDim.inventLocationId = inventTable.salesInventLocationId(inventDim.inventLocationId); inventDim.configId = inventDim.configId ? inventDim.configId : inventTable.standardConfigId; inventDim.inventSizeId = inventDim.InventSizeId ? inventDim.InventSizeId : inventTable.standardInventSizeId; inventDim.inventColorId = inventDim.InventColorId ? inventDim.InventColorId : inventTable.standardInventColorId; inventDim.inventDimId = InventDim::findOrCreate(inventDim).inventDimId; salesLine.SalesId = "ЗК0024"; salesLine.ItemId = invJournaltrans.ItemId; salesLine.InventTransId = invJournaltrans.InventTransId; salesLine.inventDimId = InventDim.inventDimId; salesLine.projCategoryId = inventTable.projCategoryId; salesLine.setTaxItemGroup(inventTable.salesTaxItemGroupId()); salesLine.salesUnit = inventTable.salesUnitId(); salesLine.overDeliveryPct = inventTable.salesOverDeliveryPct(); salesLine.underDeliveryPct = inventTable.salesUnderDeliveryPct(); salesLine.initName(inventTable); salesLine.initFromCustExternalItemDescription(); salesLine.salesQty = invJournaltrans.Qty; salesLine.qtyOrdered = invJournaltrans.Qty; salesLine.costPrice = inventTable.costPcsPrice(invJournaltrans.InventDimId,inventDim); salesLine.priceUnit = inventTable.salesPriceUnit(); salesLine.lineAmount = 0; salesLine.lineAmountModified(); salesLine.barCode = inventItemBarcode.itemBarCode; salesLine.barCodeType = inventItemBarcode.barcodeSetupId; salesLine.dimension = Dimensions::findDimension(salesLine, inventTable, invJournaltrans.dimension); salesLine.setPriceDisc(inventDim); salesLine.calcPackingUnit(inventDim); salesLine.write(); ttscommit; } |
|