我正在尝试复制Currency Behavior
中的APInvoiceEntry BLC
。
我很困惑,我已经复制了所有事件,但是没有运气,
CurrencyInfo_RowUpdated
不会触发事件。我可以肯定,当您单击Currency Conversion
或View Cury
时,此事件就是View Base
。
我设法以某种方式将CuryInfoID
信息保存在数据库中。我只是对客户端事件感到困惑。
我想念什么吗?我还复制了Currency Rate
并将其设置为我自己的Currency Rate view
。所以它正在工作。请赐教。
谢谢!
答案 0 :(得分:1)
View Base / View Cury (查看基本/查看Cury)操作由ToggleCurrency.Handler()
方法处理。 APInvoiceEntry图具有ToggleCurrency<APInvoice> CurrencyView;
成员,该成员驱动按钮。以下是有关如何在APInvoiceEntry图形扩展中覆盖它的示例:
using PX.Data;
using PX.Objects.CM;
namespace PX.Objects.AP
{
public class APInvoiceEntry_Extension : PXGraphExtension<APInvoiceEntry>
{
public CustomToggleCurrency<APInvoice> CurrencyView;
}
public class CustomToggleCurrency<TNode> : ToggleCurrency<TNode>
where TNode : class, IBqlTable, new()
{
public CustomToggleCurrency(PXGraph graph, string name)
: base(graph, name)
{
}
[PXUIField(DisplayName = "Toggle Currency", MapEnableRights = PXCacheRights.Select, MapViewRights = PXCacheRights.Select)]
[PXButton(ImageKey = PX.Web.UI.Sprite.Main.Money, Tooltip = PX.Objects.CM.Messages.ToggleCurrencyViewTooltip)]
protected override System.Collections.IEnumerable Handler(PXAdapter adapter)
{
return base.Handler(adapter);
}
}
}