今天业务支持需要根据物料分类保存后自动同步到编码规则中,需要获取编码规则的ID号码,而ID号码的生成是通过存储过程生成的。
之前使用过代码dia调用存储获取ID,但是没有使用存储过程中调用存储过程的结果集。
经过查询发现可以使用游标来实现。
erp_ls_oidgenerate.getoid('BillPrefixRules','DRP',p_ReCursor0);
Fetch p_ReCursor0 into newid,idnum;
Insert into BillPrefixRules(PrefixRuleID,PrefixTypeCode,PrefixObjID,PrefixName)
select lpad(newid,idnum,'0'),'MaterialCat',p_MaterialSortID,materialsortcode
from MaterialSorts where MaterialSorts.materialsortid=p_MaterialSortID;
具体的逻辑就是上面的写法。
通过把游标传递给存储过程,然后对游标进行fetch into 操作。