使用Dynamics Web API检索指定时间段内重分配的潜在客户列表
针对Dynamics潜在客户所有权变更查询的解决方案
1. 使用Web API查询所有权变更记录
Dynamics的Web API支持直接查询**审计日志(Audit Log)**实体,所有权变更操作会被自动记录到auditlog实体中。你可以通过以下筛选条件精准获取目标数据:
- 筛选
objecttypecode为lead(潜在客户的实体代码,通常为10008,可通过Web API的EntityDefinitions端点确认) action等于47(代表分配/所有权变更操作)oldvalue为Person 1的用户ID(格式为{GUID})newvalue为Person 2的用户IDcreatedon在指定时间段内
示例OData查询语句:
GET [Organization URI]/api/data/v9.2/auditlogs?$filter=objecttypecode eq 'lead' and action eq 47 and oldvalue eq '{Person1UserID}' and newvalue eq '{Person2UserID}' and createdon ge 2024-01-01T00:00:00Z and createdon le 2024-01-31T23:59:59Z&$select=objectid,createdon,oldvalue,newvalue&$expand=objectid_lead($select=fullname,emailaddress1)
这个查询会返回符合条件的审计记录,并关联对应的潜在客户详情。
2. 捕获潜在客户重分配事件
有两种主流方式捕获重分配事件:
- 插件(Plugin):注册在
Lead实体的Assign消息上,当潜在客户被分配时触发。在插件代码中可以获取InputParameters里的Target(被分配的潜在客户)和Assignee(新所有者),同时通过PreEntityImages获取原所有者信息,将这些数据保存到自定义实体或直接导出。 - Power Automate流:使用"When a record is assigned"触发器,选择
Lead实体。触发后,通过Get record动作获取原所有者(可通过触发上下文的Original Owner字段)和新所有者,然后将符合条件的记录收集到Excel、Dataverse表或直接生成列表。
3. 其他筛选方法
- 高级查找(Advanced Find):
- 新建高级查找,选择
Audit实体 - 添加筛选条件:实体=潜在客户,操作=分配,旧值=Person 1,新值=Person 2,创建时间在指定范围
- 关联到
Lead实体,添加需要显示的潜在客户字段(如名称、邮箱) - 运行查找后可导出结果为Excel
- 新建高级查找,选择
- 自定义报表:基于Audit视图创建SSRS报表,设置筛选参数(时间段、原/新所有者),直接生成格式化的报表
- Power BI分析:连接Dataverse的
Audit表,通过DAX公式筛选出符合条件的记录,关联Lead表后可视化展示
内容的提问来源于stack exchange,提问作者Jppp
相关产品推荐
相关产品推荐

