I have a customization in place that tweaks the ShopRates action on SO Order Entry by overriding that action.
In 2018 R2, the ShopRates action was declared directly on the SOOrderEntry graph, so to override the action, we simply had to do the following.
public class SOOrderEntry_Extension : PXGraphExtension<SOOrderEntry>
{
public PXAction<SOOrder> shopRates;
[PXUIField(DisplayName = "Shop for Rates", MapViewRights = PXCacheRights.Select, MapEnableRights = PXCacheRights.Update)]
[PXButton(ImageKey = PX.Web.UI.Sprite.Main.DataEntryF)]
protected virtual IEnumerable ShopRates(PXAdapter adapter)
{
Base.shopRates.Press(adapter);
// custom code
return adapter.Get();
}
}
In 2019 R1, however, the ShopRates action has been moved to CarrierRatesExtension, which is a generic graph extension used on the SOOrderEntry graph by
public CarrierRates CarrierRatesExt => FindImplementation<CarrierRates>();
public class CarrierRates : CarrierRatesExtension<SOOrderEntry, SOOrder>
{
. . .
}
Now that the ShopRates action is no longer defined directly on the SOOrderEntry graph, how can I override it in my SOOrderEntry Extension?