web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

No record found.

News and Announcements icon
Community site session details

Community site session details

Session Id :
Customer experience | Sales, Customer Insights,...
Unanswered

update Satisfaction

(0) ShareShare
ReportReport
Posted on by

how can i update the Satisfaction. In the incident case form i have case status 

if the case status = complete 

=>> Satisfaction will be sastisfied

try
{
trace.Trace("insidetry");
Entity incident = (Entity)context.InputParameters["Target"];
Entity entity = service.Retrieve("incident", incident.Id, new ColumnSet(true));
//chi nhan nhung cot bi thay doi
trace.Trace("case");
EntityReference RegardingCaseRef = entity["cos_csucasestatus"] as EntityReference;
Entity RegardingCase = service.Retrieve(RegardingCaseRef.LogicalName, RegardingCaseRef.Id, new ColumnSet("cos_csucasestatus"));
// inherited from the QueryBase,
trace.Trace("incident");
QueryExpression qeCaseStatus = new QueryExpression("incident");
qeCaseStatus.ColumnSet = new ColumnSet(true);
qeCaseStatus.Criteria.AddCondition(new ConditionExpression("cos_csucasestatus", ConditionOperator.Equal, RegardingCaseRef.Id));
EntityCollection allRelatedCase = service.RetrieveMultiple(qeCaseStatus);
trace.Trace("check boool");
if (CheckcaseStatus(allRelatedCase))
{
trace.Trace("Case title: " + RegardingCase["title"]);


RegardingCase["customersatisfactioncode"] = new OptionSetValue(5);

service.Update(RegardingCase);


}

}
catch
{
throw;
}
}

}
public bool CheckcaseStatus (EntityCollection CaseStatus)
{

if (CaseStatus.Entities.All(x => x.GetAttributeValue<OptionSetValue>("cos_csucasestatus")?.Value == 769190006))
{
//Console.WriteLine("All task completed");
return true;
}
else
{
return false;
}

I have the same question (0)
  • a33ik Profile Picture
    84,331 Most Valuable Professional on at

    Your code doesn't look complete. Can you please change it to a compilable state?

  • Community Member Profile Picture
    on at

    if the user choose casestatus parent is complete is gonna update the satisfaction to sastisfied

    do you have any suggest

  • Community Member Profile Picture
    on at

     try

                   {

                       trace.Trace("insidetry");

                       Entity incident = (Entity)context.InputParameters["Target"];

                       Entity entity = service.Retrieve("incident", incident.Id, new ColumnSet(true));

                       //chi nhan nhung cot bi thay doi

                       trace.Trace("case");

                       EntityReference RegardingCaseRef = entity["cos_csucasestatus"] as EntityReference;

                       Entity RegardingCase = service.Retrieve(RegardingCaseRef.LogicalName, RegardingCaseRef.Id, new ColumnSet("cos_csucasestatus"));

                       // inherited from the QueryBase,

                       trace.Trace("incident");

                       QueryExpression qeCaseStatus = new QueryExpression("incident");

                       qeCaseStatus.ColumnSet = new ColumnSet(true);

                       qeCaseStatus.Criteria.AddCondition(new ConditionExpression("cos_csucasestatus", ConditionOperator.Equal, RegardingCaseRef.Id));

                       EntityCollection allRelatedCase = service.RetrieveMultiple(qeCaseStatus);

                       trace.Trace("check boool");

                       if (CheckcaseStatus(allRelatedCase))

                       {

                           trace.Trace("Case title: " + RegardingCase["title"]);

                           RegardingCase["customersatisfactioncode"] = new OptionSetValue(5);

                           service.Update(RegardingCase);

                       }

                   }

                   catch

                   {

                       throw;

                   }

               }

           }

           public bool CheckcaseStatus (EntityCollection CaseStatus)

           {

               if (CaseStatus.Entities.All(x => x.GetAttributeValue<OptionSetValue>("cos_csucasestatus")?.Value == 769190006))

               {

                   //Console.WriteLine("All task completed");

                   return true;

               }

               else

               {

                   return false;

               }

  • Ray Profile Picture
    1,537 on at

    First of all, you used "cos_csucasestatus" as an EntityReference at the beginning and then as an OptionSetValue, this would throw an exception without doubt. Not sure if this is the root cause of your issue.

    Second, you should always create a new entity instance if you want to update an entity record. Your code should be like this:

    var caseToUpdate = new Entity(RegardingCase.LogicalName, RegardingCase.Id);

    caseToUpdate ["customersatisfactioncode"] = new OptionSetValue(5);

    service.Update(caseToUpdate );

    If you update the entity object base on you retrieved, you may update some extra fields that you do not want, and these fields may trigger additional logic (plugins/workflow/cloud flow). In your code, your update operation will update the "cos_csucasestatus" and "customersatisfactioncode" fields, so any plugin registered on these two fields update will get triggered.

  • Community Member Profile Picture
    on at

    hi thanks

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Stars!

Congratulations to our 2025 Community Spotlights

Thanks to all of our 2025 Community Spotlight stars!

Leaderboard > Customer experience | Sales, Customer Insights, CRM

#1
ManoVerse Profile Picture

ManoVerse 214 Super User 2026 Season 1

#2
CU11031447-0 Profile Picture

CU11031447-0 100

#3
NeerajPawar Profile Picture

NeerajPawar 76

Last 30 days Overall leaderboard

Product updates

Dynamics 365 release plans