11.03.2009, 13:06 | #1 |
Участник
|
Добрый день,
nav5.1 меню Производство- Планирование - Журналы субподрядов, Функции - Вычислить субподряды. Вызывается отчет 99001015. В триггере Prod. Order Routing Line - OnAfterGetRecord() вычисляется кол-во которое надо поместить в строку журнала субподряда, формула следующая Код: BaseQtyToPurch := CostCalcMgt.CalcQtyAdjdForRoutingScrap( CostCalcMgt.CalcQtyAdjdForBOMScrap( ProdOrderLine."Quantity (Base)",ProdOrderLine."Scrap %"), "Scrap Factor % (Accumulated)","Fixed Scrap Qty. (Accum.)") - (CostCalcMgt.CalcOutputQtyBaseOnPurchOrder(ProdOrderLine,"Prod. Order Routing Line") + CostCalcMgt.CalcActOutputQtyBase(ProdOrderLine,"Prod. Order Routing Line")); Код: param1:=CostCalcMgt.CalcQtyAdjdForBOMScrap(ProdOrderLine."Quantity (Base)",ProdOrderLine."Scrap %"); param2:=CostCalcMgt.CalcQtyAdjdForRoutingScrap(param1,"Scrap Factor % (Accumulated)","Fixed Scrap Qty. (Accum.)"); param3:=CostCalcMgt.CalcOutputQtyBaseOnPurchOrder(ProdOrderLine,"Prod. Order Routing Line"); param4:=CostCalcMgt.CalcActOutputQtyBase(ProdOrderLine,"Prod. Order Routing Line"); BaseQtyToPurch:=param2-(param3+param4); param1 это кол-во с учетом брака, рассчитывается оно Qty * (1 + ScrapPct / 100). Сразу возникает вопрос, почему идет увеличение кол-ва, а не его уменьшение? Получается я, должен оплатить субподрядчику кол-во, которое я заказал плюс кол-во брака. param2 - здесь добавляется к полученному кол-ву в param1 кол-во брака но уже из маршрута, что за брак и как отличается от брака в строке произв. заказ непонятна. param3 - это кол-во которое уже было создано из этой строки журнала Субподряда путем нажатия кнопки Функции -выполнить указания param4 - это кол-во, которое реально вышло из этого производственного заказа, рассчитанное по таблице Capacity Ledger Entry В итоге формула, которая собирает все параметры, мне не ясна. Получается, что из кол-ва указанного в заказе производства с учетом брака вычитают сумму количества уже отработанного товара и количества реально вышедшего из данного производственного заказа. На пример если я хочу произвести 10 шт товара1 делаю выход на 3 штуки, то в журнал субподряда попадет 10 - (0+3) = 7 , а почему не те 3 штуки на которые я сделал выход? По большому счету формулу расчета изменить не сложно, но хочется разобраться в логике работы системы. Если кто то в это разбирается и может помочь , буду очень признателен. Заранее большое спасибо |
|
11.03.2009, 14:04 | #2 |
Участник
|
Немного комментариев могу сделать.
Во-первых, почему в журнал попадает 7, а не 3. Потому что при учете заказа покупки, который получится из журнала субподрядов, автоматически учтется выход по соответствующей производственной операции. То есть если вы учли 3 через журнал выхода, вы проигнорировали тем самым субподрядчика. Потом вы оформите заказ покупки на 7, и при его учете учтется выход остальных 7 единиц. Брак на каждой строке маршрута работает как увеличение кол-ва полуфабриката, которое предполагается выпустить этой строкой. Вычисление идет от плана по готовой продукции, поэтому каждый процент брака увеличивает кол-во полуфабриката, который нужно произвести, и, соответсвенно, планируемого потребления сырья. Если отдаете субподрядчику некий полуфабрикат и знаете, что его потери у субподрядчика составят определенный процент, поставьте его в предыдущую строку маршрута. Если вы отдаете ему сырье, ставьте процент в строку спецификации. Брак в строке производственного заказа работает как дополнительная "накрутка" количества (или его можно использовать, если вы вообще не пользуетесь маршрутами). |
|