Skip to content

Commit 85589d1

Browse files
fix: improve subcontracting management setup procedures
- Ensure proper handling of subcontracting worksheet template creation. - Exit early if template creation fails to prevent incorrect setup. - Update procedures to return boolean values for better error handling.
1 parent 8f6afde commit 85589d1

1 file changed

Lines changed: 11 additions & 5 deletions

File tree

src/Apps/W1/Subcontracting/App/src/Install/SubcontractingCompInit.Codeunit.al

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,32 +23,37 @@ codeunit 99001503 "Subcontracting Comp. Init."
2323
ManufacturingSetup.Insert(true);
2424
end;
2525

26-
CreateSubcontractingReqWkshTemplateAndNameAndUpdateSetup(ManufacturingSetup);
26+
if not CreateSubcontractingReqWkshTemplateAndNameAndUpdateSetup(ManufacturingSetup) then
27+
exit;
28+
2729
ManufacturingSetup."Direct Transfer" := true;
2830
ManufacturingSetup."Create Prod. Order Info Line" := true;
2931
Evaluate(ManufacturingSetup."Subc. Inb. Whse. Handling Time", GetDefaultInboundWhseHandlingTime());
3032
ManufacturingSetup.Modify(true);
3133
end;
3234

33-
procedure CreateSubcontractingReqWkshTemplateAndNameAndUpdateSetup(var ManufacturingSetup: Record "Manufacturing Setup")
35+
procedure CreateSubcontractingReqWkshTemplateAndNameAndUpdateSetup(var ManufacturingSetup: Record "Manufacturing Setup"): Boolean
3436
var
3537
ReqWkshTemplate: Record "Req. Wksh. Template";
3638
RequisitionWkshName: Record "Requisition Wksh. Name";
3739
begin
38-
CreateReqWkshTemplate(ReqWkshTemplate, false);
40+
if not CreateReqWkshTemplate(ReqWkshTemplate, false) then
41+
exit(false);
42+
3943
CreateRequisitionWkshName(RequisitionWkshName, ReqWkshTemplate.Name);
4044
ManufacturingSetup."Subcontracting Template Name" := ReqWkshTemplate.Name;
4145
ManufacturingSetup."Subcontracting Batch Name" := RequisitionWkshName.Name;
46+
exit(true);
4247
end;
4348

44-
procedure CreateReqWkshTemplate(var ReqWkshTemplate: Record "Req. Wksh. Template"; Recurring: Boolean)
49+
procedure CreateReqWkshTemplate(var ReqWkshTemplate: Record "Req. Wksh. Template"; Recurring: Boolean): Boolean
4550
var
4651
ReqWkshTempDescLbl: Label 'Subcontracting', MaxLength = 80;
4752
ReqWkshTempNameLbl: Label 'SUBCONTR', MaxLength = 10;
4853
begin
4954
ReqWkshTemplate.SetRange(Type, ReqWkshTemplate.Type::Subcontracting);
5055
if ReqWkshTemplate.FindFirst() then
51-
exit;
56+
exit(false);
5257

5358
ReqWkshTemplate.Init();
5459
ReqWkshTemplate.Validate(Name, ReqWkshTempNameLbl);
@@ -57,6 +62,7 @@ codeunit 99001503 "Subcontracting Comp. Init."
5762
ReqWkshTemplate.Validate(Type, ReqWkshTemplate.Type::Subcontracting);
5863
ReqWkshTemplate.Validate("Page ID", Page::"Subc. Subcontracting Worksheet");
5964
ReqWkshTemplate.Insert(true);
65+
exit(true);
6066
end;
6167

6268
procedure CreateRequisitionWkshName(var RequisitionWkshName: Record "Requisition Wksh. Name"; WorksheetTemplateName: Text)

0 commit comments

Comments
 (0)