Page 99000810 Routing Version
- App
- Base Application
- Namespace
- Microsoft.Manufacturing.Routing
- Versions
- 17-28
- Source table
- 99000786
Versions171819202122232425262728
Source29
Source in 29
src/Layers/W1/BaseApp/Manufacturing/Routing/RoutingVersion.Page.al174 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.Manufacturing.Routing;
using System.Utilities;
page 99000810 "Routing Version"
{
Caption = 'Routing Version';
DataCaptionExpression = Rec.Caption();
PageType = ListPlus;
SourceTable = "Routing Version";
layout
{
area(content)
{
group(General)
{
Caption = 'General';
field("Version Code"; Rec."Version Code")
{
ApplicationArea = Manufacturing;
trigger OnAssistEdit()
begin
if Rec.AssistEdit(xRec) then
CurrPage.Update();
end;
}
field(Description; Rec.Description)
{
ApplicationArea = Manufacturing;
}
field(Type; Rec.Type)
{
ApplicationArea = Manufacturing;
trigger OnValidate()
begin
UpdateRoutingLineParallelFieldsVisibility();
CurrPage.Update(false);
end;
}
field(Status; Rec.Status)
{
ApplicationArea = Manufacturing;
}
field("Starting Date"; Rec."Starting Date")
{
ApplicationArea = Manufacturing;
}
}
part(RoutingLine; "Routing Version Lines")
{
ApplicationArea = Manufacturing;
SubPageLink = "Routing No." = field("Routing No."),
"Version Code" = field("Version Code");
}
}
area(factboxes)
{
systempart(Control1900383207; Links)
{
ApplicationArea = RecordLinks;
Visible = false;
}
systempart(Control1905767507; Notes)
{
ApplicationArea = Notes;
Visible = false;
}
}
}
actions
{
area(processing)
{
group("F&unctions")
{
Caption = 'F&unctions';
Image = "Action";
action(CopyRouting)
{
ApplicationArea = Manufacturing;
Caption = 'Copy &Routing';
Image = CopyRouteHeader;
ToolTip = 'Copy an existing routing to quickly create a similar BOM.';
trigger OnAction()
var
RoutingHeader: Record "Routing Header";
RoutingLineCopyLines: Codeunit "Routing Line-Copy Lines";
begin
if not Confirm(CopyFromRoutingQst, false) then
exit;
RoutingHeader.Get(Rec."Routing No.");
RoutingLineCopyLines.CopyRouting(Rec."Routing No.", '', RoutingHeader, Rec."Version Code");
end;
}
action("Copy Routing &Version")
{
ApplicationArea = Manufacturing;
Caption = 'Copy Routing &Version';
Ellipsis = true;
Image = CopyRouteVersion;
ToolTip = 'Copy an existing routing version to quickly create a similar routing.';
trigger OnAction()
var
RoutingLineCopyLines: Codeunit "Routing Line-Copy Lines";
begin
RoutingLineCopyLines.SelectCopyFromVersionList(Rec);
end;
}
}
}
area(Promoted)
{
group(Category_Process)
{
Caption = 'Process';
actionref(CopyRouting_Promoted; CopyRouting)
{
}
actionref("Copy Routing &Version_Promoted"; "Copy Routing &Version")
{
}
}
}
}
trigger OnQueryClosePage(CloseAction: Action): Boolean
var
ConfirmManagement: Codeunit "Confirm Management";
begin
if not CurrPage.Editable() then
exit(true);
if IsNullGuid(Rec.SystemId) then
exit(true);
if Rec.Status in [Rec.Status::Certified, Rec.Status::Closed] then
exit(true);
if not Rec.RoutingLinesExist() then
exit(true);
if not ConfirmManagement.GetResponseOrDefault(StrSubstNo(CertifyQst, CurrPage.Caption), false) then
exit(false);
exit(true);
end;
var
CopyFromRoutingQst: Label 'Copy from routing header?';
CertifyQst: Label 'The %1 has not been certified. Are you sure you want to exit?', Comment = '%1 = page caption (Production BOM)';
trigger OnAfterGetRecord()
begin
UpdateRoutingLineParallelFieldsVisibility();
end;
local procedure UpdateRoutingLineParallelFieldsVisibility()
begin
CurrPage.RoutingLine.Page.SetParallelFieldsVisible(Rec.Type = Rec.Type::Parallel);
end;
}