crm操作全局选项集

using System;

using Microsoft.Xrm.Sdk;

using Microsoft.Crm.Sdk.Messages;

using Microsoft.Xrm.Sdk.Metadata;

using Microsoft.Xrm.Sdk.Messages;

/// <summary>

/// 全局选项集

/// </summary>

public class OptionSetMetadataHelper

{

public IOrganizationService service = null;

public Guid optionSetId = Guid.Empty;

public int languageCode = 2052;

/// <summary>

/// 创建全局选项集

/// </summary>

public void Create()

{

#region OptionMetadataCollection

OptionMetadataCollection opCollection = new OptionMetadataCollection();

opCollection.Add(new OptionMetadata(new Label("2000年", languageCode), 2000));

opCollection.Add(new OptionMetadata(new Label("2001年", languageCode), 2001));

opCollection.Add(new OptionMetadata(new Label("2002年", languageCode), 2002));

opCollection.Add(new OptionMetadata(new Label("2003年", languageCode), 2003));

opCollection.Add(new OptionMetadata(new Label("2004年", languageCode), 2004));

opCollection.Add(new OptionMetadata(new Label("2005年", languageCode), 2005));

#endregion

OptionSetMetadata optionSet = new OptionSetMetadata(opCollection);

optionSet.Name = "new_year";

optionSet.Description = new Label("年份", languageCode);

optionSet.DisplayName = new Label("年份", languageCode);

optionSet.IsGlobal = true;

optionSet.OptionSetType = OptionSetType.Picklist;

CreateOptionSetRequest request = new CreateOptionSetRequest();

request.OptionSet = optionSet;

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

optionSetId = response.OptionSetId;

}

/// <summary>

/// 插入新全局选项集选项

/// </summary>

public void InsertOptionValue()

{

InsertOptionValueRequest request = new InsertOptionValueRequest();

request.OptionSetName = "new_year";

request.Label = new Label("2008年", languageCode);

request.Value = 2008;

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

}

/// <summary>

/// 更改选项集中选项的相对顺序

/// </summary>

public void OrderOption()

{

OrderOptionRequest request = new OrderOptionRequest();

request.OptionSetName = "new_year";

request.Values = new int[]{ 2005,2004,2003,2002,2001,2000 };

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

}

/// <summary>

/// 检索所有全局选项集

/// </summary>

public void RetrieveAllOptionSets()

{

RetrieveAllOptionSetsRequest request = new RetrieveAllOptionSetsRequest();

request.RetrieveAsIfPublished = true;

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

OptionSetMetadataBase[] optionSetMetadata = response.OptionSetMetadata;

}

/// <summary>

/// 检索全局选项集

/// </summary>

/// <param name="name">选项集的名称</param>

public void RetrieveOptionSet(string name)

{

RetrieveOptionSetRequest request = new RetrieveOptionSetRequest();

request.Name = name;

request.RetrieveAsIfPublished = true;

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

OptionSetMetadataBase optionSetMetadata = response.OptionSetMetadata;

}

/// <summary>

/// 删除全局选项集中的项

/// </summary>

/// <param name="v">值</param>

public void DeleteItem(int v)

{

DeleteOptionValueRequest request = new DeleteOptionValueRequest();

request.OptionSetName = "new_year";

request.Value = v;

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

}

/// <summary>

/// 删除全局选项集

/// </summary>

public void Delete()

{

DeleteOptionSetRequest request = new DeleteOptionSetRequest();

request.Name = "new_year";

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

}

}

时间: 2024-10-11 20:10:02

crm操作全局选项集的相关文章

crm创建和编辑全局选项集

一个选项集就是可包括在一个实体中的某种类型的字段.它定义一组选项.当一个选项集显示在窗体中时,将使用下拉列表控件.当在 Advanced Find 中显示时,则使用选择列表控件.有时,开发人员将选项集称为选择列表. 可以定义一个选项集以使用其中定义的一组选项:选项集也可以使用其他地方(全局)定义的可供其他选项集字段使用的一组选项.当有一组标准的可用于多个实体的类别时,全局选项集很有用.维护两个包含相同值的单独选项集很难,并且,如果它们不同步,则可能会发生错误 创建和编辑选项集: 步骤1: 步骤2

Dynamics CRM EXCEL导入数据字段类型为选项集时的注意事项

在开始先展示下CRM的导入数据涉及选项集字段时的一个问题 下图是选项集字段的属性 下图是我要导入的excel中的列值,可以看出列明和字段名是一致的,而列值却不是选项集中已有的选项 在导入校验时,只要字段名对上了,选项集字段并未报任何警告提醒 导入成功后针对excel中的列值在选项集中没有的,系统会自动创建 这是一个麻烦,所以怎样才能避免这个问题,或者说在excel中的列值和选项集字段对不上时如何能有个提醒,下面来说解决办法 将前面导入的excel的列明更改下和系统选项集字段的属性名不同,再对列值

crm2011js操作IFRAME和选项集

crm2011js操作IFRAME和选项集

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

全局结果集,带参数的结果集和动态结果集(struts2)

全局结果集: 当许多action都有共同的结果时,如果每个package都存在一个相同结果,会使得struts.xml比较臃肿,所以使用全局的结果集.一个包内的全局结果集可以通过包的继承而被其它包使用. 这样做的好处是:通用的结果集不用多次配置,减少struts.xml的配置量. 带参数的结果集: 同jsp+servlet一样,struts2中也有转发和重定向,转发的过程在服务器端完成,这个过程共享一个值栈(value Stack),客户端并不知道页面跳转到了那个jsp页面,其地址栏中显示的是所

crm操作业务部门

using System; using System.Linq; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; using System.Collections.Generic; using Microsoft.Xrm.Sdk.Messages; /// <summary> /// 操作业务部门 /// </summary> public class BusinessUnitHelper { public st

Struts2中的全局结果集

1.在Struts2中,当有多个Action使用同一个结果集时,则可以使用全局结果集(GlobalResult),这样就不用在每一个使用同一个结果集的action里面都添加一个result,可以减少代码量,优化struts.xml配置文件,接下来将用一个很简单的小例子来介绍全局结果集. 2.首先,新建一个struts2项目,打开index.jsp页面,编码格式改为utf-8,在对里面的代码进行修改,修改后代码如下: <%@ page language="java" import=

3、CRM2011编程实战——选项集(下拉框)联动效果的实现

需求:根据选择不同的"反映类别",帅选出不同的"反映内容". 字段说明:反映类别:hxcs_feedbacktype,反映内容:hxcs_feedbacktype 解决方案:要设置两个选项集的关联,我们可以为两个选项集设置value的时候,做一些特殊的处理.举例:假设类别的Value:1001,1002,那么对应的内容可以设置为:类别value+00001,即100100001,以此类推.如下图: Js代码如下: function onFeedBackTypeCha

crm操作安全字段

using System; using Microsoft.Xrm.Sdk; using Microsoft.Xrm.Sdk.Messages; /// <summary> /// 安全字段 /// </summary> public class FieldSecurityProfileHelper { public static readonly string entityName = "fieldsecurityprofile"; public static