Skip to main content
Answer

How to add button at Receive and Put Away screen

  • October 3, 2025
  • 1 reply
  • 59 views

I want to add a new button to the PO302020 – Receive and Put Away screen, but I’m unable to do so due to the complex behavior of its graph.

The graph of this screen is defined as a Host, but if I try to create an action the same way as for other screens, nothing happens — the action does not appear on the screen.
 

using PX.BarcodeProcessing;
using PX.Data;
using System.Collections;
using static PX.Objects.IN.WMS.INScanReceive;

namespace TestNamespace
{
public class ReceivePutAwayExt : PXGraphExtension<Host>
{
public PXAction<ScanHeader> Test;
[PXButton(CommitChanges = true)]
[PXUIField(DisplayName = "Test Button", MapEnableRights = PXCacheRights.Select, MapViewRights = PXCacheRights.Select)]
protected virtual IEnumerable test(PXAdapter adapter)
{
return adapter.Get();
}
}
}

In my opinion, this is because the Host is not a regular graph; it inherits from another class, which adds actions in a way that is not typical for Acumatica.

namespace PX.Objects.IN.WMS
{
public class INScanReceive : INScanRegisterBase<INScanReceive, INScanReceive.Host, INDocType.receipt>
{
public class Host : INReceiptEntry
{
}

Has anyone had experience adding actions to screens that work in this manner?

Best answer by Tony Lanzer

@IlliaSheinAuditSoft, It looks like the ReceivePutAway class defines the buttons for that screen as ScanCommand classes. It seems that they are special buttons that work during scanning within WMS. I believe that you need to create a ScanExtension to add a new command button. These links should help out:
 

Add a New Scan Command for an Existing Form

Scan Extensions

Community Post

1 reply

Tony Lanzer
Pro III
Forum|alt.badge.img+2
  • Pro III
  • Answer
  • October 3, 2025

@IlliaSheinAuditSoft, It looks like the ReceivePutAway class defines the buttons for that screen as ScanCommand classes. It seems that they are special buttons that work during scanning within WMS. I believe that you need to create a ScanExtension to add a new command button. These links should help out:
 

Add a New Scan Command for an Existing Form

Scan Extensions

Community Post