crm操作案例实体

using System;

using Microsoft.Xrm.Sdk;

using Microsoft.Crm.Sdk.Messages;

using Microsoft.Xrm.Sdk.Query;

/// <summary>

/// 案例

/// </summary>

public class IncidentHelper

{

public static readonly string entityName = "incident";

public Guid incidentId = Guid.Empty;

public IOrganizationService service;

/// <summary>

/// 创建案例

/// </summary>

public void Create()

{

Entity en = new Entity() { LogicalName = entityName };

en["name"] = "案例测试";

incidentId = service.Create(en);

}

/// <summary>

/// 计算在案例上花费的总时间

/// </summary>

public void CalculateTotalTimeIncident()

{

CalculateTotalTimeIncidentRequest request = new CalculateTotalTimeIncidentRequest();

request.IncidentId = incidentId;

CalculateTotalTimeIncidentResponse response = (CalculateTotalTimeIncidentResponse)service.Execute(request);

long time = response.TotalTime;

}

/// <summary>

/// 将案例的状态设置为“已结束”

/// </summary>

/// <param name="status">结束的状态</param>

public void CloseIncident(int status)

{

CloseIncidentRequest request = new CloseIncidentRequest();

request.IncidentResolution = new Entity() { LogicalName = entityName ,Id = incidentId };

request.Status = new OptionSetValue(status);

CloseIncidentResponse response = (CloseIncidentResponse)service.Execute(request);

}

/// <summary>

/// 验证是否可随时结束案例

/// </summary>

/// <param name="state">Active,Resolved,Canceled</param>

/// <param name="status">InProgress:1,OnHold:2,WaitingforDetails:3,Researching:4</param>

/// <param name="status">ProblemSolved:5,InformationProvided:1000,Canceled:6</param>

public void IsValidStateTransition(string state,int status)

{

IsValidStateTransitionRequest request = new IsValidStateTransitionRequest();

request.Entity = new EntityReference() { LogicalName = entityName,Id = incidentId };

request.NewState = state;

request.NewStatus = status;

IsValidStateTransitionResponse response = (IsValidStateTransitionResponse)service.Execute(request);

bool isValid = response.IsValid;

}

/// <summary>

/// 删除指定安全主体(用户或团队)对案例的所有访问权限

/// </summary>

/// <param name="revokee">用户或团队引用</param>

public void RevokeAccess(EntityReference revokee)

{

RevokeAccessRequest request = new RevokeAccessRequest();

request.Target = new EntityReference() { LogicalName = entityName, Id = incidentId };

request.Revokee = revokee;

RevokeAccessResponse response = (RevokeAccessResponse)service.Execute(request);

}

/// <summary>

/// 删除案例

/// </summary>

public void Delete()

{

service.Delete(entityName, incidentId);

}

}

时间: 2024-10-25 19:09:10

crm操作案例实体的相关文章

crm操作报价单实体

using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; using Microsoft.Xrm.Sdk.Query; /// <summary> /// 报价单 /// </summary> public class QuoteHelper { public static readonly string entityName = "quote"; public Guid q

crm操作商机实体

using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; public class OpportunityHelper { public static readonly string entityName = "opportunity"; public Guid opportunityId = Guid.Empty; /// <summary> /// 创建商机 /// </sum

crm操作约会实体

using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; using Microsoft.Xrm.Sdk.Query; /// <summary> /// 约会 /// </summary> public class AppointmentHelper { public static readonly string entityName = "appointment"; pu

crm操作发票实体

using System; using Microsoft.Xrm.Sdk; using Microsoft.Xrm.Sdk.Query; using Microsoft.Crm.Sdk.Messages; /// <summary> /// 发票 /// </summary> public class InvoiceHelper { public static readonly string entityName = "invoice"; public Gui

crm操作销售合同实体

using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; using Microsoft.Xrm.Sdk.Query; /// <summary> /// 销售合同 /// </summary> public class ContractHelper { public static readonly string entityName = "contract"; public

crm操作货币实体

using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; /// <summary> /// 货币 /// </summary> public class TransactionCurrencyHelper { public static readonly string entityName = "transactioncurrency"; public Guid trans

crm操作传真实体

using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; using Microsoft.Xrm.Sdk.Query; /// <summary> /// 传真 /// </summary> public class FaxHelper { public static readonly string entityName = "fax"; public Guid faxId

crm操作产品实体

using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; /// <summary> /// 产品 /// </summary> public class ProductHelper { public static readonly string entityName = "product"; public Guid productId = Guid.Empty; publi

crm操作权限

using System; using Microsoft.Xrm.Sdk; using Microsoft.Xrm.Sdk.Query; using System.Collections.Generic; using Microsoft.Crm.Sdk.Messages; /// <summary> /// 权限 /// </summary> public class PrivilegeHelper { public static readonly string entityNa