执行计划自动执行报错“您要读取的数据在系统中不存在,可能已经被删除![ID=-1,Type=Organization]”原创
2人赞赏了该文章
527次浏览
编辑于2022年10月18日 11:45:04
执行计划手动测试不会报错,但是自动就会报错“您要读取的数据在系统中不存在,可能已经被删除![ID=-1,Type=Organization]”
有可能是上下文里面没有组织没有值导致的,需要给context里面的当前组织赋值
(注意不需要判空赋值!!!直接赋值就好了)
//系统管理员的当前登录组织是固定的,内码为1. long orgId = 1; //得到组织并给执行计划上下文赋值 Organization curOrg = OrganizationServiceHelper.ReadOrgInfoByOrgId(this.Context, orgId); List<long> functions = Array.ConvertAll(curOrg.OrgFunctions.Split(','), (a) => { return Convert.ToInt64(a); }).ToList(); this.Context.CurrentOrganizationInfo = new OrganizationInfo() //给当前上下文增加组织 { ID = curOrg.Id, Name = curOrg.Name, FunctionIds = functions, AcctOrgType = curOrg.AcctOrgType };
参考链接:执行计划调用下推报没有下游单据新增权限