diff --git a/Apps/GB/IdealPostcodes/app/src/IPCConfig.Page.al b/Apps/GB/IdealPostcodes/app/src/IPCConfig.Page.al index 1d38c3cdda..327d421a45 100644 --- a/Apps/GB/IdealPostcodes/app/src/IPCConfig.Page.al +++ b/Apps/GB/IdealPostcodes/app/src/IPCConfig.Page.al @@ -73,6 +73,11 @@ page 9400 "IPC Config" HyperLink(APIKeyUrlTok); end; } + field("Remove Organisation Name"; Rec."Remove Organisation Name") + { + ApplicationArea = All; + ToolTip = 'When enabled, the organisation name is removed from the first address line.'; + } } } } @@ -161,4 +166,4 @@ page 9400 "IPC Config" end else TermsAndCondsRead := Rec."Enabled"; end; -} \ No newline at end of file +} diff --git a/Apps/GB/IdealPostcodes/app/src/IPCConfig.Table.al b/Apps/GB/IdealPostcodes/app/src/IPCConfig.Table.al index eef3200c4f..bcb93c3f4e 100644 --- a/Apps/GB/IdealPostcodes/app/src/IPCConfig.Table.al +++ b/Apps/GB/IdealPostcodes/app/src/IPCConfig.Table.al @@ -25,6 +25,11 @@ table 9402 "IPC Config" Caption = 'Enabled'; DataClassification = CustomerContent; } + field(5; "Remove Organisation Name"; Boolean) + { + Caption = 'Remove the organisation name from address'; + DataClassification = CustomerContent; + } } keys @@ -76,4 +81,4 @@ table 9402 "IPC Config" begin exit(EndpointBaseUrlTxt); end; -} \ No newline at end of file +} diff --git a/Apps/GB/IdealPostcodes/app/src/IPCManagement.Codeunit.al b/Apps/GB/IdealPostcodes/app/src/IPCManagement.Codeunit.al index c6f6964a6a..bcd94fc919 100644 --- a/Apps/GB/IdealPostcodes/app/src/IPCManagement.Codeunit.al +++ b/Apps/GB/IdealPostcodes/app/src/IPCManagement.Codeunit.al @@ -151,12 +151,24 @@ codeunit 9400 "IPC Management" end; local procedure AddAddressToBuffer(AddressJson: JsonObject; var TempIPCAddressLookup: Record "IPC Address Lookup" temporary; EntryNo: Integer) + var + Config: Record "IPC Config"; + Line1, Line2 : Text; begin + Line1 := GetJsonValue(AddressJson, 'line_1'); + Line2 := GetJsonValue(AddressJson, 'line_2'); + + if GetConfiguration(Config) and Config."Remove Organisation Name" then + if (Line1 <> '') and (Line1 = GetJsonValue(AddressJson, 'organisation_name')) then begin + Line1 := Line2; + Line2 := ''; + end; + TempIPCAddressLookup.Init(); TempIPCAddressLookup."Entry No." := EntryNo; TempIPCAddressLookup."Address ID" := CopyStr(GetJsonValue(AddressJson, 'id'), 1, MaxStrLen(TempIPCAddressLookup."Address ID")); - TempIPCAddressLookup.Address := CopyStr(GetJsonValue(AddressJson, 'line_1'), 1, MaxStrLen(TempIPCAddressLookup.Address)); - TempIPCAddressLookup."Address 2" := CopyStr(GetJsonValue(AddressJson, 'line_2'), 1, MaxStrLen(TempIPCAddressLookup."Address 2")); + TempIPCAddressLookup.Address := CopyStr(Line1, 1, MaxStrLen(TempIPCAddressLookup.Address)); + TempIPCAddressLookup."Address 2" := CopyStr(Line2, 1, MaxStrLen(TempIPCAddressLookup."Address 2")); TempIPCAddressLookup.City := CopyStr(GetJsonValue(AddressJson, 'post_town'), 1, MaxStrLen(TempIPCAddressLookup.City)); TempIPCAddressLookup."Post Code" := CopyStr(GetJsonValue(AddressJson, 'postcode'), 1, MaxStrLen(TempIPCAddressLookup."Post Code")); TempIPCAddressLookup.County := CopyStr(GetJsonValue(AddressJson, 'county'), 1, MaxStrLen(TempIPCAddressLookup.County)); @@ -237,4 +249,4 @@ codeunit 9400 "IPC Management" exit(Config.Enabled and not IsNullGuid(Config."API Key")); end; -} \ No newline at end of file +}