![]() |
#6 |
Участник
|
Примерно такой вот нужен код (сильно не бейте :-)). Фин. учет себестоимости должен быть по операциям.
DeleteConsumptionEntry(_ItemLedgEntryNo : BigInteger;_ShowMessage : Boolean) ItemLedgEntry.RESET; ItemLedgEntry.GET(_ItemLedgEntryNo); IF ProdOrderLine.FINDFIRST THEN REPEAT ProdOrderLine."Cost is Adjusted" := FALSE; ProdOrderLine.MODIFY; Item.GET(ProdOrderLine."Item No."); Item."Cost is Adjusted" := FALSE; Item.MODIFY; UNTIL ProdOrderLine.NEXT = 0; ProdOrderLine.RESET; ProdOrderLine.SETRANGE("Prod. Order No.",ItemLedgEntry."Prod. Order No."); ItemApplEntry.RESET; ItemApplEntry.SETRANGE("Item Ledger Entry No.",ItemLedgEntry."Entry No."); IF ItemApplEntry.FINDFIRST THEN REPEAT AppliedFromItemLedgEntry.RESET; IF AppliedFromItemLedgEntry.GET(ItemApplEntry."Inbound Item Entry No.") = TRUE THEN BEGIN AppliedFromItemLedgEntry."Remaining Quantity" := AppliedFromItemLedgEntry."Remaining Quantity" - ItemApplEntry.Quantity; AppliedFromItemLedgEntry.Open := TRUE; AppliedFromItemLedgEntry."Applied Entry to Adjust" := TRUE; AppliedFromItemLedgEntry.MODIFY; END; ItemApplEntry.DELETE; UNTIL ItemApplEntry.NEXT = 0; LedgEntryDim.RESET; LedgEntryDim.SETRANGE("Table ID",32); LedgEntryDim.SETRANGE("Entry No.",ItemLedgEntry."Entry No."); IF LedgEntryDim.FINDFIRST THEN LedgEntryDim.DELETEALL; ItemLedgEntry.DELETE; ValueEntry.RESET; ValueEntry.SETRANGE("Item Ledger Entry No.",_ItemLedgEntryNo); IF ValueEntry.FINDFIRST THEN REPEAT GLEntry.RESET; GLEntry.SETRANGE("Value Entry No.",ValueEntry."Entry No."); IF GLEntry.FINDFIRST THEN REPEAT LedgEntryDim.RESET(); LedgEntryDim.SETRANGE("Table ID",17); LedgEntryDim.SETRANGE("Entry No.",GLEntry."Entry No."); IF LedgEntryDim.FINDFIRST THEN LedgEntryDim.DELETEALL; GLEntry.DELETE; UNTIL GLEntry.NEXT = 0; LedgEntryDim.RESET; LedgEntryDim.SETRANGE("Table ID",5802); LedgEntryDim.SETRANGE("Entry No.",ValueEntry."Entry No."); IF LedgEntryDim.FINDFIRST THEN LedgEntryDim.DELETEALL; ValueEntry.DELETE; UNTIL ValueEntry.NEXT = 0; IF _ShowMessage THEN MESSAGE('Изменено потребление в заказе ' + ProdOrderLine."Prod. Order No.");
__________________
Want to believe... |
|