Codeunit 99000883 Mfg. Sales Order Planning

App
Base Application
Namespace
Microsoft.Sales.Document
Versions
26-28

Versions171819202122232425262728

Source29

Source in 29

src/Layers/W1/BaseApp/Manufacturing/Sales/Document/MfgSalesOrderPlanning.Codeunit.al32 lines, Copyright (c) Microsoft Corporation. MIT

// ------------------------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
// ------------------------------------------------------------------------------------------------
namespace Microsoft.Sales.Document;

using Microsoft.Inventory.Tracking;
using Microsoft.Manufacturing.Document;

codeunit 99000883 "Mfg. Sales Order Planning"
{
    [EventSubscriber(ObjectType::Page, Page::"Sales Order Planning", 'OnMakeLinesOnSetFromSourceLine', '', true, false)]
    local procedure OnMakeLinesOnSetFromSourceLine(var SalesPlanningLine: Record "Sales Planning Line"; ReservEntry: Record "Reservation Entry")
    var
        ProdOrderLine: Record "Prod. Order Line";
    begin
        case ReservEntry."Source Type" of
            Database::"Prod. Order Line":
                begin
                    ProdOrderLine.Get(
                        ReservEntry."Source Subtype", ReservEntry."Source ID", ReservEntry."Source Prod. Order Line");
                    if ProdOrderLine."Due Date" > SalesPlanningLine."Expected Delivery Date" then
                        SalesPlanningLine."Expected Delivery Date" := ProdOrderLine."Ending Date";
                    if ((ProdOrderLine.Status.AsInteger() + 1) < SalesPlanningLine."Planning Status") or
                        (SalesPlanningLine."Planning Status" = SalesPlanningLine."Planning Status"::None)
                    then
                        SalesPlanningLine."Planning Status" := ProdOrderLine.Status.AsInteger() + 1;
                end;
        end;
    end;
}