问题:
出现问题的操作:1,销售订单自动保存、提交、审核;
2,销售订单审核的时候自动下推销售出库单,下推后,销售出库单执行SAVE操作;
3,销售出库单执行自动提交、审核。
说明:我使用了嵌套调用操作,在执行审核时候就出错了
// 取到需要自动提交、审核的单据内码
object[] pkArray = (from p in e.DataEntitys
select p[0]).ToArray();
// 设置提交参数
// using Kingdee.BOS.Orm;
OperateOption submitOption = OperateOption.Create();
submitOption.SetIgnoreWarning(this.Option.GetIgnoreWarning());
submitOption.SetInteractionFlag(this.Option.GetInteractionFlag());
submitOption.SetIgnoreInteractionFlag(this.Option.GetIgnoreInteractionFlag());
// 创建提交服务:using Kingdee.BOS.Contracts; using Kingdee.BOS.App;
ISubmitService submitService = ServiceHelper.GetService
IOperationResult submitResult = submitService.Submit(
this.Context, this.BusinessInfo,
pkArray, "Submit", submitOption);
// 判断提交结果,如果失败,则内部会抛出错误,回滚代码
if (CheckOpResult(submitResult) == false)
{
return;
}
// 构建操作可选参数对象
OperateOption auditOption = OperateOption.Create();
auditOption.SetIgnoreWarning(this.Option.GetIgnoreWarning());
auditOption.SetInteractionFlag(this.Option.GetInteractionFlag());
auditOption.SetIgnoreInteractionFlag(this.Option.GetIgnoreInteractionFlag());
// 构建单据主键参数
List
foreach (var pkValue in pkArray)
{
pkEntityIds.Add(new KeyValuePair
List
// 调用审核操作
ISetStatusService setStatusService = ServiceHelper.GetService
// 如下调用方式,需显示交互信息
IOperationResult auditResult = setStatusService.SetBillStatus(this.Context,
this.BusinessInfo,
pkEntityIds,
paras,
"Audit",
auditOption);
// 判断审核结果,如果失败,则内部会抛出错误,回滚代码
if (CheckOpResult(auditResult) == false)
{
return;
}
正常操作:
1,销售订单操作不变;
2,自动下推后不调用销售出库单的自动提交、审核操作,自己手动操作,提示:存在负库存,库存更新失败。
想要结果:
销售订单审核自动下推销售出库单,销售出库单也自动提交、审核能把具体的异常提示出来,比如上面的:存在负库存,库存更新失败。
推荐阅读