It's currently possible to extend the Enum "Contact Business Relation" however it is not possible to use the existing code to set that to the new value without modifying after the Microsoft code has executed. It would be much cleaner if procedure GetSelectedRelationCodes() was modified.
Current code:
local procedure GetSelectedRelationCodes() CodeFilter: Text;
begin
if SelectedBusRelationCodes <> '' then
exit(SelectedBusRelationCodes);
MarketingSetup.GetRecordOnce();
AppendFilter(CodeFilter, '|', MarketingSetup."Bus. Rel. Code for Customers");
AppendFilter(CodeFilter, '|', MarketingSetup."Bus. Rel. Code for Vendors");
AppendFilter(CodeFilter, '|', MarketingSetup."Bus. Rel. Code for Bank Accs.");
AppendFilter(CodeFilter, '|', MarketingSetup."Bus. Rel. Code for Employees");
SelectedBusRelationCodes := CodeFilter;
end;
It needs an event to allow you to execute AppendFilter for other business relation codes. We're allowed to create as many Business Relation Codes as we might want but in doing so every business relation code just ends up marked as "Other" instead of the relation we have added to the Enum. Alternatively you could also add a procedure to set SelectedBusRelationCodes manually outside of the process, would give the same result.