diff --git a/build/Packages.json b/build/Packages.json index 73c08cac2e..60205dd2a1 100644 --- a/build/Packages.json +++ b/build/Packages.json @@ -4,7 +4,7 @@ "Source": "NuGet.org" }, "AppBaselines-BCArtifacts": { - "Version": "28.1.48062.0", + "Version": "28.1.48312.0", "Source": "BCArtifacts", "_comment": "Used to fetch app baselines from BC artifacts" } diff --git a/src/Apps/W1/Quality Management/Test Library/src/QltyInspectionUtility.Codeunit.al b/src/Apps/W1/Quality Management/Test Library/src/QltyInspectionUtility.Codeunit.al index 568f56711b..86a3051844 100644 --- a/src/Apps/W1/Quality Management/Test Library/src/QltyInspectionUtility.Codeunit.al +++ b/src/Apps/W1/Quality Management/Test Library/src/QltyInspectionUtility.Codeunit.al @@ -54,7 +54,7 @@ codeunit 139940 "Qlty. Inspection Utility" LibraryUtility: Codeunit "Library - Utility"; NoSeriesCodeunit: Codeunit "No. Series"; DefaultResult2PassCodeLbl: Label 'PASS', Locked = true; - SupervisorRoleIDTok: Label 'QltyMngmnt - Edit', Locked = true; + AdminSupervisorRoleIDTok: Label 'QltyMgmt - Admin', Locked = true; internal procedure EnsureSetupExists() var @@ -62,7 +62,7 @@ codeunit 139940 "Qlty. Inspection Utility" UserPermissionsLibrary: Codeunit "User Permissions Library"; begin QltyAutoConfigure.EnsureBasicSetupExists(false); - UserPermissionsLibrary.AssignPermissionSetToUser(UserSecurityId(), SupervisorRoleIDTok); + UserPermissionsLibrary.AssignPermissionSetToUser(UserSecurityId(), AdminSupervisorRoleIDTok); end; internal procedure CreateABasicTemplateAndInstanceOfAInspection(var OutCreatedQltyInspectionHeader: Record "Qlty. Inspection Header"; var OutQltyInspectionTemplateHdr: Record "Qlty. Inspection Template Hdr.") diff --git a/src/Apps/W1/Quality Management/app/src/AccessControl/QltyPermissionMgmt.Codeunit.al b/src/Apps/W1/Quality Management/app/src/AccessControl/QltyPermissionMgmt.Codeunit.al index d56651c00d..14f0978e9c 100644 --- a/src/Apps/W1/Quality Management/app/src/AccessControl/QltyPermissionMgmt.Codeunit.al +++ b/src/Apps/W1/Quality Management/app/src/AccessControl/QltyPermissionMgmt.Codeunit.al @@ -28,7 +28,7 @@ codeunit 20406 "Qlty. Permission Mgmt." ActionChangeItemTrackingLbl: Label 'change item tracking'; ActionChangeSourceQuantityLbl: Label 'change source quantity'; ActionEditLineCommentLbl: Label 'edit line note/comment'; - SupervisorRoleIDTxt: Label 'QltyMngmnt - Edit', Locked = true; + AdminSupervisorRoleIDTxt: Label 'QltyMgmt - Admin', Locked = true; UserDoesNotHavePermissionToErr: Label 'The user [%1] does not have permission to [%2].', Comment = '%1=User id, %2=permission being attempted'; /// @@ -64,7 +64,7 @@ codeunit 20406 "Qlty. Permission Mgmt." /// True if the user can change other users' inspections; otherwise, false. internal procedure CanChangeOtherInspections(): Boolean begin - exit(HasSupervisorRole()); + exit(HasAdminSupervisorRole()); end; /// @@ -90,10 +90,22 @@ codeunit 20406 "Qlty. Permission Mgmt." /// internal procedure VerifyCanReopenInspection() begin - if not CanModifyTableData(Database::"Qlty. Inspection Header") then + if not CanReopenInspection() then Error(UserDoesNotHavePermissionToErr, UserId(), ActionReopenInspectionLbl); end; + /// + /// Checks if the current user can reopen an inspection. + /// + /// True if the user can reopen an inspection; otherwise, false. + local procedure CanReopenInspection(): Boolean + begin + if not CanModifyTableData(Database::"Qlty. Inspection Header") then + exit(false); + + exit(HasAdminSupervisorRole()); + end; + /// /// Verifies the current user can delete an open inspection. Throws an error if not permitted. /// @@ -121,7 +133,7 @@ codeunit 20406 "Qlty. Permission Mgmt." if not CanDeleteTableData(Database::"Qlty. Inspection Header") then exit(false); - exit(HasSupervisorRole()); + exit(HasAdminSupervisorRole()); end; /// @@ -160,7 +172,7 @@ codeunit 20406 "Qlty. Permission Mgmt." if not CanModifyTableData(Database::"Qlty. Inspection Header") then exit(false); - exit(HasSupervisorRole()); + exit(HasAdminSupervisorRole()); end; /// @@ -195,15 +207,15 @@ codeunit 20406 "Qlty. Permission Mgmt." end; #region Verify Permissions - local procedure HasSupervisorRole() IsAssigned: Boolean + local procedure HasAdminSupervisorRole() IsAssigned: Boolean var UserPermissions: Codeunit "User Permissions"; CurrentExtensionModuleInfo: ModuleInfo; begin - IsAssigned := HasUserPermissionSetDirectlyAssigned(UserSecurityId(), SupervisorRoleIDTxt); + IsAssigned := HasUserPermissionSetDirectlyAssigned(UserSecurityId(), AdminSupervisorRoleIDTxt); if not IsAssigned then if NavApp.GetCurrentModuleInfo(CurrentExtensionModuleInfo) then - IsAssigned := UserPermissions.HasUserPermissionSetAssigned(UserSecurityId(), CompanyName(), SupervisorRoleIDTxt, 0, CurrentExtensionModuleInfo.Id()); + IsAssigned := UserPermissions.HasUserPermissionSetAssigned(UserSecurityId(), CompanyName(), AdminSupervisorRoleIDTxt, 0, CurrentExtensionModuleInfo.Id()); if not IsAssigned then IsAssigned := UserPermissions.IsSuper(UserSecurityId()); end; diff --git a/src/Apps/W1/Quality Management/app/src/Document/QltyInspection.Page.al b/src/Apps/W1/Quality Management/app/src/Document/QltyInspection.Page.al index ee3c648de9..8e8f9e13f0 100644 --- a/src/Apps/W1/Quality Management/app/src/Document/QltyInspection.Page.al +++ b/src/Apps/W1/Quality Management/app/src/Document/QltyInspection.Page.al @@ -649,7 +649,7 @@ page 20406 "Qlty. Inspection" PromotedCategory = Report; Caption = 'Non Conformance Report'; ToolTip = 'Specifies the Non Conformance Report has a layout suitable for quality inspection templates that typically contain Non Conformance Report questions.'; - Image = PrintReport; + Image = Report; Promoted = true; PromotedIsBig = true; PromotedOnly = true; @@ -669,7 +669,7 @@ page 20406 "Qlty. Inspection" PromotedCategory = Report; Caption = 'Inspection Report'; ToolTip = 'General purpose inspection report.'; - Image = PrintReport; + Image = Report; Promoted = true; PromotedIsBig = true; PromotedOnly = true; @@ -731,11 +731,13 @@ page 20406 "Qlty. Inspection" QltyDocumentNavigation.NavigateToFindEntries(Rec); end; } +#pragma warning disable AS0031 +#pragma warning disable AS0032 group(ItemAvailabilityBy) { Caption = 'Item Availability by'; Image = ItemAvailability; - action(tItemAvailabilityByEvent) + action(ItemAvailabilityByEvent) { ApplicationArea = Suite; Caption = 'Event'; @@ -751,7 +753,7 @@ page 20406 "Qlty. Inspection" AvailItemAvailabilityFormsMgt.ShowItemAvailabilityFromItem(Item, "Item Availability Type"::"Event"); end; } - action(Period) + action(ItemAvailabilityByPeriod) { ApplicationArea = Suite; Caption = 'Period'; @@ -762,7 +764,7 @@ page 20406 "Qlty. Inspection" "Variant Filter" = field("Source Variant Code"); ToolTip = 'Show the projected quantity of the item over time according to time periods, such as day, week, or month.'; } - action(Variant) + action(ItemAvailabilityByVariant) { ApplicationArea = Planning; Caption = 'Variant'; @@ -773,7 +775,7 @@ page 20406 "Qlty. Inspection" "Variant Filter" = field("Source Variant Code"); ToolTip = 'View the current and projected quantity of the item for each variant.'; } - action(Location) + action(ItemAvailabilityByLocation) { ApplicationArea = Suite; Caption = 'Location'; @@ -784,7 +786,7 @@ page 20406 "Qlty. Inspection" "Variant Filter" = field("Source Variant Code"); ToolTip = 'View the actual and projected quantity of the item per location.'; } - action(Lot) + action(ItemAvailabilityByLot) { ApplicationArea = ItemTracking; Caption = 'Lot'; @@ -793,7 +795,7 @@ page 20406 "Qlty. Inspection" RunPageLink = "No." = field("Source Item No."); ToolTip = 'View the current and projected quantity of the item for each lot.'; } - action(BinContents) + action(ItemAvailabilityByBinContents) { ApplicationArea = Warehouse; Caption = 'Bin Contents'; @@ -804,7 +806,7 @@ page 20406 "Qlty. Inspection" ToolTip = 'View the quantities of the item in each bin where it exists. You can see all the important parameters relating to bin content, and you can modify certain bin content parameters in this window.'; } } - action(tShowTransfers) + action(ShowRelatedTransferDocuments) { Caption = 'Show Related Transfer Documents'; Image = TransferOrder; @@ -816,6 +818,8 @@ page 20406 "Qlty. Inspection" Rec.RunModalRelatedTransfers(); end; } +#pragma warning restore AS0032 +#pragma warning restore AS0031 } } diff --git a/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionHeader.Table.al b/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionHeader.Table.al index 87e1a1b656..f11afba971 100644 --- a/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionHeader.Table.al +++ b/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionHeader.Table.al @@ -34,7 +34,8 @@ table 20405 "Qlty. Inspection Header" DrillDownPageId = "Qlty. Inspection List"; LookupPageId = "Qlty. Inspection List"; DataClassification = CustomerContent; - Permissions = tabledata "Qlty. Inspection Line" = d; + Permissions = tabledata "Qlty. Inspection Line" = d, + tabledata "Qlty. I. Result Condit. Conf." = d; fields { diff --git a/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionLine.Table.al b/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionLine.Table.al index e9f32a3b9a..cef37cd9b6 100644 --- a/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionLine.Table.al +++ b/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionLine.Table.al @@ -22,6 +22,7 @@ table 20406 "Qlty. Inspection Line" LookupPageId = "Qlty. Inspection Lines"; DrillDownPageId = "Qlty. Inspection Lines"; DataClassification = CustomerContent; + Permissions = tabledata "Qlty. I. Result Condit. Conf." = d; fields { diff --git a/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionList.Page.al b/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionList.Page.al index 8aa2a55bfc..718dee2eb9 100644 --- a/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionList.Page.al +++ b/src/Apps/W1/Quality Management/app/src/Document/QltyInspectionList.Page.al @@ -194,7 +194,7 @@ page 20408 "Qlty. Inspection List" AccessByPermission = tabledata "Qlty. Inspection Header" = I; Caption = 'Create Inspection'; ToolTip = 'Specifies to create a new Quality Inspection.'; - Image = CreateForm; + Image = BulletList; Promoted = true; PromotedCategory = Process; PromotedIsBig = true; @@ -464,7 +464,7 @@ page 20408 "Qlty. Inspection List" Caption = 'Non Conformance Report'; Enabled = RowActionsAreEnabled; ToolTip = 'Specifies the Non Conformance Report has a layout suitable for quality inspection templates that typically contain Non Conformance Report questions.'; - Image = PrintReport; + Image = Report; Promoted = true; PromotedIsBig = true; PromotedOnly = true; @@ -485,7 +485,7 @@ page 20408 "Qlty. Inspection List" Caption = 'Inspection Report'; Enabled = RowActionsAreEnabled; ToolTip = 'General purpose inspection report.'; - Image = PrintReport; + Image = Report; Promoted = true; PromotedIsBig = true; PromotedOnly = true; @@ -550,12 +550,14 @@ page 20408 "Qlty. Inspection List" QltyDocumentNavigation.NavigateToFindEntries(Rec); end; } +#pragma warning disable AS0031 +#pragma warning disable AS0032 group(ItemAvailabilityBy) { Caption = 'Item Availability by'; Enabled = RowActionsAreEnabled; Image = ItemAvailability; - action(tItemAvailabilityByEvent) + action(ItemAvailabilityByEvent) { ApplicationArea = Suite; Caption = 'Event'; @@ -572,7 +574,7 @@ page 20408 "Qlty. Inspection List" AvailItemAvailabilityFormsMgt.ShowItemAvailabilityFromItem(Item, "Item Availability Type"::"Event"); end; } - action(Period) + action(ItemAvailabilityByPeriod) { ApplicationArea = Suite; Caption = 'Period'; @@ -584,7 +586,7 @@ page 20408 "Qlty. Inspection List" "Variant Filter" = field("Source Variant Code"); ToolTip = 'Show the projected quantity of the item over time according to time periods, such as day, week, or month.'; } - action(Variant) + action(ItemAvailabilityByVariant) { ApplicationArea = Planning; Caption = 'Variant'; @@ -596,7 +598,7 @@ page 20408 "Qlty. Inspection List" "Variant Filter" = field("Source Variant Code"); ToolTip = 'View the current and projected quantity of the item for each variant.'; } - action(Location) + action(ItemAvailabilityByLocation) { ApplicationArea = Suite; Caption = 'Location'; @@ -608,7 +610,7 @@ page 20408 "Qlty. Inspection List" "Variant Filter" = field("Source Variant Code"); ToolTip = 'View the actual and projected quantity of the item per location.'; } - action(Lot) + action(ItemAvailabilityByLot) { ApplicationArea = ItemTracking; Caption = 'Lot'; @@ -618,7 +620,7 @@ page 20408 "Qlty. Inspection List" RunPageLink = "No." = field("Source Item No."); ToolTip = 'View the current and projected quantity of the item for each lot.'; } - action(BinContents) + action(ItemAvailabilityByBinContents) { ApplicationArea = Warehouse; Caption = 'Bin Contents'; @@ -630,6 +632,8 @@ page 20408 "Qlty. Inspection List" ToolTip = 'View the quantities of the item in each bin where it exists. You can see all the important parameters relating to bin content, and you can modify certain bin content parameters in this window.'; } } +#pragma warning restore AS0032 +#pragma warning restore AS0031 } } diff --git a/src/Apps/W1/Quality Management/app/src/Permissions/D365BasicQltyMngmnt.PermissionSetExt.al b/src/Apps/W1/Quality Management/app/src/Permissions/AdministratorQltyMgmt.PermissionSetExt.al similarity index 70% rename from src/Apps/W1/Quality Management/app/src/Permissions/D365BasicQltyMngmnt.PermissionSetExt.al rename to src/Apps/W1/Quality Management/app/src/Permissions/AdministratorQltyMgmt.PermissionSetExt.al index 1aa3b8824f..f7a3426735 100644 --- a/src/Apps/W1/Quality Management/app/src/Permissions/D365BasicQltyMngmnt.PermissionSetExt.al +++ b/src/Apps/W1/Quality Management/app/src/Permissions/AdministratorQltyMgmt.PermissionSetExt.al @@ -6,7 +6,9 @@ namespace Microsoft.QualityManagement.Permissions; using System.Security.AccessControl; -permissionsetextension 20400 "D365 BASIC - QltyMngmnt" extends "D365 BASIC" +#pragma warning disable AS0090 +permissionsetextension 20402 "Administrator - QltyMgmt" extends "Administrator" { - IncludedPermissionSets = "QltyMngmnt - Edit"; -} \ No newline at end of file + IncludedPermissionSets = "QltyMgmt - Admin"; +} +#pragma warning restore AS0090 \ No newline at end of file diff --git a/src/Apps/W1/Quality Management/app/src/Permissions/D365BusFullAccessQltyMngmnt.PermissionSetExt.al b/src/Apps/W1/Quality Management/app/src/Permissions/D365BasicIsvQltyMgmt.PermissionSetExt.al similarity index 69% rename from src/Apps/W1/Quality Management/app/src/Permissions/D365BusFullAccessQltyMngmnt.PermissionSetExt.al rename to src/Apps/W1/Quality Management/app/src/Permissions/D365BasicIsvQltyMgmt.PermissionSetExt.al index b6f8d3a6b6..134cb9f53b 100644 --- a/src/Apps/W1/Quality Management/app/src/Permissions/D365BusFullAccessQltyMngmnt.PermissionSetExt.al +++ b/src/Apps/W1/Quality Management/app/src/Permissions/D365BasicIsvQltyMgmt.PermissionSetExt.al @@ -6,7 +6,9 @@ namespace Microsoft.QualityManagement.Permissions; using System.Security.AccessControl; -permissionsetextension 20401 "D365 BUS FULL ACCESS - QltyMngmnt" extends "D365 BUS FULL ACCESS" +#pragma warning disable AS0090 +permissionsetextension 20400 "D365 BASIC ISV - QltyMgmt" extends "D365 BASIC ISV" { - IncludedPermissionSets = "QltyMngmnt - Edit"; -} \ No newline at end of file + IncludedPermissionSets = "QltyMgmt - Admin"; +} +#pragma warning restore AS0090 \ No newline at end of file diff --git a/src/Apps/W1/Quality Management/app/src/Permissions/D365ReadQltyMngmnt.PermissionSetExt.al b/src/Apps/W1/Quality Management/app/src/Permissions/D365BusFullAccessQltyMgmt.PermissionSetExt.al similarity index 68% rename from src/Apps/W1/Quality Management/app/src/Permissions/D365ReadQltyMngmnt.PermissionSetExt.al rename to src/Apps/W1/Quality Management/app/src/Permissions/D365BusFullAccessQltyMgmt.PermissionSetExt.al index 6271133f8b..73077e94a3 100644 --- a/src/Apps/W1/Quality Management/app/src/Permissions/D365ReadQltyMngmnt.PermissionSetExt.al +++ b/src/Apps/W1/Quality Management/app/src/Permissions/D365BusFullAccessQltyMgmt.PermissionSetExt.al @@ -6,7 +6,9 @@ namespace Microsoft.QualityManagement.Permissions; using System.Security.AccessControl; -permissionsetextension 20403 "D365 READ - QltyMngmnt" extends "D365 READ" +#pragma warning disable AS0090 +permissionsetextension 20401 "D365 BUS FULL ACCESS - QltyMgmt" extends "D365 BUS FULL ACCESS" { - IncludedPermissionSets = "QltyMngmnt - Read"; -} \ No newline at end of file + IncludedPermissionSets = "QltyMgmt - Admin"; +} +#pragma warning restore AS0090 \ No newline at end of file diff --git a/src/Apps/W1/Quality Management/app/src/Permissions/AdministratorQltyMngmnt.PermissionSetExt.al b/src/Apps/W1/Quality Management/app/src/Permissions/D365ReadQltyMgmt.PermissionSetExt.al similarity index 71% rename from src/Apps/W1/Quality Management/app/src/Permissions/AdministratorQltyMngmnt.PermissionSetExt.al rename to src/Apps/W1/Quality Management/app/src/Permissions/D365ReadQltyMgmt.PermissionSetExt.al index 4b49d6c5da..4fb75a5ef0 100644 --- a/src/Apps/W1/Quality Management/app/src/Permissions/AdministratorQltyMngmnt.PermissionSetExt.al +++ b/src/Apps/W1/Quality Management/app/src/Permissions/D365ReadQltyMgmt.PermissionSetExt.al @@ -6,7 +6,9 @@ namespace Microsoft.QualityManagement.Permissions; using System.Security.AccessControl; -permissionsetextension 20402 "Administrator - QltyMngmnt" extends "Administrator" +#pragma warning disable AS0090 +permissionsetextension 20403 "D365 READ - QltyMgmt" extends "D365 READ" { - IncludedPermissionSets = "QltyMngmnt - Edit"; -} \ No newline at end of file + IncludedPermissionSets = "QltyMgmt - Read"; +} +#pragma warning restore AS0090 \ No newline at end of file diff --git a/src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntEdit.PermissionSet.al b/src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtAdmin.PermissionSet.al similarity index 88% rename from src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntEdit.PermissionSet.al rename to src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtAdmin.PermissionSet.al index 6a9d66f7a8..920d325e95 100644 --- a/src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntEdit.PermissionSet.al +++ b/src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtAdmin.PermissionSet.al @@ -18,13 +18,15 @@ using Microsoft.QualityManagement.Workflow; /// /// Used for administering Quality Management and supervising Quality Inspections. /// -permissionset 20405 "QltyMngmnt - Edit" +#pragma warning disable AS0125 +#pragma warning disable AS0090 +permissionset 20405 "QltyMgmt - Admin" { - Caption = 'Quality Management - Full edit access'; + Caption = 'Quality Admin & Supervisor'; Access = Public; Assignable = true; - IncludedPermissionSets = "QltyMngmnt - Objects"; + IncludedPermissionSets = "QltyMgmt - Objects"; Permissions = tabledata "Qlty. Management Setup" = RIMD, @@ -43,3 +45,5 @@ permissionset 20405 "QltyMngmnt - Edit" tabledata "Qlty. Inspection Header" = RIMD, tabledata "Qlty. Inspection Line" = RIMD; } +#pragma warning restore AS0090 +#pragma warning restore AS0125 \ No newline at end of file diff --git a/src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntInspector.PermissionSet.al b/src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtInspector.PermissionSet.al similarity index 57% rename from src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntInspector.PermissionSet.al rename to src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtInspector.PermissionSet.al index 3fdf824ecc..cfd02d529a 100644 --- a/src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntInspector.PermissionSet.al +++ b/src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtInspector.PermissionSet.al @@ -10,7 +10,6 @@ using Microsoft.QualityManagement.Configuration.SourceConfiguration; using Microsoft.QualityManagement.Configuration.Template; using Microsoft.QualityManagement.Configuration.Template.Test; using Microsoft.QualityManagement.Document; -using Microsoft.QualityManagement.Integration.Inventory.Transfer; using Microsoft.QualityManagement.RoleCenters; using Microsoft.QualityManagement.Setup; using Microsoft.QualityManagement.Workflow; @@ -18,29 +17,31 @@ using Microsoft.QualityManagement.Workflow; /// /// Used for working with Quality Inspections. /// -permissionset 20404 QltyMngmntInspector +#pragma warning disable AS0125 +#pragma warning disable AS0090 +permissionset 20404 "QltyMgmt - Inspector" { - Caption = 'Quality Management - Quality Inspector'; + Caption = 'Quality Inspector'; Access = Public; Assignable = true; - IncludedPermissionSets = "QltyMngmnt - Objects"; + IncludedPermissionSets = "QltyMgmt - Objects"; Permissions = - tabledata "Qlty. Workflow Config. Value" = RIMD, - tabledata "Qlty. Inspection Gen. Rule" = RIMd, + tabledata "Qlty. Workflow Config. Value" = Rim, + tabledata "Qlty. Inspection Gen. Rule" = R, tabledata "Qlty. I. Result Condit. Conf." = RIMd, - tabledata "Qlty. Inspection Result" = RIMd, - tabledata "Qlty. Inspection Template Hdr." = RIMd, - tabledata "Qlty. Inspection Template Line" = RIMd, - tabledata "Qlty. Test Lookup Value" = RIMd, - tabledata "Qlty. Management Setup" = RIMd, - tabledata "Qlty. Related Transfers Buffer" = RIMD, - tabledata "Qlty. Mgmt. Role Center Cue" = RIMd, - tabledata "Qlty. Inspect. Src. Fld. Conf." = RIMd, - tabledata "Qlty. Inspect. Source Config." = RIMd, + tabledata "Qlty. Inspection Result" = R, + tabledata "Qlty. Inspection Template Hdr." = R, + tabledata "Qlty. Inspection Template Line" = R, + tabledata "Qlty. Test Lookup Value" = R, + tabledata "Qlty. Management Setup" = R, + tabledata "Qlty. Mgmt. Role Center Cue" = Ri, + tabledata "Qlty. Inspect. Src. Fld. Conf." = R, + tabledata "Qlty. Inspect. Source Config." = R, tabledata "Qlty. Inspection Line" = RIMd, tabledata "Qlty. Inspection Header" = RIMd, - tabledata "Qlty. Test" = RIMd; + tabledata "Qlty. Test" = R; } - +#pragma warning restore AS0090 +#pragma warning restore AS0125 \ No newline at end of file diff --git a/src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntObjects.PermissionSet.al b/src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtObjects.PermissionSet.al similarity index 97% rename from src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntObjects.PermissionSet.al rename to src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtObjects.PermissionSet.al index e50387bcf0..cf72167458 100644 --- a/src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntObjects.PermissionSet.al +++ b/src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtObjects.PermissionSet.al @@ -41,11 +41,13 @@ using Microsoft.QualityManagement.Setup.SetupGuide; using Microsoft.QualityManagement.Utilities; using Microsoft.QualityManagement.Workflow; -permissionset 20406 "QltyMngmnt - Objects" +#pragma warning disable AS0125 +#pragma warning disable AS0090 +permissionset 20406 "QltyMgmt - Objects" { Caption = 'Quality Management - Objects'; Access = Internal; - Assignable = true; + Assignable = false; Permissions = // Codeunits @@ -165,3 +167,5 @@ permissionset 20406 "QltyMngmnt - Objects" table "Qlty. Inspection Header" = X, table "Qlty. Test" = X; } +#pragma warning restore AS0090 +#pragma warning restore AS0125 \ No newline at end of file diff --git a/src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntRead.PermissionSet.al b/src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtRead.PermissionSet.al similarity index 88% rename from src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntRead.PermissionSet.al rename to src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtRead.PermissionSet.al index ba280e8fe4..0ee415ac45 100644 --- a/src/Apps/W1/Quality Management/app/src/Permissions/QltyMngmntRead.PermissionSet.al +++ b/src/Apps/W1/Quality Management/app/src/Permissions/QltyMgmtRead.PermissionSet.al @@ -18,13 +18,15 @@ using Microsoft.QualityManagement.Workflow; /// /// Used for full read-only access to Quality Management. /// -permissionset 20401 "QltyMngmnt - Read" +#pragma warning disable AS0125 +#pragma warning disable AS0090 +permissionset 20401 "QltyMgmt - Read" { - Caption = 'Quality Management - Read access'; + Caption = 'Quality Auditor'; Access = Public; Assignable = true; - IncludedPermissionSets = "QltyMngmnt - Objects"; + IncludedPermissionSets = "QltyMgmt - Objects"; Permissions = tabledata "Qlty. Management Setup" = R, @@ -43,3 +45,5 @@ permissionset 20401 "QltyMngmnt - Read" tabledata "Qlty. Inspection Header" = R, tabledata "Qlty. Inspection Line" = R; } +#pragma warning restore AS0090 +#pragma warning restore AS0125 \ No newline at end of file diff --git a/src/Apps/W1/Quality Management/app/src/RoleCenters/QltyInspectionActivities.Page.al b/src/Apps/W1/Quality Management/app/src/RoleCenters/QltyInspectionActivities.Page.al index 83854b9c48..1ff2eb1410 100644 --- a/src/Apps/W1/Quality Management/app/src/RoleCenters/QltyInspectionActivities.Page.al +++ b/src/Apps/W1/Quality Management/app/src/RoleCenters/QltyInspectionActivities.Page.al @@ -13,6 +13,7 @@ page 20425 "Qlty. Inspection Activities" RefreshOnActivate = true; SourceTable = "Qlty. Mgmt. Role Center Cue"; ApplicationArea = QualityManagement; + Permissions = TableData "Qlty. Mgmt. Role Center Cue" = i; layout { diff --git a/src/Apps/W1/Quality Management/app/src/Setup/SetupGuide/QltyManagementSetupGuide.Page.al b/src/Apps/W1/Quality Management/app/src/Setup/SetupGuide/QltyManagementSetupGuide.Page.al index 43cac6e6d9..768422e3d1 100644 --- a/src/Apps/W1/Quality Management/app/src/Setup/SetupGuide/QltyManagementSetupGuide.Page.al +++ b/src/Apps/W1/Quality Management/app/src/Setup/SetupGuide/QltyManagementSetupGuide.Page.al @@ -4,7 +4,6 @@ // ------------------------------------------------------------------------------------------------ namespace Microsoft.QualityManagement.Setup.SetupGuide; -using Microsoft.QualityManagement.RoleCenters; using Microsoft.QualityManagement.Setup.ApplicationAreas; using Microsoft.QualityManagement.Utilities; using System.Environment; @@ -54,25 +53,25 @@ page 20438 "Qlty. Management Setup Guide" group(LetsGoText) { Caption = 'Let''s go!'; - InstructionalText = 'Select the link below to open the Quality Manager Role Center in a new browser tab and follow the guided tours.'; + InstructionalText = 'Select the link below to open the Quality Manager Role Center and follow the guided tours.'; } - field(LetsGoLink; LetsGoLinkLbl) +#pragma warning disable AS0031 +#pragma warning disable AS0032 + field(SettingsLink; SettingsLinkLbl) { - Caption = 'Open the Quality Manager Role Center'; + Caption = 'Open My Settings'; ShowCaption = false; - ToolTip = 'Open Quality Management Role Center and checklist in a new browser tab.'; + ToolTip = 'Open My Settings'; Editable = false; - ApplicationArea = QualityManagement; trigger OnDrillDown() - var - TargetURL: Text; begin - TargetURL := GetUrl(ClientType::Web, CompanyName, ObjectType::Page, Page::"Qlty. Manager Role Center") + URLProfileLbl; - Hyperlink(TargetURL); + Page.Run(Page::"User Settings"); end; } +#pragma warning restore AS0032 +#pragma warning restore AS0031 } } } @@ -81,19 +80,23 @@ page 20438 "Qlty. Management Setup Guide" { area(Processing) { - action(Finish) +#pragma warning disable AS0031 +#pragma warning disable AS0032 + action(Done) { ApplicationArea = QualityManagement; - Caption = 'Finish'; - ToolTip = 'Finish'; + Caption = 'Done'; + ToolTip = 'Done'; InFooterBar = true; - Image = Approve; + Image = Close; trigger OnAction(); begin - FinishAction(); + DoneAction(); end; } +#pragma warning restore AS0032 +#pragma warning restore AS0031 } } @@ -104,8 +107,7 @@ page 20438 "Qlty. Management Setup Guide" TopBannerVisible: Boolean; MainPageVisible: Boolean; QualityManagementTok: Label 'Quality Management', Locked = true; - LetsGoLinkLbl: Label 'Open the Quality Manager Role Center'; - URLProfileLbl: Label '&profile=QLTY.%20MANAGER', Locked = true; + SettingsLinkLbl: Label 'Open My Settings'; trigger OnInit(); begin @@ -118,7 +120,7 @@ page 20438 "Qlty. Management Setup Guide" FeatureTelemetry.LogUptake('0000QIC', QualityManagementTok, Enum::"Feature Uptake Status"::Discovered); end; - local procedure FinishAction(); + local procedure DoneAction(); var GuidedExperience: Codeunit "Guided Experience"; QltyApplicationAreaMgmt: Codeunit "Qlty. Application Area Mgmt."; diff --git a/src/Apps/W1/Quality Management/app/src/Workflow/QltyWorkflowResponse.Codeunit.al b/src/Apps/W1/Quality Management/app/src/Workflow/QltyWorkflowResponse.Codeunit.al index 038744b314..67be6b0918 100644 --- a/src/Apps/W1/Quality Management/app/src/Workflow/QltyWorkflowResponse.Codeunit.al +++ b/src/Apps/W1/Quality Management/app/src/Workflow/QltyWorkflowResponse.Codeunit.al @@ -23,7 +23,8 @@ using System.Reflection; /// codeunit 20424 "Qlty. Workflow Response" { - Permissions = tabledata "Workflow Step Instance" = r; + Permissions = tabledata "Workflow Step Instance" = r, + tabledata "Qlty. Workflow Config. Value" = im; var QltyWorkflowSetup: Codeunit "Qlty. Workflow Setup"; diff --git a/src/Apps/W1/Quality Management/test/src/QltyTestsPermissionMgmt.Codeunit.al b/src/Apps/W1/Quality Management/test/src/QltyTestsPermissionMgmt.Codeunit.al index 5759d264b2..3cd140bea6 100644 --- a/src/Apps/W1/Quality Management/test/src/QltyTestsPermissionMgmt.Codeunit.al +++ b/src/Apps/W1/Quality Management/test/src/QltyTestsPermissionMgmt.Codeunit.al @@ -19,7 +19,7 @@ codeunit 139957 "Qlty. Tests - Permission Mgmt." QltyInspectionUtility: Codeunit "Qlty. Inspection Utility"; LibraryAssert: Codeunit "Library Assert"; UserDoesNotHavePermissionToErr: Label 'The user [%1] does not have permission to [%2].', Comment = '%1=User id, %2=permission being attempted'; - SupervisorRoleIDTok: Label 'QltyMngmnt - Edit', Locked = true; + AdminSupervisorRoleIDTok: Label 'QltyMgmt - Admin', Locked = true; [Test] procedure VerifyCanCreateManualInspection_ShouldError() @@ -41,7 +41,7 @@ codeunit 139957 "Qlty. Tests - Permission Mgmt." // [SCENARIO] Verify that creating a manual inspection succeeds with proper supervisor permissions // [GIVEN] The supervisor role permission set is added - LibraryLowerPermissions.AddPermissionSet(SupervisorRoleIDTok); + LibraryLowerPermissions.AddPermissionSet(AdminSupervisorRoleIDTok); // [WHEN] VerifyCanCreateManualInspection is called QltyInspectionUtility.VerifyCanCreateManualInspection(); @@ -69,7 +69,7 @@ codeunit 139957 "Qlty. Tests - Permission Mgmt." // [SCENARIO] Verify that creating a re-inspection succeeds with proper supervisor permissions // [GIVEN] The supervisor role permission set is added - LibraryLowerPermissions.AddPermissionSet(SupervisorRoleIDTok); + LibraryLowerPermissions.AddPermissionSet(AdminSupervisorRoleIDTok); // [WHEN] VerifyCanCreateReinspection is called QltyInspectionUtility.VerifyCanCreateReinspection(); @@ -97,7 +97,7 @@ codeunit 139957 "Qlty. Tests - Permission Mgmt." // [SCENARIO] Verify that deleting an open inspection succeeds with proper supervisor permissions // [GIVEN] The supervisor role permission set is added - LibraryLowerPermissions.AddPermissionSet(SupervisorRoleIDTok); + LibraryLowerPermissions.AddPermissionSet(AdminSupervisorRoleIDTok); // [WHEN] VerifyCanDeleteOpenInspection is called QltyInspectionUtility.VerifyCanDeleteOpenInspection(); @@ -125,7 +125,7 @@ codeunit 139957 "Qlty. Tests - Permission Mgmt." // [SCENARIO] Verify that deleting a finished inspection succeeds with proper supervisor permissions // [GIVEN] The supervisor role permission set is added - LibraryLowerPermissions.AddPermissionSet(SupervisorRoleIDTok); + LibraryLowerPermissions.AddPermissionSet(AdminSupervisorRoleIDTok); // [WHEN] VerifyCanDeleteFinishedInspection is called QltyInspectionUtility.VerifyCanDeleteFinishedInspection(); @@ -140,7 +140,7 @@ codeunit 139957 "Qlty. Tests - Permission Mgmt." // [SCENARIO] Verify that changing other users' inspections succeeds with proper supervisor permissions // [GIVEN] The supervisor role permission set is added - LibraryLowerPermissions.AddPermissionSet(SupervisorRoleIDTok); + LibraryLowerPermissions.AddPermissionSet(AdminSupervisorRoleIDTok); // [WHEN] VerifyCanChangeOtherInspections is called QltyInspectionUtility.VerifyCanChangeOtherInspections(); @@ -169,7 +169,7 @@ codeunit 139957 "Qlty. Tests - Permission Mgmt." // [SCENARIO] Verify that reopening an inspection succeeds with proper supervisor permissions // [GIVEN] The supervisor role permission set is added - LibraryLowerPermissions.AddPermissionSet(SupervisorRoleIDTok); + LibraryLowerPermissions.AddPermissionSet(AdminSupervisorRoleIDTok); // [WHEN] VerifyCanReopenInspection is called QltyInspectionUtility.VerifyCanReopenInspection(); @@ -197,7 +197,7 @@ codeunit 139957 "Qlty. Tests - Permission Mgmt." // [SCENARIO] Verify that finishing an inspection succeeds with proper supervisor permissions // [GIVEN] The supervisor role permission set is added - LibraryLowerPermissions.AddPermissionSet(SupervisorRoleIDTok); + LibraryLowerPermissions.AddPermissionSet(AdminSupervisorRoleIDTok); // [WHEN] VerifyCanFinishInspection is called QltyInspectionUtility.VerifyCanFinishInspection(); @@ -226,7 +226,7 @@ codeunit 139957 "Qlty. Tests - Permission Mgmt." // [SCENARIO] Verify that changing item tracking succeeds with proper supervisor permissions // [GIVEN] The supervisor role permission set is added - LibraryLowerPermissions.AddPermissionSet(SupervisorRoleIDTok); + LibraryLowerPermissions.AddPermissionSet(AdminSupervisorRoleIDTok); // [WHEN] VerifyCanChangeItemTracking is called QltyInspectionUtility.VerifyCanChangeItemTracking(); @@ -255,7 +255,7 @@ codeunit 139957 "Qlty. Tests - Permission Mgmt." // [SCENARIO] Verify that changing source quantity succeeds with proper supervisor permissions // [GIVEN] The supervisor role permission set is added - LibraryLowerPermissions.AddPermissionSet(SupervisorRoleIDTok); + LibraryLowerPermissions.AddPermissionSet(AdminSupervisorRoleIDTok); // [WHEN] VerifyCanChangeSourceQuantity is called QltyInspectionUtility.VerifyCanChangeSourceQuantity(); diff --git a/src/Apps/W1/Subscription Billing/App/Billing/Page Extensions/UserSetup.PageExt.al b/src/Apps/W1/Subscription Billing/App/Billing/Page Extensions/UserSetup.PageExt.al index b946a0234e..a8ea49d948 100644 --- a/src/Apps/W1/Subscription Billing/App/Billing/Page Extensions/UserSetup.PageExt.al +++ b/src/Apps/W1/Subscription Billing/App/Billing/Page Extensions/UserSetup.PageExt.al @@ -2,7 +2,7 @@ namespace Microsoft.SubscriptionBilling; using System.Security.User; -pageextension 8017 "User Setup" extends "User Setup" +pageextension 8015 "User Setup" extends "User Setup" { layout { diff --git a/src/Apps/W1/Subscription Billing/App/RoleCenters/AccPayableAdministratorRC.PageExt.al b/src/Apps/W1/Subscription Billing/App/RoleCenters/AccPayableAdministratorRC.PageExt.al index 8a76f7270e..1e562ab852 100644 --- a/src/Apps/W1/Subscription Billing/App/RoleCenters/AccPayableAdministratorRC.PageExt.al +++ b/src/Apps/W1/Subscription Billing/App/RoleCenters/AccPayableAdministratorRC.PageExt.al @@ -6,7 +6,7 @@ namespace Microsoft.SubscriptionBilling; using Microsoft.Finance.RoleCenters; -pageextension 8015 "Acc. Payable Administrator RC" extends "Acc. Payable Administrator RC" +pageextension 8017 "Acc. Payable Administrator RC" extends "Acc. Payable Administrator RC" { actions {