Dashboard Overview
The SMAF Dashboard (Home page) is your central hub for managing expense and travel allowances. After successful authentication, you’ll be greeted with a personalized interface showing your user information and available modules.Page Layout
The dashboard is divided into three main sections:Header Section
Displays the INAPESCA branding and application title:- Logo: INAPESCA official logo (700px × 65px)
- Title: “INAPESCA - WEB - Aplicativo de Control Interno de Viáticos”
Navigation Menu (Left Panel)
A dynamic TreeView menu that displays modules based on your user role. This menu is generated server-side using:Home.aspx.cs
The menu structure is role-based. You’ll only see modules and features that your role has permission to access.
User Profile Panel (Right Panel)
Displays your comprehensive user information in a structured table format.User Profile Information
The dashboard welcomes you by name and displays detailed information about your account:Welcome Message
Home.aspx.cs
Personal Information
The following information is displayed in a formatted table:| Field | Description | Source |
|---|---|---|
| Ubicación/Adscripción | Your office location with full address and phone | MngNegocioAdscripcion.ObtieneDatosUbicacion() |
| RFC | Your tax identification number | Session[“Crip_RFC”] |
| Nombre | Your full name (First + Paternal + Maternal) | Session[“Crip_Nombre”] + Session[“Crip_ApPat”] + Session[“Crip_ApMat”] |
| Cargo | Your position/role | Session[“Crip_Cargo”] |
| Clave Puesto | Your position code (Level + Plaza) | Session[“Crip_Nivel”] + Session[“Crip_Plaza”] |
| Nombre Puesto | Your job title | Session[“Crip_Puesto”] |
Code Implementation
Home.aspx.cs
Quick Access Features
Modify Personal Data
At the bottom of the user profile panel, you’ll find a link to update your personal information:Home.aspx.cs
Home.aspx.cs
Available Modules
The dashboard provides access to various modules through the TreeView menu. The modules you see depend on your assigned role.Module Navigation
When you click on a menu item, the system:- Captures the selection:
Home.aspx.cs
- Validates access: Checks if your role has permission to access the selected module
- Redirects to module: Navigates to the appropriate page based on the URL stored in the database
Home.aspx.cs
Role-Based Menu
The menu structure is dynamically generated based on your role identifier stored inSession["Crip_Rol"]:
clsFuncionesGral.cs
The menu hierarchy is retrieved from the database and organized by parent-child relationships, creating an expandable tree structure.
Session Management
The dashboard includes automatic session validation on every page load:Home.aspx.cs
Cache Control
The dashboard disables browser caching to ensure sensitive data is not stored:Visual Design
The dashboard uses a clean, professional layout:- Left panel: TreeView navigation menu with collapsible sections
- Right panel: User profile information in alternating row colors
- Even rows:
#E0F2F5(light blue background) - Odd rows: White background
- Even rows:
- Header: Blue background (
#5c87b2) for the welcome message
Home.aspx
Dashboard Features Summary
Personalized Welcome
Displays your name, position, and office location
Role-Based Menu
Dynamic menu showing only modules you have access to
Quick Profile Update
Direct link to modify your personal information
Session Security
Automatic session validation and timeout protection
Source Code References
- Dashboard Page:
Home/Home.aspxandHome/Home.aspx.cs - Menu Generation:
clsFuncionesGral.cs:739-814 - Session Validation:
clsFuncionesGral.cs:42-70 - Navigation Logic:
Home.aspx.cs:110-144