cloud5.1+10月份补丁
业务流程:销售订单-简单生产领料单-销售出库单-应收单
我们开发了一个插件简单生产领料单进行审核时,自动下推销售出库单,并且经行提交,审核。
经过测试,发现销售出库单审核之后,现在反审核提示:出库单关联的上游订单XSDD000481已有退货业务,不允许反审核 经查,这张单子是我们新做的,不存在退货业务。
我们把调用审核的代码贴出来,请帮助我们看一下。
///
///
/// 事件对象
public override void AfterExecuteOperationTransaction(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.AfterExecuteOperationTransaction e) {
base.AfterExecuteOperationTransaction(e);
DynamicObject[] records = e.DataEntitys;
if (records != null && records.Count() > 0) {
foreach (DynamicObject record in records) {
// 当领用类型为“租用”、“销售”时,自动生成销售出库
DynamicObject billType = record["BillType"] as DynamicObject;
if ("JDSCLL01_SYS".Equals(Convert.ToString(billType["Number"])))
{
// 获取对应转换规则
List
if (rulers != null && rulers.Count > 0) {
// 组装参数信息
ListSelectedRowCollection rows = new ListSelectedRowCollection();
rows.Add(new ListSelectedRow(Convert.ToString(record["Id"]), string.Empty, 0, "SP_PickMtrl"));
OperateOption option = OperateOption.Create(); option.SetVariableValue(BOSConst.CST_ConvertValidatePermission, true);
// 下游单据生成
ConvertOperationResult result = ConvertServiceHelper.Push(this.Context, new PushArgs(rulers.FirstOrDefault(), rows.ToArray()), option);
// 目标单信息
DynamicObject[] destObjects = result.TargetDataEntities.Select(r => r.DataEntity).ToArray();
if (destObjects != null && destObjects.Count() > 0) {
FormMetadata destMetadata = MetaDataServiceHelper.Load(context, "SAL_OUTSTOCK", true) as FormMetadata;
// 执行数据保存
IOperationResult oprtResult = Kingdee.BOS.App.ServiceHelper.GetService
if (oprtResult.IsSuccess) {
// 执行数据提交
oprtResult = Kingdee.BOS.App.ServiceHelper.GetService
if (oprtResult.IsSuccess) {
// 执行数据审核
List
报错提示如图:
推荐阅读