-
Notifications
You must be signed in to change notification settings - Fork 436
[SOA]: Bugbash for releases 28.x - Contact unable to find due to Qasim map to Megan, different names #10036
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
tomasevicst
merged 19 commits into
main
from
bugs/640657_SOA_Mapped_Contact_Enhancement
Aug 13, 2026
Merged
[SOA]: Bugbash for releases 28.x - Contact unable to find due to Qasim map to Megan, different names #10036
Changes from 2 commits
Commits
Show all changes
19 commits
Select commit
Hold shift + click to select a range
b613f0f
Enhance contact search functionality and improve user instructions
tomasevicst 2868cdf
Enhance contact handling by improving error messages and refining ema…
tomasevicst b0c3487
Update codeunit number for SOA Contact Search implementation
tomasevicst 47d11fb
Fix codeunit number for SOA Contact Search implementation
tomasevicst 4dc593f
Enhance SOA Send Reply functionality by adding BCC handling, improvin…
tomasevicst 2dd4ee7
Enhance SOA functionality by adding contact override trust validation…
tomasevicst 87e956c
Enhance SOA functionality by adding validation for message access and…
tomasevicst 625ba05
Merge branch 'main' into bugs/640657_SOA_Mapped_Contact_Enhancement
tomasevicst 4efb73e
Refactor contact email handling to use ReadCommitted isolation level …
tomasevicst 36c2579
Merge branch 'main' into bugs/640657_SOA_Mapped_Contact_Enhancement
tomasevicst 8d91b13
Refactor authorization checks in SOA Reply and Filters to use central…
tomasevicst 3be80eb
Update telemetry logging to include specific action identifier in SOA…
tomasevicst a78c47f
Enhance SOA Contact handling and email reply logic
tomasevicst 44c9fb7
Rename parameter in OnBeforeFindRecord procedure for clarity
tomasevicst 32c6d92
Refactor error message for missing mapped contact email to improve cl…
tomasevicst d4ba661
Rename parameter in FindRecordContactFromList procedure for consistency
tomasevicst 4609d17
Merge branch 'main' into bugs/640657_SOA_Mapped_Contact_Enhancement
tomasevicst f15d955
Add "E-Mail 2" key to Contact table across multiple layers
tomasevicst 1246059
Fix error handling in Contact email validation to exit gracefully
tomasevicst File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
59 changes: 59 additions & 0 deletions
59
src/Apps/W1/SalesOrderAgent/app/src/Integration/SOAContactSearchImpl.Codeunit.al
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,59 @@ | ||
| // ------------------------------------------------------------------------------------------------ | ||
| // Copyright (c) Microsoft Corporation. All rights reserved. | ||
| // Licensed under the MIT License. See License.txt in the project root for license information. | ||
| // ------------------------------------------------------------------------------------------------ | ||
| namespace Microsoft.Agent.SalesOrderAgent; | ||
|
|
||
| using Microsoft.CRM.Contact; | ||
| using System.Agents; | ||
|
|
||
| codeunit 4412 "SOA Contact Search Impl" | ||
| { | ||
| Access = Internal; | ||
| EventSubscriberInstance = Manual; | ||
| InherentEntitlements = X; | ||
| InherentPermissions = X; | ||
|
|
||
| var | ||
| AgentTaskID: BigInteger; | ||
|
|
||
| internal procedure SetAgentTaskID(NewAgentTaskID: BigInteger) | ||
| begin | ||
| AgentTaskID := NewAgentTaskID; | ||
| end; | ||
|
|
||
| [EventSubscriber(ObjectType::Page, Page::"Contact List", OnBeforeFindRecord, '', false, false)] | ||
| local procedure FindRecordContactFromList(var Rec: Record Contact; Which: Text; var Found: Boolean; var IsHandled: Boolean) | ||
| begin | ||
|
tomasevicst marked this conversation as resolved.
|
||
| FindRecordContact(Rec, Which, Found, IsHandled); | ||
| end; | ||
|
|
||
| local procedure FindRecordContact(var Rec: Record Contact; Which: Text; var Found: Boolean; var IsHandled: Boolean) | ||
| var | ||
| AgentTaskMessage: Record "Agent Task Message"; | ||
| SOATaskContactOverride: Record "SOA Task Contact Override"; | ||
| OriginalFilterGroup: Integer; | ||
| begin | ||
| if AgentTaskID = 0 then | ||
| exit; | ||
|
|
||
| AgentTaskMessage.SetLoadFields(ID); | ||
| AgentTaskMessage.SetRange("Task ID", AgentTaskID); | ||
| AgentTaskMessage.SetRange(Type, AgentTaskMessage.Type::Input); | ||
| AgentTaskMessage.SetFilter(Status, '<>%1&<>%2', AgentTaskMessage.Status::Discarded, AgentTaskMessage.Status::Rejected); | ||
| AgentTaskMessage.SetCurrentKey("Task ID", SystemCreatedAt); | ||
| AgentTaskMessage.Ascending(false); | ||
| if not AgentTaskMessage.FindFirst() then | ||
| exit; | ||
|
|
||
| if not SOATaskContactOverride.Get(AgentTaskID, AgentTaskMessage.ID) then | ||
| exit; | ||
|
|
||
| OriginalFilterGroup := Rec.FilterGroup(); | ||
| Rec.FilterGroup(11); | ||
|
tomasevicst marked this conversation as resolved.
|
||
| Rec.SetRange("No.", SOATaskContactOverride."Contact No."); | ||
| Rec.FilterGroup(OriginalFilterGroup); | ||
| Found := Rec.Find(Which); | ||
| IsHandled := true; | ||
| end; | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
35 changes: 35 additions & 0 deletions
35
src/Apps/W1/SalesOrderAgent/app/src/PageExtention/SOAContactListExt.PageExt.al
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,35 @@ | ||
| // ------------------------------------------------------------------------------------------------ | ||
| // Copyright (c) Microsoft Corporation. All rights reserved. | ||
| // Licensed under the MIT License. See License.txt in the project root for license information. | ||
| // ------------------------------------------------------------------------------------------------ | ||
| namespace Microsoft.Agent.SalesOrderAgent; | ||
|
|
||
| using Microsoft.CRM.Contact; | ||
|
|
||
| pageextension 4411 "SOA Contact List Ext" extends "Contact List" | ||
| { | ||
| layout | ||
| { | ||
| addafter("E-Mail") | ||
| { | ||
| field("SOA E-Mail 2"; Rec."E-Mail 2") | ||
| { | ||
| ApplicationArea = Basic, Suite; | ||
| Caption = 'Email 2'; | ||
| ToolTip = 'Specifies an alternative email address for the contact.'; | ||
| Visible = IsAgentSession; | ||
| } | ||
|
tomasevicst marked this conversation as resolved.
|
||
| } | ||
| } | ||
|
|
||
| trigger OnOpenPage() | ||
| var | ||
| SOAKPITrackAll: Codeunit "SOA - KPI Track All"; | ||
| AgentTaskID: BigInteger; | ||
| begin | ||
| IsAgentSession := SOAKPITrackAll.IsOrderTakerAgentSession(AgentTaskID); | ||
| end; | ||
|
|
||
| var | ||
| IsAgentSession: Boolean; | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.