Skip to main content
Solved

INScancount method override

  • March 4, 2024
  • 1 reply
  • 49 views

Hi  Team,

We would like to override below base method (ConfirmRow()) from INScancount graph (Scan and Count ) ,we have tried below but its not working, Can you please advise how can we achieve this,


 

[PXOverride]
        public class ConfirmLogicExt : ScanExtension<CountMode.ConfirmState.Logic>
        {
            public static bool IsActive() { return true; }
            public string Prompt => Basis.Localize(Msg.Prompt, Basis.SightOf<WMSScanHeader.inventoryID>(), Basis.Qty, Basis.UOM);
            public CountMode.ConfirmState.Logic Mode { get; private set; }
            protected FlowStatus PerformConfirmation() => Basis.Get<Logic>().Confirm();


            public class Logic : ScanExtension
            {
                protected  Func<FlowStatus> var1;
                public static bool IsActive() { return true; }
                public virtual FlowStatus Confirm()
                {

                    if (!CanConfirm(out var error))
                        return error;

                    return ConfirmRow(var1);
                }
                //[PXOverride]
                protected virtual FlowStatus ConfirmRow(Func<FlowStatus> base_ProcessAdd)
                {
}
}
}

 

Best answer by Cesar Betances

Hi,

I think you can override it by extending the INScanCount graph, then inside of it you can extend the ConfirmState logic for the proper mode (I used CountMode on this sample below for guidance purposes).

You can find more information about WMS customization on this community post:

https://community.acumatica.com/customization-tools-and-framework-245/how-to-customize-an-existing-screen-with-the-new-automated-warehouse-operations-engine-in-acumatica-erp-2021-r1-and-later-8029

 

 

public class MyScanExt : INScanCount.ScanExtension
{
	public static bool IsActive() { return true; }

	public class ConfirmLogicExt : INScanCount.ScanExtension<INScanCount.CountMode.ConfirmState.Logic>
	{
		public static bool IsActive() { return true; }

		[PXOverride]
		public virtual FlowStatus ConfirmRow(Func<FlowStatus> base_ConfirmRow)
		{
			return base_ConfirmRow();
		}
	}

}

 

View original
Did this topic help you find an answer to your question?

1 reply

Forum|alt.badge.img+2
  • Acumatica Moderator
  • 44 replies
  • Answer
  • March 4, 2024

Hi,

I think you can override it by extending the INScanCount graph, then inside of it you can extend the ConfirmState logic for the proper mode (I used CountMode on this sample below for guidance purposes).

You can find more information about WMS customization on this community post:

https://community.acumatica.com/customization-tools-and-framework-245/how-to-customize-an-existing-screen-with-the-new-automated-warehouse-operations-engine-in-acumatica-erp-2021-r1-and-later-8029

 

 

public class MyScanExt : INScanCount.ScanExtension
{
	public static bool IsActive() { return true; }

	public class ConfirmLogicExt : INScanCount.ScanExtension<INScanCount.CountMode.ConfirmState.Logic>
	{
		public static bool IsActive() { return true; }

		[PXOverride]
		public virtual FlowStatus ConfirmRow(Func<FlowStatus> base_ConfirmRow)
		{
			return base_ConfirmRow();
		}
	}

}

 


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings