在操作下创建按钮以重定向到 Acumatica CA304000 中的报告

Create Button Under Actions To Redirect To Report In Acumatica CA304000

我正在尝试在交易屏幕 CA304000 的 Acumatica 操作下添加一个选项。请参阅下面我要实现的目标:

 using System;
 using System.Collections;
 using System.Collections.Generic;
 using PX.Data;
 using PX.Objects.Common;
 using PX.Objects.AP;
 using PX.Objects.CM;
 using PX.Objects.CS;
 using PX.Objects.GL;
 using PX.Objects.IN;
 using PX.Objects.TX;
 using PX.Objects.EP;
 using PX.Objects.CR;
 using Avalara.AvaTax.Adapter;
 using Avalara.AvaTax.Adapter.TaxService;
using AvaAddress = Avalara.AvaTax.Adapter.AddressService;
using AvaMessage = Avalara.AvaTax.Adapter.Message;
using CRLocation = PX.Objects.CR.Standalone.Location;
using PX.Objects;
using PX.Objects.CA;

namespace PX.Objects.CA
{

    public class CATranEntry_Extension:PXGraphExtension<CATranEntry>
            {

#region Event Handlers
               public override void Initialize()
               {
                   Base.action.AddMenuAction(ShowURL);
               }

  public PXAction<CAAdj> ShowURL; 
  [PXUIField(DisplayName = "Phieu Thu")] 
  [PXButton]

  protected virtual void showURL() 
  { 
     CAAdj doc = Base.Document.Current;
     if (doc.RefNbr != null)
     {
         throw new PXReportRequiredException(doc, "TNCA6401", null);
     }

    }


    #endregion

    }
}

然而,这告诉我有 ('PX.Objects.CA.CATranEntry' 不包含 'Document' 的定义并且没有扩展方法 'Document' 接受类型 'PX.Objects.CA.CATranEntry' 的第一个参数可以找到)两次。

此TNCA6401 只有一个参数参考编号。请具体(图片最好)。我是诺布谢谢。

您应该使用 CAAdjRecords 数据视图而不是 DocumentCAAdj doc = Base.Document.Current; 应该是 CAAdj doc = Base.CAAdjRecords.Current

并且 Reference Nbr. 绑定到 AdjRefNbr 字段。

您可以使用 Customization -> Inspect Element 来识别正在使用 GraphData ViewDACDAC field 的屏幕。