Skip to main content
Question

Modern UI: keyboard access to a read-only grid column that opens a dialog

  • September 23, 2026
  • 1 reply
  • 25 views

Environment: Acumatica 2026 R1 (SaaS), Modern UI, screen EP305000 (Employee Time Cards). We’re new to Acumatica and building our first customizations.

We've added a custom column to the Time Entry Summary grid that opens a dialog for the selected row. It works perfectly with a mouse. We cannot find any way to reach or activate it from the keyboard, and we've run out of documented options. 

Classic UI has PXDSCallbackCommand.ShortcutKey for binding a key combination to a callback command. What replaces it in the Modern UI? We'd be happy with a screen-level hotkey that acts on the currently selected row — it doesn't have to be cell focus.

What we built

An unbound field on a cache extension — no database column, value computed server-side:

public sealed class EPTimeCardSummaryNoteStatusExt
: PXCacheExtension<TimeCardMaint.EPTimeCardSummaryWithInfo>
{
public abstract class usrNoteStatus : IBqlField { }

[PXString(24, IsUnicode = true)]
[PXUIField(DisplayName = "Daily Notes")]
public string UsrNoteStatus { get; set; }
}

It's populated in EPTimeCardSummaryWithInfo_RowSelected and displays values like 1 of 3.

The column is declared in a TypeScript extension of the stock view class:

@gridConfig({
preset: GridPreset.Details,
initNewRow: true,
repaintColumns: true,
defaultAction: "ShowDailyNotesWeek",
})
export class EPTimeCardSummary_BXDailyNotes_BXDailyNotes {
@linkCommand("ShowDailyNotesWeek")
@columnConfig({ type: GridColumnType.HyperLink, allowUpdate: false })
UsrNoteStatus: PXFieldState;

ShowDailyNotesWeek: PXActionState;
}

 

ShowDailyNotesWeek is a PXAction<TimeCardMaint.EPTimeCardSummaryWithInfo> on a TimeCardMaint graph extension, marked [PXLookupButton], which opens a qp-panel via AskExt().

 

 

1 reply

  • Freshman II
  • September 23, 2026

Hi, I think you can try to use something like that.
 

[PXButton(CommitChanges = true,ShortcutChar = char, ShortcutCtrl = bool, ShortcutShift = bool)]

Acumatica Developers used that in CRActivityMaint.
 

public PXAction<CRActivity> MarkAsCompletedAndFollowUp;

Let us know if this will help you.