Share via


CloseIncidentRequest Class

Applies To: Microsoft Dynamics CRM 2013, Microsoft Dynamics CRM Online

Contains the data that is needed to close an incident (case).

Namespace: Microsoft.Crm.Sdk.Messages
Assembly: Microsoft.Crm.Sdk.Proxy (in Microsoft.Crm.Sdk.Proxy.dll)

Syntax

'Declaration
<DataContractAttribute(Namespace:="https://schemas.microsoft.com/crm/2011/Contracts")> _
Public NotInheritable Class CloseIncidentRequest
    Inherits OrganizationRequest
[DataContractAttribute(Namespace="https://schemas.microsoft.com/crm/2011/Contracts")] 
public sealed class CloseIncidentRequest : OrganizationRequest

Example

The following example shows how to use this message. For this sample to work correctly, you must be connected to the server to get an IOrganizationService interface. For the complete sample, see the link later in this topic.

// First close the Incident

// Create resolution for the closing incident
IncidentResolution resolution = new IncidentResolution
{
    Subject = "Case Closed",
};

resolution.IncidentId = caseReference;

// Create the request to close the incident, and set its resolution to the 
// resolution created above
CloseIncidentRequest closeRequest = new CloseIncidentRequest();
closeRequest.IncidentResolution = resolution;

// Set the requested new status for the closed Incident
closeRequest.Status = 
    new OptionSetValue((int)incident_statuscode.ProblemSolved);

// Execute the close request
CloseIncidentResponse closeResponse = 
    (CloseIncidentResponse)_serviceProxy.Execute(closeRequest);

//Check if the incident was successfully closed
Incident incident = _serviceProxy.Retrieve(Incident.EntityLogicalName, 
    _caseIncidentId, new ColumnSet(allColumns: true)).ToEntity<Incident>();

if (incident.StateCode.HasValue && 
    incident.StateCode == IncidentState.Resolved)
{
    Console.WriteLine("The incident was closed out as Resolved.");
}
else
{
    Console.WriteLine("The incident's state was not changed.");
}

Remarks

Message Availability

This message works regardless whether the caller is connected to the server or offline.

Usage

Pass an instance of this class to the Execute method, which returns an instance of the CloseIncidentResponse class.

Privileges and Access Rights

To perform this action, the caller must have privileges on the Incident entity.

For a complete list of the required privileges, see CloseIncident Privileges.

Inheritance Hierarchy

System.Object
   Microsoft.Xrm.Sdk.OrganizationRequest
    Microsoft.Crm.Sdk.Messages.CloseIncidentRequest

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

Windows Server 2008, Windows Server 2012, Windows 7 (All Versions), Windows 8 (All Versions)

Target Platforms

Windows Server 2008, ,Windows Server 2012, ,Windows 7 (All Versions),

Change History

See Also

Reference

CloseIncidentRequest Members
Microsoft.Crm.Sdk.Messages Namespace
CloseIncidentResponse

Other Resources

CloseIncident Privileges
Sample: Validate Record State and Set State of the Record
How Role-Based Security Can Be Used to Control Access to Entities In CRM
How Instance-Based Security Can Be Used to Control Access to Entity Instances (Records) In CRM

Send comments about this topic to Microsoft.
© 2013 Microsoft Corporation. All rights reserved.