HR Leave Professional Solution — Navigation & Deployment Tutorial
Platform: ServiceNow Australia (current family · Sep 2026)
Application: Custom · Scopex_786686_hr_leave· sys_idc84db0e8839f0b509f02b0d6feaad3c9
HTML portal:html/index.html
Replace{BASE}with your instance, or enter it once at the top of the HTML portal.
This is the execution path for a mature HR Leave solution: Foundation → Development → Security → Experience → Automation → Integration → Analytics → Testing → Deployment.
1. Solution architecture
Employee Center / Service Portal
│
▼
Record Producer / Catalog Item
│
▼
x_786686_hr_leave_req_v2
│ │ │
│ │ └─ Events → Notifications
│ └─ Flow Designer → Manager approval
└─ Business Rules → Balance + Audit
│
├─ REST / Integration Hub → HR/ERP
├─ Reports / Dashboard / PA
└─ ATF + ACL validation
Core data:
| Component | Direct URL |
|---|---|
| Application | {BASE}/sys_app.do?sys_id=c84db0e8839f0b509f02b0d6feaad3c9 |
| Leave Requests | {BASE}/x_786686_hr_leave_req_v2_list.do |
| Employees | {BASE}/x_786686_hr_leave_employee_v2_list.do |
| Balances | {BASE}/x_786686_hr_leave_bal_v2_list.do |
| Audit | {BASE}/x_786686_hr_leave_audit_v2_list.do |
2. Administration foundation
Tutorial
- Create one Update Set per deployment stage.
- Create Groups first, then assign Roles to Groups.
- Add test users to Groups; avoid direct role grants.
- Create table and field ACLs for employee, manager, HR admin, and integration.
- Put environment-specific values in System Properties.
| Component | Filter Navigator path | Direct URL |
|---|---|---|
| Users | All > User Administration > Users | {BASE}/sys_user_list.do |
| Groups | All > User Administration > Groups | {BASE}/sys_user_group_list.do |
| Roles | All > User Administration > Roles | {BASE}/sys_user_role_list.do |
| ACLs | All > System Security > Access Control (ACL) | {BASE}/sys_security_acl_list.do?sysparm_query=nameSTARTSWITHx_786686_hr_leave |
| Update Sets | All > System Update Sets > Local Update Sets | {BASE}/sys_update_set_list.do |
| Properties | All > System Properties | {BASE}/sys_properties_list.do?sysparm_query=nameSTARTSWITHx_786686_hr_leave |
Gate A: employee sees only own requests; manager sees assigned requests; HR admin sees all; integration role can execute only the API.
3. Development
Build order
- Tables and Dictionary fields.
- Script Includes (reusable logic).
- Business Rules (server orchestration).
- Client Scripts and UI Policies.
- Flow Designer.
- Catalog / Record Producer.
- Portal or Employee Center.
| Component | Filter Navigator path | Direct URL |
|---|---|---|
| Studio | All > System Applications > Studio | {BASE}/$studio.do |
| Tables | All > System Definition > Tables | {BASE}/sys_db_object_list.do?sysparm_query=nameSTARTSWITHx_786686_hr_leave |
| Business Rules | All > System Definition > Business Rules | {BASE}/sys_script_list.do?sysparm_query=collectionSTARTSWITHx_786686_hr_leave |
| Client Scripts | All > System Definition > Client Scripts | {BASE}/sys_script_client_list.do?sysparm_query=tableSTARTSWITHx_786686_hr_leave |
| Script Includes | All > System Definition > Script Includes | {BASE}/sys_script_include_list.do?sysparm_query=api_nameSTARTSWITHx_786686_hr_leave |
| UI Policies | All > System UI > UI Policies | {BASE}/sys_ui_policy_list.do?sysparm_query=tableSTARTSWITHx_786686_hr_leave |
| Flow Designer | All > Process Automation > Flow Designer | {BASE}/now/flow-designer |
Copy-ready scripts: SCRIPTS_INVENTORY.html and HTML → html/scripts/index.html.
Gate B: date validation works; business days calculate; approver resolves; state change creates audit; approval updates balance.
4. Catalog and employee experience
| Component | Filter Navigator path | Direct URL |
|---|---|---|
| Record Producers | All > Service Catalog > Catalog Definitions > Record Producers | {BASE}/sc_cat_item_producer_list.do |
| Catalog Items | All > Service Catalog > Catalog Definitions > Maintain Items | {BASE}/sc_cat_item_list.do |
| Variables | All > Service Catalog > Catalog Variables > Variables | {BASE}/item_option_new_list.do |
| User Criteria | All > Service Catalog > User Criteria | {BASE}/user_criteria_list.do |
| Portals | All > Service Portal > Portals | {BASE}/sp_portal_list.do |
| Widgets | All > Service Portal > Widgets | {BASE}/sp_widget_list.do |
| Employee Center | All > Employee Center | {BASE}/esc |
Gate C: employee submits from Catalog/Employee Center and receives the created request number.
5. Automation and notifications
| Component | Filter Navigator path | Direct URL |
|---|---|---|
| Flows | All > Process Automation > Flow Designer | {BASE}/now/flow-designer |
| Event Registry | All > System Policy > Events > Registry | {BASE}/sysevent_register_list.do?sysparm_query=event_nameSTARTSWITHx_786686_hr_leave |
| Event Log | All > System Policy > Events > Event Log | {BASE}/sysevent_list.do?sysparm_query=nameSTARTSWITHx_786686_hr_leave |
| Notifications | All > System Notification > Email > Notifications | {BASE}/sysevent_email_action_list.do?sysparm_query=event_nameSTARTSWITHx_786686_hr_leave |
| Scheduled Jobs | All > System Definition > Scheduled Jobs | {BASE}/sysauto_script_list.do |
Gate D: submitted/approved/rejected events appear in Event Log and the correct recipient receives each notification.
6. Integration
| Component | Filter Navigator path | Direct URL |
|---|---|---|
| Scripted REST | All > System Web Services > Scripted REST APIs | {BASE}/sys_ws_definition_list.do |
| REST Messages | All > System Web Services > Outbound > REST Message | {BASE}/sys_rest_message_list.do |
| Connections | All > Connections & Credentials > Connection & Credential Aliases | {BASE}/sys_alias_list.do |
| REST API Explorer | All > System Web Services > REST API Explorer | {BASE}/$restapi.do |
Security requirements: dedicated integration user, scoped integration role, no credentials in scripts, properties/credential records per environment.
Gate E: positive and negative API tests pass; unauthorized request returns 401/403; logs contain no secrets.
7. Reports and dashboards
| Component | Filter Navigator path | Direct URL |
|---|---|---|
| Create Report | All > Reports > Create New | {BASE}/$report.do |
| Reports | All > Reports > View / Run | {BASE}/sys_report_list.do |
| Dashboards | All > Performance Analytics & Reporting > Dashboards | {BASE}/pa_dashboards_list.do |
| Indicators | All > Performance Analytics > Indicators | {BASE}/pa_indicators_list.do |
| Data Collectors | All > Performance Analytics > Jobs | {BASE}/pa_collectors_list.do |
Required dashboard: Requests by state, requests by type, pending approvals, days by month, approval time, rejection rate.
Gate F: HR role sees dashboard; employee cannot discover restricted report data; PA collector has a successful run when licensed.
8. Testing and deployment
| Component | Filter Navigator path | Direct URL |
|---|---|---|
| ATF Tests | All > Automated Test Framework > Tests | {BASE}/sys_atf_test_list.do |
| ATF Suites | All > Automated Test Framework > Suites | {BASE}/sys_atf_test_suite_list.do |
| Retrieved Update Sets | All > System Update Sets > Retrieved Update Sets | {BASE}/sys_remote_update_set_list.do |
| Upgrade History | All > System Diagnostics > Upgrade History | {BASE}/sys_upgrade_history_list.do |
Deployment sequence:
- Freeze Update Set and peer review.
- Export/import or retrieve; Preview before Commit.
- Resolve collisions deliberately—never skip without evidence.
- Run ATF smoke suite.
- Validate ACLs using impersonation.
- Validate Flow, events, notifications, reports, and integration.
- Record rollback steps and release evidence.
Gate G: no unresolved Update Set errors; ATF passes; audit trail and rollback plan are documented.
9. Module maturity extensions
| Module | Professional use in this solution | Direct starting URL |
|---|---|---|
| ITSM | Incidents for integration failures; Change for production release | {BASE}/incident_list.do · {BASE}/change_request_list.do |
| CSM | Cases when leave service is exposed to customer/partner workers | {BASE}/sn_customerservice_case_list.do |
| FSM | Work Order only when leave affects scheduled field resources | {BASE}/wm_order_list.do |
| SPM | Demand/Project to govern roadmap, budget, benefits | {BASE}/dmn_demand_list.do · {BASE}/pm_project_list.do |
| HRSD | Prefer HR Case/HR Service for licensed enterprise HR delivery | {BASE}/sn_hr_core_case_list.do |
| CMDB/CSDM | Register HR Leave as an Application Service and owner relationship | {BASE}/cmdb_ci_service_auto_list.do |
| ITOM | Monitor app/integration health when infrastructure is in scope | {BASE}/em_alert_list.do |
| ITAM | No direct dependency; use only for devices/assets tied to workforce operations | {BASE}/alm_asset_list.do |
| GRC/IRM | Controls for privacy, access review, retention, and evidence | {BASE}/sn_compliance_control_list.do |
| SecOps | Security incident escalation for detected abuse | {BASE}/sn_si_incident_list.do |
Do not force every module into HR Leave. Add a module only when there is a business capability, license, owner, data contract, and support model.
10. Australia upgrade readiness
- Confirm family/build:
{BASE}/stats.do. - Review skipped changes and customizations.
- Test on sub-production before production.
- Re-run ATF and role-based UAT.
- Prefer Flow Designer over new legacy Workflow.
- Validate licensed workspace routes because plugins and UI versions can change.
- Keep the scoped API names and table names unchanged during family upgrade.
Study sequence: ../SERVICENOW_ONE_WEEK_STUDY_DEPLOY_AUSTRALIA.html → this tutorial → module-specific documents → ATF/Deployment gates.