HR Leave · Australia

05 — Workspace / UI Builder (Studio From Scratch)

UI Builder experience HR Leave Workspace, pages, data resource on req_v2

Scopex_786686_hr_leave
sys_ide5f5bc9493a303507520703efaba104d
Instance labdev398980
URL token{BASE}
Quick open Visual map UI Builder

Visual map — Ch.05 · Workspace — fulfiller UI

See in 10 seconds

My Requests · Team Approvals · Admin pages

You build

UI Builder experience published

Track

Development

EXPExperience
→
DRData resources
→
PAGES3 roles
→
PUBPublish
✓ Run as session user✓ Page roles = security✗ Unpublished = invisible✗ Team list on portal

Full visual path (all chapters): VISUAL_FROM_SCRATCH_00_16.html

Studio-only from scratch: Now Experience workspace with list pages on req_v2. Studio UI only — no npx or external build.

Also open: Properties + Direct Links · Schema · Studio Create All Objects · Previous: 04 Service Portal

How workspace objects relate

Part 1 Experience (HR Leave Workspace)
  ├── Part 2 Pages (My Requests, Team Approvals, Admin)
  ├── Part 3 Data resource → req_v2 table broker
  └── Part 4 List component + role bindings

Rule 0 — Before any object (Application + Update Set + Studio)

Repeat these checks before creating or editing any application file. This section is also section 00 Update Set — create the capture set first.

  1. Application picker — top-right globe / application menu → select HR Leave (x_786686_hr_leave). Never leave Global selected when creating scoped artifacts.
  2. Update Set — All → System Update Sets → Local Update Sets → New:
    FieldValue
    NameHR Leave – Build
    ApplicationHR Leave
    StateIn Progress
    DescriptionCaptures all HR Leave lab artifacts
    After submit: open the record → click Make Current. Direct list: {BASE}/sys_update_set_list.do
  3. Open Studio — {BASE}/$studio.do → confirm header shows HR Leave.

If artifacts land in Global scope, delete them and recreate under HR Leave. ACLs and events created globally will not behave correctly for this app.

Verify Update Set: Create a test Script Include in Studio → open HR Leave – Build → Related List Customer Updates shows the new file.


Part 1: Create Experience — HR Leave Workspace

Purpose

Now Experience workspace container scoped to HR Leave application.

Navigation path

Direct URL

Prerequisites

Form fields

FieldValue
NameHR Leave Workspace
ApplicationHR Leave
Experience typeWorkspace / Custom

Step-by-step create

  1. UI Builder → Create experience → fill fields → Create.
  2. Confirm Application = HR Leave in header.

Verify checklist

Demo / test

Preview URL loads (empty until pages added).


Part 2: Pages — My Requests, Team Approvals, Admin

Purpose

Three routed pages for employee, manager, and HR admin personas.

Navigation path

Prerequisites

Form fields

LabelRouteRoles
My Requestsmy-requestsemployee, manager, hr_admin
Team Approvalsteam-approvalsmanager, hr_admin
Adminadminhr_admin

Step-by-step create

  1. Add page → Name My Requests → Route my-requests.
  2. Repeat for Team Approvals and Admin pages.
  3. Add navigation menu items linking each page (Part 4).

Verify checklist

Demo / test

Preview each route — page shell loads.


Part 3: Data Resource — req_v2

Purpose

Table data broker feeding list components with req_v2 records.

Navigation path

Prerequisites

Form fields — My Requests broker

FieldValue
LabelMy Leave Requests
Tablex_786686_hr_leave_req_v2
Conditionu_requested_for_user=javascript:gs.getUserID()

Team Approvals broker

Conditionu_state=submitted AND u_approver_user=current user

Step-by-step create

  1. Data Resources → Create → Table → req_v2.
  2. Set conditions per page persona.
  3. Columns: Number, Leave Type, Start, End, Days, State.

Verify checklist

Demo / test

Preview broker as employee1 → only own requests.


Part 4: Bind List + Role Restrictions

Purpose

Attach list components to data resources and publish workspace with role access.

Navigation path

Prerequisites

Step-by-step create

  1. My Requests page → drag List → bind My Leave Requests data resource.
  2. Team Approvals page → List → team broker filter.
  3. Admin page → Lists for employee_v2 and bal_v2 — hr_admin only.
  4. Navigation: menu items with role restrictions per page.
  5. Publish workspace → assign roles employee, manager, hr_admin.
  6. Impersonate each test user → open workspace URL.

Verify checklist

Demo / test

Impersonate each role → list data matches ACL expectations.

Workspace verify checklist

Complete after Parts 1–4.

  1. Experience published under HR Leave.
  2. Three pages with correct role gates.
  3. req_v2 list filtered per persona.