微软CRM记录列表每页显示记录数量只能在25、50、75、100、250中选择一个,有时候经常有需求需要在一页上显示超过250个记录,以便执行某些批量操作功能,比如批量删除、编辑、运行工作流等等;通过Plugin可以实现微软CRM记录列表每页显示超过250个记录,代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using Microsoft.Crm.Sdk;
using Microsoft.Crm.SdkTypeProxy;
namespace RecordCounterExtender
{
public class RecordCounterExtender:IPlugin
{
public void Execute(IPluginExecutionContext context)
{
if (context.MessageName == "Execute" && context.InputParameters.Contains("FetchXml"))
{
XmlDocument indoc = new XmlDocument();
indoc.LoadXml((string)context.InputParameters["FetchXml"]);
if (indoc.DocumentElement.Attributes["count"] != null)
{
indoc.DocumentElement.Attributes["count"].Value = "1000"; //一页显示1000个记录
context.InputParameters["FetchXml"] = indoc.OuterXml;
}
}
}
}
}
Plugin注册方法: