MikeNIke
MikeNIke

Reputation: 233

graph extension is marked as [PXOverride], but the original method with such name has not been found in PXGraph

I'm needing to adjust some of the field attributes for the Location.VCashAccountID field on the Vendors screen - AP303000. When I put the code below into a customization DLL, it compiles fine and there are not apparent issues on the screen. However, when I try to publish the customization project with the DLL included, I get an error.

Code:

 public class VendorMaintDefLocationExtExt : PXGraphExtension<VendorMaint.DefLocationExt, 
 VendorMaint>
{
    public void _(Events.CacheAttached<PX.Objects.CR.Standalone.Location.vCashAccountID> e) { }
}

Error: "Method Boolean DoValidateAddresses(PX.Objects.CR.Extensions.ValidateAddressesDelegate) in graph extension is marked as [PXOverride], but the original method with such name has not been found in PXGraph"

enter image description here

What am I missing?

TIA!

Upvotes: 1

Views: 625

Answers (2)

Joshua Van Hoesen
Joshua Van Hoesen

Reputation: 1732

The following implementation will override the vCashAccount attribute on AP303000

public class AAVendorMaintDefLocationExtExtension : PXGraphExtension<DefLocationExt, DefContactAddressExt, VendorMaint>
{
    [PXMergeAttributes(Method = MergeMethod.Merge)]
    [PXUIField(DisplayName = "I am override")]
    public void _(Events.CacheAttached<PX.Objects.CR.Standalone.Location.vCashAccountID> e) { }
}

You will also require the following references

using PX.Data;
using PX.Objects.AP;
using static PX.Objects.AP.VendorMaint;

The result can be seen in the snip below

attribute

The main difficulty in this task was the multitude of graph extensions utilized by the page. Though it's a beneficial design to encapsulate functionality it can be finnicky to determine which order they should be declared in a new extension.

Upvotes: 2

Patrick Chen
Patrick Chen

Reputation: 1066

You're graph extension extends VendorMaint.DefLocationExt which contains DoValidateAddresses. Try just extending VendorMaint.

Upvotes: 0

Related Questions