Cheat sheet

OutSystems Associate Developer Cheat Sheet

UI Design

26%of exam

Logic

22%of exam

Client/Server ActionsForm ValidationsLogic FlowsException Handling

Fetching Data

20%of exam

AggregatesFetching Data on ScreensData ActionREST Consume

Reactive Apps

12%of exam

Client VariablesScreen LifecycleDebuggingService Studio

Data Modeling

12%of exam

EntitiesData TypesData RelationshipsStatic Entity

Architecture and Security

8%of exam

Modular DependenciesRole-based SecurityLifecycleRoles

Quick Facts

Exam
Associate Developer
Credential
OutSystems Certified Associate Developer
Time
120 min
Questions
50
Pass
70% (35/50)
Platform
Reactive Web Apps
Cost
$200 USD
Validity
2 years
Format
Multiple choice

Block vs Screen

Block

  • Reusable component
  • Embedded in screens
  • Has events

Screen

  • Standalone page
  • Navigable URL
  • Has lifecycle

Reusable vs standalone

Widget Picker

  1. Show record listList(repeat widgets)
  2. Edit a recordForm(bound to entity)
  3. Conditional displayIf(boolean check)
  4. Group widgetsContainer(layout box)
  5. Reusable patternBlock(shared UI)
  6. Navigate awayLink(screen transition)

Screen Widgets

Screen
UI page
Block
Reusable UI component
Container
Group widgets
Placeholder
Block content slot
List
Repeat records
Form
Edit record
If
Conditional display
Link
Navigate action
Button
Trigger action

Blocks and Events

Web Block
Reusable component
Block Event
Notify parent screen
OnNotify
Handle block event
OnAfterNotify
Post-notify handler
Event Handler
Respond to event
Widget
UI element

Action Hierarchy

Data -> Server -> Client -> Screen

Data: fetchServer: DB logicClient: browserScreen: UI event

Server Action vs Client Action

Server Action

  • Runs server-side
  • Can query DB
  • Aggregates allowed

Client Action

  • Runs browser-side
  • No DB access
  • UI manipulation

Server DB vs browser UI

Action Type Picker

  1. UI event triggeredScreen Action(browser-side)
  2. Fetch screen dataData Action(cached)
  3. Server-side logicServer Action(can query DB)
  4. Browser-side logicClient Action(no DB access)
  5. Long-running taskProcess(background)
  6. Scheduled taskTimer(runs periodically)
  7. External API callServer Action(REST consume)

Logic and Actions

Screen Action
UI event handler
Server Action
Server-side logic
Client Action
Browser-side logic
Data Action
Fetch screen data
Process
Background task
If
Conditional branch
Switch
Multi-branch logic
Assign
Set variable value

Exception and Validation

Exception
Runtime error
Raise Exception
Trigger error
Exception Handler
Catch logic
Try/Catch
Handle errors
Form Validation
Validate inputs
Required Field
Mandatory input

Aggregate vs SQL

Aggregate

  • Visual builder
  • Parameterized safe
  • Joins entities

SQL

  • Raw SQL code
  • Advanced queries
  • Manual escaping

Visual vs code query

Data Source Picker

  1. Fetch from entityAggregate(visual query)
  2. Complex querySQL(advanced only)
  3. Enumeration valuesStatic Entity(design-time)
  4. External API dataREST Consume(server-side)
  5. Screen-bound dataData Action(auto-refresh)
  6. Runtime configSite Property(env-specific)

Aggregates and Fetching

Aggregate
Visual query builder
Filter
Condition rows
Sort
Order results
Join
Combine entities
Computed Attribute
Calculated field
Max Records
Limit result rows
SQL Query
Advanced data fetch
Data Action
Fetch screen data

External Data and REST

REST Consume
Call external API
REST Publish
Expose API endpoint
SOAP Consume
Legacy integration
Site Property
Runtime config value
JSON Structure
Deserialize response
API Method
Exposed server action

