diff --git a/src/Apps/W1/APIV1/test/src/APIV1SalesCreditMemosE2E.Codeunit.al b/src/Apps/W1/APIV1/test/src/APIV1SalesCreditMemosE2E.Codeunit.al
index 26fc2078cdf..76cedb1b0cb 100644
--- a/src/Apps/W1/APIV1/test/src/APIV1SalesCreditMemosE2E.Codeunit.al
+++ b/src/Apps/W1/APIV1/test/src/APIV1SalesCreditMemosE2E.Codeunit.al
@@ -1015,6 +1015,8 @@ codeunit 139728 "APIV1 - Sales Credit Memos E2E"
SalesHeader1RecordRef.GETTABLE(SalesHeader1);
SalesHeader2RecordRef.GETTABLE(SalesHeader2);
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, DATABASE::"Sales Header", 'Operation Occurred Date');
Assert.RecordsAreEqualExceptCertainFields(
SalesHeader1RecordRef, SalesHeader2RecordRef, TempIgnoredFieldsForComparison, 'Credit Memos do not match');
diff --git a/src/Apps/W1/APIV1/test/src/APIV1SalesOrdersE2E.Codeunit.al b/src/Apps/W1/APIV1/test/src/APIV1SalesOrdersE2E.Codeunit.al
index f9a02ff432e..02edf870bad 100644
--- a/src/Apps/W1/APIV1/test/src/APIV1SalesOrdersE2E.Codeunit.al
+++ b/src/Apps/W1/APIV1/test/src/APIV1SalesOrdersE2E.Codeunit.al
@@ -407,6 +407,8 @@ codeunit 139711 "APIV1 - Sales Orders E2E"
PageSalesHeader.Get(PageSalesHeader."Document Type"::Order, SalesOrder."No.".VALUE());
ApiRecordRef.GetTable(ApiSalesHeader);
PageRecordRef.GetTable(PageSalesHeader);
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, DATABASE::"Sales Header", 'Operation Occurred Date');
Assert.RecordsAreEqualExceptCertainFields(ApiRecordRef, PageRecordRef, TempIgnoredFieldsForComparison,
'Page and API order do not match');
diff --git a/src/Apps/W1/APIV1/test/src/APIV1SalesQuotesE2E.Codeunit.al b/src/Apps/W1/APIV1/test/src/APIV1SalesQuotesE2E.Codeunit.al
index f7d370d6677..2c9af50edd8 100644
--- a/src/Apps/W1/APIV1/test/src/APIV1SalesQuotesE2E.Codeunit.al
+++ b/src/Apps/W1/APIV1/test/src/APIV1SalesQuotesE2E.Codeunit.al
@@ -391,6 +391,11 @@ codeunit 139723 "APIV1 - Sales Quotes E2E"
PageSalesHeader.Get(PageSalesHeader."Document Type"::Quote, SalesQuote."No.".VALUE());
ApiRecordRef.GETTABLE(ApiSalesHeader);
PageRecordRef.GETTABLE(PageSalesHeader);
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, DATABASE::"Sales Header", 'Operation Occurred Date');
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, DATABASE::"Sales Header", 'VAT Reporting Date');
+
Assert.RecordsAreEqualExceptCertainFields(ApiRecordRef, PageRecordRef, TempIgnoredFieldsForComparison,
'Page and API quote do not match');
end;
diff --git a/src/Apps/W1/APIV1/test/src/SalesInvoicesE2E.Codeunit.al b/src/Apps/W1/APIV1/test/src/SalesInvoicesE2E.Codeunit.al
index 9d839757e46..6331acdecff 100644
--- a/src/Apps/W1/APIV1/test/src/SalesInvoicesE2E.Codeunit.al
+++ b/src/Apps/W1/APIV1/test/src/SalesInvoicesE2E.Codeunit.al
@@ -609,6 +609,9 @@ codeunit 139709 "Sales Invoices E2E"
PageSalesHeader.GET(PageSalesHeader."Document Type"::Invoice, SalesInvoice."No.".VALUE());
ApiRecordRef.GETTABLE(ApiSalesHeader);
PageRecordRef.GETTABLE(PageSalesHeader);
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, DATABASE::"Sales Header", 'Operation Occurred Date');
+
Assert.RecordsAreEqualExceptCertainFields(ApiRecordRef, PageRecordRef, TempIgnoredFieldsForComparison,
'Page and API Invoice do not match');
diff --git a/src/Apps/W1/APIV2/test/src/APIV2PurchCrMemosE2E.Codeunit.al b/src/Apps/W1/APIV2/test/src/APIV2PurchCrMemosE2E.Codeunit.al
index ef529ca543e..87af8d0755d 100644
--- a/src/Apps/W1/APIV2/test/src/APIV2PurchCrMemosE2E.Codeunit.al
+++ b/src/Apps/W1/APIV2/test/src/APIV2PurchCrMemosE2E.Codeunit.al
@@ -700,6 +700,8 @@ codeunit 139865 "APIV2 - Purch. Cr. Memos E2E"
PurchaseHeader1RecordRef.GetTable(PurchaseHeader1);
PurchaseHeader2RecordRef.GetTable(PurchaseHeader2);
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, Database::"Purchase Header", 'Operation Occurred Date');
Assert.RecordsAreEqualExceptCertainFields(
PurchaseHeader1RecordRef, PurchaseHeader2RecordRef, TempIgnoredFieldsForComparison, 'Credit Memos do not match');
diff --git a/src/Apps/W1/APIV2/test/src/APIV2PurchaseOrdersE2E.Codeunit.al b/src/Apps/W1/APIV2/test/src/APIV2PurchaseOrdersE2E.Codeunit.al
index d074fb583c0..c378d5bdffb 100644
--- a/src/Apps/W1/APIV2/test/src/APIV2PurchaseOrdersE2E.Codeunit.al
+++ b/src/Apps/W1/APIV2/test/src/APIV2PurchaseOrdersE2E.Codeunit.al
@@ -431,6 +431,8 @@ codeunit 139851 "APIV2 - Purchase Orders E2E"
LibraryUtility.AddTempField(TempIgnoredFieldsForComparison, ApiPurchaseHeader.FieldNo("No."), Database::"Purchase Header");
LibraryUtility.AddTempField(
TempIgnoredFieldsForComparison, ApiPurchaseHeader.FieldNo("Posting Description"), Database::"Purchase Header");
+ LibraryUtility.AddTempField(
+ TempIgnoredFieldsForComparison, ApiPurchaseHeader.FieldNo("Order Date"), Database::"Purchase Header");
// Special ignore case for GB
LibraryUtility.AddTempField(TempIgnoredFieldsForComparison, ApiPurchaseHeader.FieldNo("Invoice Received Date"), Database::"Purchase Header");
// Special ignore case for ES
@@ -445,14 +447,14 @@ codeunit 139851 "APIV2 - Purchase Orders E2E"
LibraryUtility.AddTempField(TempIgnoredFieldsForComparison, RecordField."No.", Database::"Purchase Header");
// Time zone will impact how the date from the page vs WebService is saved. If removed this will fail in snap between 12:00 - 1 AM
- if Time() < 020000T then begin
- LibraryUtility.AddTempField(TempIgnoredFieldsForComparison, ApiPurchaseHeader.FieldNo("Order Date"), Database::"Purchase Header");
+ if Time() < 020000T then
LibraryUtility.AddTempField(TempIgnoredFieldsForComparison, ApiPurchaseHeader.FieldNo("Posting Date"), Database::"Purchase Header");
- end;
PagePurchaseHeader.Get(PagePurchaseHeader."Document Type"::Order, PurchaseOrder."No.".Value());
ApiRecordRef.GetTable(ApiPurchaseHeader);
PageRecordRef.GetTable(PagePurchaseHeader);
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, Database::"Purchase Header", 'Operation Occurred Date');
Assert.RecordsAreEqualExceptCertainFields(ApiRecordRef, PageRecordRef, TempIgnoredFieldsForComparison,
'Page and API order do not match');
diff --git a/src/Apps/W1/APIV2/test/src/APIV2SalesCreditMemosE2E.Codeunit.al b/src/Apps/W1/APIV2/test/src/APIV2SalesCreditMemosE2E.Codeunit.al
index f9abde31df7..fe166e3c78a 100644
--- a/src/Apps/W1/APIV2/test/src/APIV2SalesCreditMemosE2E.Codeunit.al
+++ b/src/Apps/W1/APIV2/test/src/APIV2SalesCreditMemosE2E.Codeunit.al
@@ -983,6 +983,8 @@ codeunit 139828 "APIV2 - Sales Credit Memos E2E"
SalesHeader1RecordRef.GetTable(SalesHeader1);
SalesHeader2RecordRef.GetTable(SalesHeader2);
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, Database::"Sales Header", 'Operation Occurred Date');
Assert.RecordsAreEqualExceptCertainFields(
SalesHeader1RecordRef, SalesHeader2RecordRef, TempIgnoredFieldsForComparison, 'Credit Memos do not match');
diff --git a/src/Apps/W1/APIV2/test/src/APIV2SalesInvoicesE2E.Codeunit.al b/src/Apps/W1/APIV2/test/src/APIV2SalesInvoicesE2E.Codeunit.al
index f1fa3f06251..48c3cfab539 100644
--- a/src/Apps/W1/APIV2/test/src/APIV2SalesInvoicesE2E.Codeunit.al
+++ b/src/Apps/W1/APIV2/test/src/APIV2SalesInvoicesE2E.Codeunit.al
@@ -637,6 +637,9 @@ codeunit 139809 "APIV2 - Sales Invoices E2E"
PageSalesHeader.Get(PageSalesHeader."Document Type"::Invoice, SalesInvoice."No.".Value());
ApiRecordRef.GetTable(ApiSalesHeader);
PageRecordRef.GetTable(PageSalesHeader);
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, Database::"Sales Header", 'Operation Occurred Date');
+
Assert.RecordsAreEqualExceptCertainFields(ApiRecordRef, PageRecordRef, TempIgnoredFieldsForComparison,
'Page and API Invoice do not match');
diff --git a/src/Apps/W1/APIV2/test/src/APIV2SalesOrdersE2E.Codeunit.al b/src/Apps/W1/APIV2/test/src/APIV2SalesOrdersE2E.Codeunit.al
index 76098510107..64f461f2dae 100644
--- a/src/Apps/W1/APIV2/test/src/APIV2SalesOrdersE2E.Codeunit.al
+++ b/src/Apps/W1/APIV2/test/src/APIV2SalesOrdersE2E.Codeunit.al
@@ -397,6 +397,8 @@ codeunit 139811 "APIV2 - Sales Orders E2E"
PageSalesHeader.Get(PageSalesHeader."Document Type"::Order, SalesOrder."No.".Value());
ApiRecordRef.GetTable(ApiSalesHeader);
PageRecordRef.GetTable(PageSalesHeader);
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, Database::"Sales Header", 'Operation Occurred Date');
Assert.RecordsAreEqualExceptCertainFields(ApiRecordRef, PageRecordRef, TempIgnoredFieldsForComparison,
'Page and API order do not match');
diff --git a/src/Apps/W1/APIV2/test/src/APIV2SalesQuotesE2E.Codeunit.al b/src/Apps/W1/APIV2/test/src/APIV2SalesQuotesE2E.Codeunit.al
index 0ce2588067e..6d47b2ce69e 100644
--- a/src/Apps/W1/APIV2/test/src/APIV2SalesQuotesE2E.Codeunit.al
+++ b/src/Apps/W1/APIV2/test/src/APIV2SalesQuotesE2E.Codeunit.al
@@ -377,6 +377,11 @@ codeunit 139823 "APIV2 - Sales Quotes E2E"
PageSalesHeader.Get(PageSalesHeader."Document Type"::Quote, SalesQuote."No.".Value());
ApiRecordRef.GetTable(ApiSalesHeader);
PageRecordRef.GetTable(PageSalesHeader);
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, Database::"Sales Header", 'Operation Occurred Date');
+ LibraryGraphMgt.AddFieldToIgnoreIfExists(
+ TempIgnoredFieldsForComparison, Database::"Sales Header", 'VAT Reporting Date');
+
Assert.RecordsAreEqualExceptCertainFields(ApiRecordRef, PageRecordRef, TempIgnoredFieldsForComparison,
'Page and API quote do not match');
end;
diff --git a/src/DisabledTests/_Exclude_APIV1__Tests/_Exclude_APIV1__Tests.DisabledTest.json b/src/DisabledTests/_Exclude_APIV1__Tests/_Exclude_APIV1__Tests.DisabledTest.json
index efe7e900b8f..35fefab11a3 100644
--- a/src/DisabledTests/_Exclude_APIV1__Tests/_Exclude_APIV1__Tests.DisabledTest.json
+++ b/src/DisabledTests/_Exclude_APIV1__Tests/_Exclude_APIV1__Tests.DisabledTest.json
@@ -1,24 +1,4 @@
[
- {
- "codeunitId": 139709,
- "codeunitName": "Sales Invoices E2E",
- "method": "TestCreateInvoiceThroughPageAndAPI"
- },
- {
- "codeunitId": 139711,
- "codeunitName": "APIV1 - Sales Orders E2E",
- "method": "TestCreateOrderThroughPageAndAPI"
- },
- {
- "codeunitId": 139723,
- "codeunitName": "APIV1 - Sales Quotes E2E",
- "method": "TestCreateQuoteThroughPageAndAPI"
- },
- {
- "codeunitId": 139728,
- "codeunitName": "APIV1 - Sales Credit Memos E2E",
- "method": "TestCreateCreditMemoThroughPageAndAPI"
- },
{
"codeunitId": 139734,
"codeunitName": "APIV1 - Sales Inv. Lines E2E",
diff --git a/src/DisabledTests/_Exclude_APIV2__Tests/_Exclude_APIV2__Tests.DisabledTest.json b/src/DisabledTests/_Exclude_APIV2__Tests/_Exclude_APIV2__Tests.DisabledTest.json
index 6af862e2968..d02899103a0 100644
--- a/src/DisabledTests/_Exclude_APIV2__Tests/_Exclude_APIV2__Tests.DisabledTest.json
+++ b/src/DisabledTests/_Exclude_APIV2__Tests/_Exclude_APIV2__Tests.DisabledTest.json
@@ -4,36 +4,6 @@
"codeunitName": "APIV2 - Company Info. E2E",
"method": "TestGetCompanyAndEnvironmentDescriptions"
},
- {
- "codeunitId": 139809,
- "codeunitName": "APIV2 - Sales Invoices E2E",
- "method": "TestCreateInvoiceThroughPageAndAPI"
- },
- {
- "codeunitId": 139811,
- "codeunitName": "APIV2 - Sales Orders E2E",
- "method": "TestCreateOrderThroughPageAndAPI"
- },
- {
- "codeunitId": 139823,
- "codeunitName": "APIV2 - Sales Quotes E2E",
- "method": "TestCreateQuoteThroughPageAndAPI"
- },
- {
- "codeunitId": 139828,
- "codeunitName": "APIV2 - Sales Credit Memos E2E",
- "method": "TestCreateCreditMemoThroughPageAndAPI"
- },
- {
- "codeunitId": 139851,
- "codeunitName": "APIV2 - Purchase Orders E2E",
- "method": "TestCreateOrderThroughPageAndAPI"
- },
- {
- "codeunitId": 139865,
- "codeunitName": "APIV2 - Purch. Cr. Memos E2E",
- "method": "TestCreateCreditMemoThroughPageAndAPI"
- },
{
"codeunitId": 139928,
"codeunitName": "APIV2 - Purch. Ret. Shpts. E2E",
diff --git a/src/Layers/W1/Tests/TestLibraries/LibraryGraphMgt.Codeunit.al b/src/Layers/W1/Tests/TestLibraries/LibraryGraphMgt.Codeunit.al
index bc37687e68c..983d66ef17b 100644
--- a/src/Layers/W1/Tests/TestLibraries/LibraryGraphMgt.Codeunit.al
+++ b/src/Layers/W1/Tests/TestLibraries/LibraryGraphMgt.Codeunit.al
@@ -16,6 +16,21 @@ codeunit 130618 "Library - Graph Mgt"
FailedRequestErr: Label '%1 request failed. Response code is %2 (%3). %4', Comment = '%1 - request method, %2 - response code number, %3 - response code, %4 - error message';
FailedRequestWithUnexpectedResponseCodeErr: Label '%1 request failed. Response code is %2 (%3), expected code is %4. %5', Comment = '%1 - request method, %2 - response code number, %3 - response code, %4 - expected response code, %5 - error message';
+ /// Adds a field to the ignored-field buffer when the field exists in the source table.
+ /// Temporary ignored-field buffer.
+ /// Source table number.
+ /// Source field name.
+ procedure AddFieldToIgnoreIfExists(var TempIgnoredFields: Record 2000000041 temporary; SourceTableNo: Integer; SourceFieldName: Text)
+ var
+ RecordField: Record Field;
+ LibraryUtility: Codeunit "Library - Utility";
+ begin
+ RecordField.SetRange(TableNo, SourceTableNo);
+ RecordField.SetRange(FieldName, SourceFieldName);
+ if RecordField.FindFirst() then
+ LibraryUtility.AddTempField(TempIgnoredFields, RecordField."No.", SourceTableNo);
+ end;
+
///
/// Sets the authentication provider used by this library instance.
/// Selecting the same provider preserves its cached state.