- 触发器中的手动共享操作,由于该记录已有当前用户的共享,导致重复插入报错。
- 触发器中涉及到的用户权限层级不够,或缺少共享规则。
- 同一个对象下的触发器被重复调用。
- 插入的内容是null。
在做系统迁移后,在新系统中遇到了这个问题,然而老系统同一条数据却没有问题。
百思不得其解…经过排查之后,判断应该是由于Process Builder中的两个Action执行顺序颠倒了,导致在没更换Owner之前就插入AccountShare了。由于时间关系,手边堆积的任务已经太多了,果断放弃纠结…直到最后也没查出来是什么原因导致的这个问题,直接在Process Builder中把这两个Action删掉,放到Trigger中执行就不报错了。
事实证明,Process Builder、Workflow、Trigger混用需谨慎,因为不方便Debug,开发时爽了,但是会被运维恨死…
本文为作者实际项目经验,仅供参考,如有误,欢迎在评论区讨论,谢谢。