Screen Lifecycle

Init -> Ready -> ParametersChanged

Init: before renderReady: after displayChanged: new params

Reactive vs Traditional Web

Reactive Web

  • Browser-side logic
  • Client Actions
  • No full postback

Traditional Web

  • Server-rendered
  • Screen Actions
  • Full postback

Client vs server render

Service Studio IDE

Service Studio
Visual IDE
TrueChange
Real-time checker
Integration Studio
Build extensions
Forge
Component marketplace
Toolbox
Drag widgets
Canvas
Design surface
Properties pane
Edit settings
Element tree
Navigate hierarchy

Reactive App Concepts

Reactive Web
Browser-side logic
Traditional Web
Server-rendered pages
Client Variable
Browser-scoped variable
OnInitialize
Before screen renders
OnReady
After screen displays
OnParametersChanged
New parameters received
Debugging
Service Studio debugger

Relationship Rules

1:N = FK; N:N = Join

1:N: foreign keyN:N: join entityFK: child entityJoin: both IDs

Static Entity vs Entity

Static Entity

  • Design-time records
  • Enumeration
  • Fixed values

Entity

  • Runtime records
  • Database table
  • User data

Enumeration vs data table

Data Types and Entities

Entity
Database table
Static Entity
Design-time enumeration
Identifier
Primary key type
Text
String data type
Integer
Whole number type
Boolean
True or false type
Date Time
Timestamp type
Decimal
Fixed precision number

Relationships

One-to-Many
Foreign key child
Many-to-Many
Join entity pattern
Foreign Key
Reference identifier
Join Entity
Links two entities
Referential Integrity
Auto-enforced constraint
Index
Auto-created on FK

Deploy Flow

Personal -> Common -> LifeTime

Personal: privateCommon: sharedLifeTime: promoteProd: governed

1-Click Publish vs LifeTime

1-Click Publish

  • Dev environment
  • Service Studio
  • Ctrl+P

LifeTime

  • Cross-environment
  • Promote apps
  • Governance

Dev iteration vs prod deploy

Lifecycle and Deployment

1-Click Publish
Deploy to dev
Personal Area
Private dev zone
Common Area
Shared app zone
LifeTime
Cross-env deployment
Versioning
Track module versions
Deployment Zone
Target environment

Role vs Registered Role

Role

  • Permission group
  • Defined in module
  • Screen/entity access

Registered Role

  • Granted to user
  • Runtime assignment
  • Explicit enable

Defined vs assigned

Roles and Security

Role
User group permission
Registered Role
Granted to user
Screen Permission
Role-based access
Entity Permission
Data access control
Anonymous Role
Unauthenticated access

Common Traps

Client Action vs Server Action

Client Actions can't run Aggregates Server Actions can access database

Static Entity vs Entity

Static Entity = design-time records Entity = runtime user data

1-Click Publish vs Production

1-Click Publish deploys to dev LifeTime promotes to production

Aggregate vs SQL

Aggregate = visual, safe SQL = code, advanced only

Block vs Screen

Block = reusable component Screen = standalone page

Personal vs Common Area

Personal Area = private zone Common Area = shared apps

Last Minute

  1. 1.50 Q, 120 min, 35 pass
  2. 2.UI Design = 26% (highest weight)
  3. 3.Logic = 22% (second highest)
  4. 4.Client Actions cannot run Aggregates
  5. 5.Static Entity = enumeration, design-time
  6. 6.1-Click Publish: dev, not prod
  7. 7.Screen lifecycle: Init, Ready, Changed
  8. 8.1:N = FK; N:N = join
  9. 9.Data Action fetches screen data
  10. 10.Server Actions can access database
  11. 11.Roles control screen and entity access
  12. 12.Reactive = browser; Traditional = server
Same family resources

Explore More OutSystems Certifications

Continue into nearby exams from the same family. Each card keeps practice questions, study guides, flashcards, videos, and articles in one place.