community postPlatform, DevOps & Performancecommunity - not Microsoftreviewed - checked by Opus

📍 Navigation History: Quick Access to Recently Visited Pages in BC 🧭

Navigation History is a feature that automatically tracks every page and record you visit in Business Central, letting you quickly reopen them, view your complete chronological history, and manage entries with cleanup actions. It uses four AL objects (enum, table, page, codeunit) with event subscribers to log visits with minimal performance impact.

post Gerardo Rentería Blog

Gerardo Renteria · 2025-10-06 · 575 words · about 3 min

"Automatically recording each navigation adds additional time, although without much impact on performance."

Key points

  • Automatically records all page visits and record opens with date/time ordering for quick access
  • Distinguishes between list page visits and individual card record opens with visual identification
  • Supports reopening any historical entry with a single click and includes cleanup actions like delete entries older than 30 days
  • Implemented using event subscribers on page events (OnOpenPageEvent for lists, OnAfterGetCurrRecordEvent for cards)

Quotes

  • “Automatically recording each navigation adds additional time, although without much impact on performance.” (Important caveat showing the solution has minimal performance overhead despite tracking all page visits)

AL objects mentioned

As named in the post. A name that matches one object page by exact type and name links to it; the others stay as named.

  • enum “GDRGNavHistoryType”
  • table “GDRGNavigationHistory”
  • page “GDRGNavigationHistory”
  • codeunit “GDRGNavigationHistoryMgt”

Not found in BC28-30: enum “GDRGNavHistoryType”, table “GDRGNavigationHistory”, page “GDRGNavigationHistory”, codeunit “GDRGNavigationHistoryMgt”.

Context

  • Features: navigation history tracking, quick record reopening, chronological history view, page type identification, history cleanup, automatic page visit logging, event subscriber pattern

Source: Gerardo Renteria, community blog. Summary, key points and quotes are derived (CONTENT-NOTICE.md); read the original for the full text.