Apps Access
Access Management Users & Roles Updated: 25 Feb 2026 Tags: apps access, user access, permissions, AppsAccess.aspx, subscriptions, business, filter, grid
Apps Access — Help & User Guide
Page: Users/AppsAccess.aspx
Overview
- Purpose: view which users have access to your applications and filter that list by Business, App and Subscription.
- File:
Users/AppsAccess.aspx (code-behind: AppsAccess.aspx.cs).
Quick start (end user)
- Select Business: choose a Business from DropDownListUserBusinesses. The page will AutoPostBack and populate Apps.
- Select App: choose an App from DropDownListUserApps. The page will AutoPostBack and populate Subscriptions for that app.
- Select Subscription: choose a Subscription from DropDownListSubscriptions. The user grid GridUsers will populate with users assigned to that subscription.
- Search (if enabled): the search box (TxtSearch) and button (BtnSearch) exist but are currently marked
Visible="False". If enabled, typing and pressing Enter or clicking Search triggers BtnSearch_Click. - See no data? LabelNoData instructs: “Select subscription to show users.”
Page layout and major elements
Header
Info & Errors
- infoPanel — short description and tips (visible by default)
- ErrorPanel + LabelErrorMessage — displays errors; close X runs
clearError() (prefers jQuery fadeOut, falls back to DOM hide)
Filters (left-to-right flow)
- DropDownListUserBusinesses — selects business (AutoPostBack)
- DropDownListUserApps — selects app (AutoPostBack)
- DropDownListSubscriptions — selects subscription (AutoPostBack)
Result grid
- GridUsers shows users for the selected subscription with paging and sorting.
- Columns:
- Hidden ID: KNEWTEUSERID (for server operations)
- Visible: USER_FIRSTNAME, USER_LASTNAME
- Email: template column with lblEmail
- Status: template column with lblStatus
- Created: USER_DATECREATED formatted as
dd/MM/yyyy - Optional Manage link: lnkView (currently
Visible="false")
Empty-state label
- LabelNoData shown when no subscription selected
Keyboard and client behavior
- Two inline
window.onload blocks attempt to: - attach Enter key handler to TxtSearch to click BtnSearch
- set focus to TxtSearch
- Note: TxtSearch and BtnSearch are hidden (
Visible="False") — focus/handler code may be ineffective unless those controls are enabled. clearError() hides ErrorPanel and clears LabelErrorMessage (works with or without jQuery).
User flows & examples
Show users for a subscription
- Choose Business → AutoPostBack
- Choose App → AutoPostBack
- Choose Subscription → AutoPostBack; grid fills
Filter by name (if search is enabled)
- Type a name and press Enter or click Search; server executes BtnSearch_Click
Manage access (if enabled)
- If lnkView is enabled, click Manage Access to go to a per-user management page (ensure NavigateUrl is wired in code-behind)
Troubleshooting checklist
Grid remains empty after selecting subscription
- Confirm
DropDownListSubscriptions_SelectedIndexChanged runs (AutoPostBack must be True) - Check binding logic and dataset returned for the subscription ID
- Verify LabelNoData visibility logic
Apps or Subscriptions not populated
- Ensure
DropDownListUserBusinesses_SelectedIndexChanged and DropDownListUserApps_SelectedIndexChanged repopulate downstream lists and rebind page state
Search box focus or Enter key not working
- Controls are hidden (
Visible="False"). Enable them or remove the focus/Enter key script and guard it with existence checks.
JavaScript errors
- Open browser dev tools console; missing element references (because controls are hidden) commonly cause runtime exceptions.
Security and validation notes
- Always perform server-side authorization checks in each event handler — ensure the current user is allowed to view/manage the selected Business/App/Subscription.
- Sanitize and parameterize any data used in SQL queries (never concatenate raw input).
- Validate that subscription and app IDs posted back actually belong to the selected Business before taking actions.
What to provide when contacting support
- Business, App and Subscription selected
- Approximate time
- Screenshot of ErrorPanel text (or console/network errors if available)
← Back to Help Centre