Page 99000755 Work Center List
- App
- Base Application
- Namespace
- Microsoft.Manufacturing.WorkCenter
- Versions
- 17-28
- Source table
- 99000754
Versions171819202122232425262728
Source29
Source in 29
src/Layers/W1/BaseApp/Manufacturing/WorkCenter/WorkCenterList.Page.al413 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.WorkCenter;
using Microsoft.Finance.Dimension;
using Microsoft.Manufacturing.Capacity;
using Microsoft.Manufacturing.Comment;
using Microsoft.Manufacturing.Reports;
using System.Text;
page 99000755 "Work Center List"
{
AdditionalSearchTerms = 'production resource,production personnel';
ApplicationArea = Manufacturing;
Caption = 'Work Centers';
CardPageID = "Work Center Card";
Editable = false;
PageType = List;
AboutTitle = 'About Work Centers';
AboutText = 'Manage and analyze work centers for production by tracking capacity, efficiency, and shop floor load, enabling effective scheduling and resource planning based on available capacity and production order status.';
SourceTable = "Work Center";
UsageCategory = Lists;
layout
{
area(content)
{
repeater(Control1)
{
ShowCaption = false;
field("No."; Rec."No.")
{
ApplicationArea = Manufacturing;
}
field(Name; Rec.Name)
{
ApplicationArea = Manufacturing;
}
field("Name 2"; Rec."Name 2")
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Alternate Work Center"; Rec."Alternate Work Center")
{
ApplicationArea = Manufacturing;
}
field("Work Center Group Code"; Rec."Work Center Group Code")
{
ApplicationArea = Manufacturing;
}
field("Global Dimension 1 Code"; Rec."Global Dimension 1 Code")
{
ApplicationArea = Dimensions;
Visible = false;
}
field("Global Dimension 2 Code"; Rec."Global Dimension 2 Code")
{
ApplicationArea = Dimensions;
Visible = false;
}
field("Direct Unit Cost"; Rec."Direct Unit Cost")
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Indirect Cost %"; Rec."Indirect Cost %")
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Unit Cost"; Rec."Unit Cost")
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Unit of Measure Code"; Rec."Unit of Measure Code")
{
ApplicationArea = Manufacturing;
}
field(Capacity; Rec.Capacity)
{
ApplicationArea = Manufacturing;
ToolTip = 'Specifies the amount of work that can be done in a specified time period. The capacity of a work center indicates how many machines or persons are working at the same time. If you enter 2, for example, the work center will take half of the time compared to a work center with the capacity of 1. ';
}
field(Efficiency; Rec.Efficiency)
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Maximum Efficiency"; Rec."Maximum Efficiency")
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Minimum Efficiency"; Rec."Minimum Efficiency")
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Simulation Type"; Rec."Simulation Type")
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Shop Calendar Code"; Rec."Shop Calendar Code")
{
ApplicationArea = Planning;
}
field("Calendar Entries Available Until"; Rec."Calendar Entries Avail. Until")
{
ApplicationArea = Manufacturing;
Editable = false;
StyleExpr = CalendarHorizonStyleTxt;
}
field("Search Name"; Rec."Search Name")
{
ApplicationArea = Manufacturing;
}
field("Overhead Rate"; Rec."Overhead Rate")
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Last Date Modified"; Rec."Last Date Modified")
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Flushing Method"; Rec."Flushing Method")
{
ApplicationArea = Manufacturing;
Visible = false;
}
field("Subcontractor No."; Rec."Subcontractor No.")
{
ApplicationArea = Manufacturing;
Visible = false;
}
}
}
area(factboxes)
{
systempart(Control1900383207; Links)
{
ApplicationArea = RecordLinks;
Visible = false;
}
systempart(Control1905767507; Notes)
{
ApplicationArea = Notes;
Visible = true;
}
}
}
actions
{
area(navigation)
{
group("Wor&k Ctr.")
{
Caption = 'Wor&k Ctr.';
Image = WorkCenter;
action("Capacity Ledger E&ntries")
{
ApplicationArea = Manufacturing;
Caption = 'Capacity Ledger E&ntries';
Image = CapacityLedger;
RunObject = Page "Capacity Ledger Entries";
RunPageLink = "Work Center No." = field("No."),
"Posting Date" = field("Date Filter");
RunPageView = sorting("Work Center No.", "Work Shift Code", "Posting Date");
ShortCutKey = 'Ctrl+F7';
ToolTip = 'View the capacity ledger entries of the involved production order. Capacity is recorded either as time (run time, stop time, or setup time) or as quantity (scrap quantity or output quantity).';
}
action("Co&mments")
{
ApplicationArea = Manufacturing;
Caption = 'Co&mments';
Image = ViewComments;
RunObject = Page "Manufacturing Comment Sheet";
RunPageLink = "No." = field("No.");
RunPageView = where("Table Name" = const("Work Center"));
ToolTip = 'View or add comments for the record.';
}
group(Dimensions)
{
Caption = 'Dimensions';
Image = Dimensions;
action("Dimensions-Single")
{
ApplicationArea = Dimensions;
Caption = 'Dimensions-Single';
Image = Dimensions;
RunObject = Page "Default Dimensions";
RunPageLink = "Table ID" = const(99000754),
"No." = field("No.");
ShortCutKey = 'Alt+D';
ToolTip = 'View or edit the single set of dimensions that are set up for the selected record.';
}
action("Dimensions-&Multiple")
{
AccessByPermission = TableData Dimension = R;
ApplicationArea = Dimensions;
Caption = 'Dimensions-&Multiple';
Image = DimensionSets;
ToolTip = 'View or edit dimensions for a group of records. You can assign dimension codes to transactions to distribute costs and analyze historical information.';
trigger OnAction()
var
Work: Record "Work Center";
DefaultDimMultiple: Page "Default Dimensions-Multiple";
begin
CurrPage.SetSelectionFilter(Work);
DefaultDimMultiple.SetMultiRecord(Work, Rec.FieldNo("No."));
DefaultDimMultiple.RunModal();
end;
}
}
action("Lo&ad")
{
ApplicationArea = Manufacturing;
Caption = 'Lo&ad';
Image = WorkCenterLoad;
RunObject = Page "Work Center Load";
RunPageLink = "No." = field("No.");
RunPageView = sorting("No.");
ToolTip = 'View the availability of the machine or work center, including its capacity, the allocated quantity, availability after orders, and the load in percent of its total capacity.';
}
action(Statistics)
{
ApplicationArea = Manufacturing;
Caption = 'Statistics';
Image = Statistics;
RunObject = Page "Work Center Statistics";
RunPageLink = "No." = field("No."),
"Date Filter" = field("Date Filter"),
"Work Shift Filter" = field("Work Shift Filter");
ShortCutKey = 'F7';
ToolTip = 'View statistical information, such as the value of posted entries, for the record.';
}
}
group("Pla&nning")
{
Caption = 'Pla&nning';
Image = Planning;
action("&Calendar")
{
ApplicationArea = Manufacturing;
Caption = '&Calendar';
Image = MachineCenterCalendar;
RunObject = Page "Work Center Calendar";
ToolTip = 'Open the shop calendar, for example to see the load.';
}
action("A&bsence")
{
ApplicationArea = Manufacturing;
Caption = 'A&bsence';
Image = WorkCenterAbsence;
RunObject = Page "Capacity Absence";
RunPageLink = "Capacity Type" = const("Work Center"),
"No." = field("No."),
Date = field("Date Filter");
ToolTip = 'View which working days are not available. ';
}
action("Ta&sk List")
{
ApplicationArea = Manufacturing;
Caption = 'Ta&sk List';
Image = TaskList;
RunObject = Page "Work Center Task List";
RunPageLink = "No." = field("No.");
RunPageView = sorting(Type, "No.")
where(Type = const("Work Center"),
Status = filter(.. Released),
"Routing Status" = filter(<> Finished));
ToolTip = 'View the list of operations that are scheduled for the work center.';
}
}
}
area(processing)
{
action("Calculate Work Center Calendar")
{
ApplicationArea = Manufacturing;
Caption = 'Calculate Work Center Calendar';
Image = CalcWorkCenterCalendar;
RunObject = Report "Calculate Work Center Calendar";
}
}
area(reporting)
{
#if not CLEAN27
action("Work Center Load")
{
ApplicationArea = Manufacturing;
Caption = 'Work Center Load';
Image = "Report";
RunObject = Report "Work Center Load";
ToolTip = 'Get an overview of availability at the work center, such as the capacity, the allocated quantity, availability after order, and the load in percent.';
ObsoleteState = Pending;
ObsoleteReason = 'This report has been replaced by the "Work/Machine Center Load" report and will be removed in a future release.';
ObsoleteTag = '27.0';
}
action("Work Center Load/Bar")
{
ApplicationArea = Manufacturing;
Caption = 'Work Center Load/Bar';
Image = "Report";
//The property 'PromotedCategory' can only be set if the property 'Promoted' is set to 'true'
//PromotedCategory = "Report";
RunObject = Report "Work Center Load/Bar";
ToolTip = 'View a list of work centers that are overloaded according to the plan. The efficiency or overloading is shown by efficiency bars.';
ObsoleteState = Pending;
ObsoleteReason = 'This report has been replaced by the "Work/Machine Center Load" report and will be removed in a future release.';
ObsoleteTag = '27.0';
}
#endif
action("Work/Machine Center Load")
{
ApplicationArea = Manufacturing;
Caption = 'Work/Machine Center Load';
Image = "Report";
RunObject = Report "Work/Machine Center Load";
}
}
area(Promoted)
{
group(Category_Process)
{
Caption = 'Process', Comment = 'Generated from the PromotedActionCategories property index 1.';
actionref("Calculate Work Center Calendar_Promoted"; "Calculate Work Center Calendar")
{
}
actionref("&Calendar_Promoted"; "&Calendar")
{
}
actionref("A&bsence_Promoted"; "A&bsence")
{
}
actionref("Ta&sk List_Promoted"; "Ta&sk List")
{
}
}
group(Category_Report)
{
Caption = 'Report', Comment = 'Generated from the PromotedActionCategories property index 2.';
#if not CLEAN27
actionref("Work Center Load_Promoted"; "Work Center Load")
{
ObsoleteState = Pending;
ObsoleteReason = 'This report has been replaced by the "Work/Machine Center Load" report and will be removed in a future release.';
ObsoleteTag = '27.0';
}
#endif
actionref("Work/Machine Center Load_Promoted"; "Work/Machine Center Load")
{
}
}
group(Category_Category4)
{
Caption = 'Work Center', Comment = 'Generated from the PromotedActionCategories property index 3.';
actionref(Statistics_Promoted; Statistics)
{
}
actionref("Co&mments_Promoted"; "Co&mments")
{
}
group(Category_Dimensions)
{
Caption = 'Dimensions';
ShowAs = SplitButton;
actionref("Dimensions-&Multiple_Promoted"; "Dimensions-&Multiple")
{
}
actionref("Dimensions-Single_Promoted"; "Dimensions-Single")
{
}
}
}
}
}
trigger OnAfterGetRecord()
begin
Rec.CalcFields("Calendar Entries Avail. Until");
CalendarHorizonStyleTxt := '';
if (Rec."Calendar Entries Avail. Until" <> 0D) and (Rec."Calendar Entries Avail. Until" < WorkDate()) then
CalendarHorizonStyleTxt := 'Unfavorable';
end;
var
CalendarHorizonStyleTxt: Text;
procedure GetCurrSelectionFilter(): Text
var
WorkCenter: Record "Work Center";
SelectionFilterManagement: Codeunit SelectionFilterManagement;
RecRef: RecordRef;
begin
CurrPage.SetSelectionFilter(WorkCenter);
RecRef.GetTable(WorkCenter);
exit(SelectionFilterManagement.GetSelectionFilter(RecRef, WorkCenter.FieldNo("No.")));
end;
}