From b621466c07e61216684749025790edf5ffe02999 Mon Sep 17 00:00:00 2001 From: Niklas Plakolb Date: Thu, 24 Oct 2024 17:44:52 +0200 Subject: [PATCH] added: explicit validation of customer related fields --- .../src/Codeunits/FSIntTableSubscriber.Codeunit.al | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Apps/W1/FieldServiceIntegration/app/src/Codeunits/FSIntTableSubscriber.Codeunit.al b/Apps/W1/FieldServiceIntegration/app/src/Codeunits/FSIntTableSubscriber.Codeunit.al index eefb287663..59b75644e7 100644 --- a/Apps/W1/FieldServiceIntegration/app/src/Codeunits/FSIntTableSubscriber.Codeunit.al +++ b/Apps/W1/FieldServiceIntegration/app/src/Codeunits/FSIntTableSubscriber.Codeunit.al @@ -883,6 +883,7 @@ codeunit 6610 "FS Int. Table Subscriber" end; 'FS Work Order-Service Header': begin + ValidateServiceHeaderAfterInsert(DestinationRecordRef); ResetServiceOrderItemLineFromFSWorkOrderIncident(SourceRecordRef, DestinationRecordRef, ArchivedServiceOrders); ResetServiceOrderLineFromFSWorkOrderProduct(SourceRecordRef, DestinationRecordRef, ArchivedServiceOrders); ResetServiceOrderLineFromFSWorkOrderService(SourceRecordRef, DestinationRecordRef, ArchivedServiceOrders); @@ -992,6 +993,16 @@ codeunit 6610 "FS Int. Table Subscriber" end; end; + local procedure ValidateServiceHeaderAfterInsert(DestinationRecordRef: RecordRef) + var + ServiceHeader: Record "Service Header"; + begin + DestinationRecordRef.SetTable(ServiceHeader); + ServiceHeader.Validate("Customer No."); // explicit recalculation, as InitRecord() was called after setting the customer + ServiceHeader.Modify(true); + DestinationRecordRef.GetTable(ServiceHeader); + end; + local procedure ResetServiceOrderItemLineFromFSWorkOrderIncident(SourceRecordRef: RecordRef; DestinationRecordRef: RecordRef; var ArchivedServiceOrders: List of [Code[20]]) var ServiceHeader: Record "Service Header";