WebAPI调用保存接口时提示基础资料字段必填项汇总
调用保存接口时,经常会遇到返回错误结果:某某基础字段是必填项,已经对此字段录入值了,依然报这个错误。常见原因有:
1、此基础资料值不存在。比如对采购申请单的分录物料赋值“FMaterialId”: {“FNumber”: “0000”},但是此FNumber=0000的物料根本不存在,所以会提示字段“物料编码”是必填项。
2、如果基础资料做了组织隔离,请求数据包中基础资料字段的使用组织字段的赋值顺序要先于此基础资料字段,并且此基础资料的使用组织无误。比如某单据的基础资料字段门店FBranchID的使用组织是FUseOrgId但是, FBranchID却先于FUseOrgId赋值,则会出现以下错误:
3、基础资料字段是共享型,也即没做组织隔离,当对此基础资料以编码的方式赋值时,根据基础资料的编码可能会查到多个编码相同的基础资料,会默认使用第一个,但是保存检验器做了基础字段的业务组织校验的话,会返回此基础资料在某某业务组织下不存在,这种情况需要在表单插件重写BeforeSetItemValueByNumber事件,对Filter属性做基础字段的过滤条件进行赋值。
4、对基础资料的使用组织的赋值时,要确定当前登录用户是否有这个组织的权限。
5、没有设置组织隔离却传内码赋值的基础资料,例如编码规则。编码规则没有审核的操作,但是基础资料的默认是只查已审核非禁用的,根据内码和状态查不多该条记录,所以对编码规则的赋值不成功。需要对BeforeSetItemValueByNumber事件重写,对IsShowApproved和IsShowUsed赋值。
6、基础资料的使用组织建议不要使用创建组织,因为创建组织默认使用上下文的组织,当数据包中没有对基础资料的使用组织赋值时,此基础资料在上下文的组织下如没有权限,则无法赋值成功。
WebAPI调用保存接口时提示基础资料字段必填项汇总
本文2024-09-23 04:21:29发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-164788.html