You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

创建IN调整单执行Release时触发TX错误的技术求助

收货单释放流程中创建IN调整单后释放触发TX错误求助

我在收货单释放流程内创建IN调整单,编写了CreateAdjustment()方法代码如下。代码中的保存操作可正常执行,但调用release.PressButton()释放调整单时出现TX错误(见下方截图)。我推测文档需要后台处理以确认处于平衡状态,但不清楚具体实现方式,特此求助。

public void CreateAdjustment()
{
    try
    {
        INAdjustmentEntry iNAdjustmentEntryEntry = PXGraph.CreateInstance<INAdjustmentEntry>();
        INRegister iNRegister = new INRegister();

        iNRegister = iNAdjustmentEntryEntry.adjustment.Insert();
        iNRegister.Status = INDocStatus.Balanced;
        iNRegister.ExtRefNbr = Base.CurrentDocument.Current.ExtRefNbr == null ? " " : Base.CurrentDocument.Current.ExtRefNbr;
        iNRegister.TranDesc = Base.CurrentDocument.Current.TranDesc == null ? " " : Base.CurrentDocument.Current.TranDesc;
        iNRegister.Hold = false;

        INSetup iNSetup = PXSelect<INSetup>.Select(Base);
        INSetupExt iNSetupExt = iNSetup.GetExtension<INSetupExt>();

        iNRegister = iNAdjustmentEntryEntry.adjustment.Update(iNRegister);
        iNAdjustmentEntryEntry.adjustment.Current = iNRegister;

        iNAdjustmentEntryEntry.adjustment.SetValueExt<INRegisterExt.usrReasonCode>(iNRegister, iNSetupExt.UsrAutoGenAdjustmentFromAdjustments);
        // iNAdjustmentEntryEntry.Save.PressButton();

        foreach (INTran item in Base.transactions.Select())
        {
            INTran iNTran = iNAdjustmentEntryEntry.transactions.Insert();

            iNTran.InventoryID = item.InventoryID;

            iNTran.ReasonCode = iNSetupExt.UsrAutoGenAdjustmentFromAdjustments;
            iNTran.LocationID = item.LocationID;
            iNTran.SiteID = item.SiteID;

            iNTran.Qty = 0;
            var rowExt = Base.transactions.Cache.GetExtension<INTranExt>(item);
            if (rowExt.UsrNewUnitCost == null)
            {
                rowExt.UsrNewUnitCost = 0;
            }

            iNTran.TranCost = item.Qty * (rowExt.UsrNewUnitCost - item.UnitCost);
            iNTran.UnitCost = item.UnitCost;

            iNAdjustmentEntryEntry.transactions.Update(iNTran);
        }

        iNAdjustmentEntryEntry.Save.PressButton();
        iNAdjustmentEntryEntry.release.PressButton();
    }
    catch (Exception ex)
    {
        PXTrace.WriteError("JVD2StepTransfersWithExtraAdjustments CreateAdjustment: " + ex.Message);
    }
}

错误截图:
TX错误截图


内容的提问来源于stack exchange,提问作者JvD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 01:05:15