在实现一项需求:用户创建后自动添加到一个叫做“服务团队”的团队的时候,遇到了一个奇怪的错误,CRM的错误日志只有一句简单的“Generic SQL error.”。
示例代码:
// 加入指定团队
sysService.Associate("systemuser", systemuserId, new Relationship("teammembership_association"), relatedEntities);
解决办法:插件改为异步执行即可。
原因:
因为dbo.SystemUserPrincipals已经存在关于这个用户和这个团队的记录了,但这个用户明明是新建的,按道理来说不应该出现在这个表中的,所以通过提示并不能了解到具体是什么原因导致错误,于是把这个作为关键字进行搜索,最终找到国外的社区中有人遇到的同样情况,推荐造成这个错误的原因应该是SystemUser的POSTOPERATION事件触发时系统并没有全部完成创建操作导致的,只需要把原来的插件改为异步执行即可。
new_sapinvoiceno