Skip to main content
Answer

INScancount method override

  • March 4, 2024
  • 1 reply
  • 86 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:

 

 

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();
}
}

}

 

1 reply

Forum|alt.badge.img+2
  • Acumatica Moderator
  • 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:

 

 

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();
}
}

}