Skip to main content
Solved

How to add custom field into the middle of an existing Modern UI grid?

  • November 26, 2025
  • 3 replies
  • 176 views

Forum|alt.badge.img+1

I need to add a custom field to the Applications tab on AP302000 - Cheques and Payments. I’ve followed the instruction elsewhere to append my field as the last column of the grid, but I need to put it somewhere that users will see it :-)

So I have a TypeScript file containing 

export interface APPost_MyProject_generated extends APPost {}

export class APPost_MyProject_generated {

  APAdjust2__UsrPartPaymentAmt: PXFieldState;

  APAdjust2__UsrPartPaymentPct: PXFieldState;

}

 

And HTML

<template>

<field id="APAUsrPPPct" name="APAdjust2__UsrPartPaymentPct" after="#gridApplicationHistory"></field>

<field id="APAUsrPPAmt" name="APAdjust2__UsrPartPaymentAmt" after="#APAUsrPPPct"></field>

</template>

And while that works, it means that the field is the final column in the table.

(I found that having added the first field after=’#gridApplicationHistory’, I can’t add any others to that id, so all my fields have id value that are referenced by the next.)

 

But. I need something like <field id="APAUsrPPPct" name="APAdjust2__UsrPartPaymentPct" after="#gridApplicationHistory [name=’AccountID’]">

Best answer by allisterchambers48

I’ll answer my own question because I’ve spent so much time on this.

The HTML needs:

<field id="APAUsrPPPct" name="APAdjust2__UsrPartPaymentPct" after="#gridApplicationHistory"></field>

The TypeScript specifies the sequence using the decorator:

@placeAfterProperty("APTran__AccountID")

  APAdjust2__UsrPartPaymentPct: PXFieldState;

 

 

3 replies

Forum|alt.badge.img+1

I’ll answer my own question because I’ve spent so much time on this.

The HTML needs:

<field id="APAUsrPPPct" name="APAdjust2__UsrPartPaymentPct" after="#gridApplicationHistory"></field>

The TypeScript specifies the sequence using the decorator:

@placeAfterProperty("APTran__AccountID")

  APAdjust2__UsrPartPaymentPct: PXFieldState;

 

 


Chris Hackett
Community Manager
Forum|alt.badge.img
  • Acumatica Community Manager
  • November 26, 2025

Thank you for sharing your solution with the community ​@allisterchambers48!


harutyungevorgyan
Jr Varsity I
Forum|alt.badge.img+4

If anyone has trouble with this, I managed to implement it using pure TypeScript without any HTML. Here is the code:

import { placeAfterProperty, PXFieldState } from 'client-controls'
import { CROpportunityProducts } from 'src/screens/CR/CR304500/CR304500'

export interface CROpportunityProducts_AddCustomField extends CROpportunityProducts {}
export class CROpportunityProducts_AddCustomField {

@placeAfterProperty("InventoryID")
UsrMyCustomField: PXFieldState
}