Help Centre  ›  Users & Roles  ›  Business Access

Business Access

View and manage which users have access to a selected business, search users, and open per-user access management.

Tip: use keywords like account, business, subscription, users, roles.

Business Access

Business Access — Help & User Guide

Page: Users/BusinessAccess.aspx

Overview

  • Purpose: list and manage users who have access to a selected Business. Supports search, select Business, view user list with status and creation date, and drill into per-user access via Manage Access.
  • Files: Users/BusinessAccess.aspx (markup) and BusinessAccess.aspx.cs (code-behind).

Quick start (end user)

  • Search: Type a name into TxtSearch and press Enter or click BtnSearch. The page runs BtnSearch_Click.
  • Select Business: Choose from DropDownListUserBusinesses; this triggers AutoPostBack and loads users for that Business.
  • View users: The GridUsers shows First/Last name, Email, Status and Created date.

Click Manage Access (link lnkView) to open user-specific management (if enabled/wired).

  • No results: LabelNoData displays “No users found.” when no users match the search/selection.

Page layout and main controls

Header / Search

  • TxtSearch — text input for name search
  • BtnSearch — triggers BtnSearch_Click

Business selector

  • DropDownListUserBusinesses — AutoPostBack, handler DropDownListUserBusinesses_SelectedIndexChanged

User grid

  • GridUsers
  • paging (PageSize=15)
  • sorting
  • row events: GridUsers_PageIndexChanging, GridUsers_Sorting, GridUsers_RowCreated, GridUsers_RowDataBound
  • Columns include:
  • Hidden ID: KNEWTEUSERID
  • USER_FIRSTNAME, USER_LASTNAME
  • Email: template field lblEmail
  • Status: template field lblStatus
  • Created: USER_DATECREATED formatted dd/MM/yyyy
  • Action: lnkView (text “Manage Access”) — should be wired in code-behind for navigation

Empty-state label

  • LabelNoData — shown when no users are present

Client-side & keyboard behavior

  • Enter key: inline window.onload handlers attach Enter → click BtnSearch and set focus to TxtSearch.
  • Note: duplicate window.onload blocks can override each other in some browsers.

It’s best practice to consolidate into one initializer and add visibility guards.


Troubleshooting checklist

Search not working

  • Confirm BtnSearch_Click exists and is wired in code-behind
  • Check that TxtSearch.Text is used in the data query (partial matching recommended)

Business selector not loading users

  • Verify AutoPostBack="True" and DropDownListUserBusinesses_SelectedIndexChanged is implemented
  • Ensure code rebinds GridUsers after selection

Grid shows wrong data / unsorted

  • Confirm sorting uses correct field names and grid is rebound after changes
  • If using ViewState-based data, ensure it persists across postbacks (or refetch as needed)

Duplicate onload scripts

  • Merge focus + Enter-key logic into a single initializer to prevent overrides

Security & validation

  • Ensure only authorized users can view/manage the selected Business
  • Validate all incoming IDs (Business/user IDs) belong to the currently authorized scope
  • Parameterize all SQL/data queries (avoid string concatenation)
  • Avoid exposing sensitive internal identifiers to the client unless required

Accessibility & usability notes (recommended)

  • Add aria-live="polite" to LabelNoData (or an error panel) so assistive tech announces updates
  • Ensure Manage Access link has a descriptive accessible name (include user name in title/aria-label)
  • Add visible focus styles for keyboard users on grid links and buttons

What to include when contacting support

  • Business selected
  • Search term used
  • Approximate time
  • Screenshot of any error panel (if shown)
  • Browser used and steps taken
← Back to Help Centre