Write Business Logic

Learn the PeopleSoft Programming Language!

What You Will Learn

  •  PeopleCode Overview
  •  Assignments
  •  Event processing model
  •  Built-in functions
  •  Component buffer access
  •  Event Mapping
  •  Stand-alone rowsets
  •  Add-mode processing
  •  PeopleCode debugger
  •  Variables
  •  Conditional logic
  •  PeopleCode "locations"
  •  Function libraries
  •  Application Packages
  •  Pushbuttons and hyperlinks
  •  SQL
  •  Extending with Java
  •  Best practices

Also Available as

System Requirements

This course includes plenty of hands-on activities. To be successful, we recommend keeping a PeopleSoft development, test, demo, or sandbox handy. If you don't have one, you may build your own laptop-hosted VirtualBox instance by following the instructions in the My Oracle Support document 1641843.2.

Duration

Students typically complete this material within 40 hours.

You will have access to the videos for 60 days after purchase and may keep the accompanying activity guide for life.

WHO SHOULD ATTEND?

  • PeopleSoft Developers

Recommended Prerequisites

Course curriculum

  • 1
    1. Introduction
    • © Copyright
    • 💡 Hints and Definitions
    • How to use this course
  • 2
    Creating the Sample Module
    • Creating the Sample Module
    • Activity: Create Fields
    • Activity: Create Records
    • Activity: Create Pages
    • Activity: Create Components
  • 3
    1. PeopleTools Review
    • Chapter Overview
    • Steps to Create a PeopleSoft Component
    • Multi-Level Pages (Parent/Child Relationships)
    • Creating the Enrollments Component
    • Activity 1-1: Create the Enrollments Component
    • Solution: Enrollments Component
    • Summary
  • 4
    2. Introduction to PeopleCode
    • Chapter Overview
    • PeopleCode Introduction
    • Introduction to PeopleCode
    • Where to Place Code
    • PeopleCode “Locations”
    • Component PeopleCode
    • Page PeopleCode
    • Record Field PeopleCode
    • Choosing the Location for Your PeopleCode
    • Attaching PeopleCode: Record Field vs. Component
    • Basic Rules for PeopleCode Syntax
    • Drag and Drop in the PeopleCode Editor
    • Referencing Fields in Your PeopleCode
    • Summary
  • 5
    3. Syntax and Semantics
    • Chapter Overview
    • Syntax and Semantics of PeopleCode
    • Saving PeopleCode
    • Comments
    • Assignments
    • Conditional "If" Logic
    • Conditional "Evaluate" Logic
    • Basic Validation: Error and Warning
    • Loops
    • Activity: PeopleCode Conditions
    • Activity 3-1: PeopleCode Conditions
    • PeopleCode Conditions
    • Summary
  • 6
    4. PeopleCode Events
    • Chapter Overview
    • The PeopleCode Events
    • Sequence of Events
    • PeopleCode Events Flowchart
    • Walkthrough 4-1: Understanding the Sequence of Events
    • SearchInit
    • SearchSave
    • RowSelect
    • PreBuild
    • FieldDefault
    • FieldFormula
    • RowInit
    • PostBuild
    • PageActivate
    • FieldEdit
    • FieldChange
    • RowInsert
    • RowDelete
    • SaveEdit
    • SavePreChange
    • Workflow
    • SavePostChange
    • Deferred Processing and PeopleCode
    • Summary
  • 7
    5. Variables
    • Chapter Overview
    • About PeopleCode Variables
    • PeopleCode Variables
    • Variable Scope
    • Local Variable Declarations
    • Variable Assignment
    • Component and Global Variables
    • New Variable Features Added in PeopleTools 8.4x
    • System Variables
    • Derived/Work Fields
    • Walkthrough 5-1: Reviewing Derived/Work Fields
    • Activity: Writing Event PeopleCode
    • Activity 5-2: Writing Event PeopleCode
    • Review: Writing Event PeopleCode
    • Activity 5-3: RowInit and FieldChange Events
    • Review: RowInit and FieldChange Events
    • Summary
  • 8
    6. Built-in Functions
    • Chapter Overview
    • Built-in Functions
    • Built-In Functions
    • Validation Functions
    • The Message Catalog and Message Display Functions
    • Controlling the Appearance of Fields on Pages
    • String Functions
    • Miscellaneous Built-in Functions
    • Reserved Words
    • RowInit and FieldChange Events
    • Activity: PeopleCode Functions
    • Activity 6-1: Creating Fields
    • Review: PeopleCode Functions
    • Summary
  • 9
    7. Writing & Calling Functions
    • Chapter Overview
    • Writing PeopleCode Functions
    • PeopleCode Functions
    • Writing a PeopleCode Function
    • Declaring a PeopleCode Function
    • Calling a PeopleCode Function
    • Functions Can Explicitly Return Values
    • Pulling It All Together
    • Calling an External Non-PeopleCode Function
    • Activity: External Functions
    • Activity 7-1: Using Functions
    • Review: External Functions
    • Summary
  • 10
    8. The Component Buffer
    • Chapter Overview
    • The Component Buffer
    • Component Buffer
    • Level 0 Can Hold Only One Row of Data
    • Levels 1, 2, and 3 Can Hold Multiple Rows of Data
    • Primary Record Definition
    • Determining the Primary Record Definition
    • Sibling Scroll Levels
    • Changing the Value of a Key Field Cascades Down to Deeper Levels in the Component
    • Loading Data into the Component Buffer – “Depth First”
    • How Much Data Is Loaded into the Component Buffer?
    • Derived/Work Fields
    • Which PeopleCode Programs Will Execute?
    • Sequence of PeopleCode Execution
    • Summary
  • 11
    9. Object-oriented PeopleCode
    • Chapter Overview
    • Object-oriented PeopleCode
    • Object-Oriented PeopleCode
    • Object-Oriented Terminology
    • Data Buffer Access Classes
    • Instantiating an Object
    • Current Context
    • Functions, Methods, and Properties
    • Properties & Methods vs. Older Built-in Functions
    • Walkthrough 9-1: Buffer Access Classes
    • Shorthand Syntax
    • Activity 9-2: Prerequisite Validation
    • Activity: Disabling Scroll Levels
    • Activity 9-3: Disabling Scroll Levels
    • Review: Disabling Scroll Levels
    • Writing Generic, Re-Usable Object-Oriented Code
    • Walkthrough 9-4: Writing Reusable Code
    • Summary
  • 12
    10. Application Packages
    • Chapter Overview
    • Application Classes
    • About Application Packages and Application Classes
    • Walkthrough 10-1: Review an Application Class
    • Drill Down into Application Packages
    • Walkthrough 10-2: Create an Application Package and Class
    • Activity: Using a Delivered Application Class
    • Activity: Oracle-delivered Example
    • Review: Using a Delivered App Class
    • Inheritance
    • Walkthrough 10-3: Inheritance
    • Activity 10-4: Student Class
    • Why Application Classes
    • Composition Versus Inheritance
    • Composition over Inheritance
    • Interfaces
    • Interfaces
    • PSUnit
    • Walkthrough 10-5: Unit Testing PeopleCode
    • Activity 10-6: Create more Test Cases
    • Comparing Function Libraries to Application Packages
    • Best Practices
    • Summary
  • 13
    11. Event Mapping
    • Chapter Overview
    • Introduction to Event Mapping
    • (8.55-8.58) My First Event Mapping
    • (8.58-) Walkthrough: My First Event Mapping
    • (8.59+) My First Event Mapping
    • (8.59+) Walkthrough: My First Event Mapping
    • Review Direct Deposit Scenario
    • Review Direct Deposit Scenario
    • Hide Print Options
    • Hide Print Options
    • Mask Routing Number
    • Concerns
    • Best Practices
    • Summary
  • 14
    12. Pushbuttons and Hyperlinks
    • Chapter Overview
    • Pushbuttons and Hyperlinks
    • Push Buttons and Hyperlinks
    • Creating Push Buttons
    • Activity 12-1: Pushbuttons
    • Summary
  • 15
    13. Data Buffer Methods
    • Chapter Overview
    • Activity: Buffer Rowsets
    • Data Buffer Methods
    • The Sort Method
    • The Select Method
    • The Flush Method
    • Review: Buffer Rowsets
    • Stand-alone Rowsets
    • Stand-Alone RowSets
    • The Fill Method
    • Inserting and Deleting Rows
    • InsertRow
    • DeleteRow
    • Summary
  • 16
    14. Invoke SQL from PeopleCode
    • Chapter Overview
    • Executing SQL Statements from PeopleCode
    • SQLExec
    • Inserts, Updates, Deletes
    • %SQLRows
    • Activity: Using SQL from PeopleCode
    • Activity 14-1: Using SQL in PeopleCode
    • Review: Using SQL from PeopleCode
    • SQL Definitions
    • Activity 14-2: Creating an SQL Definition
    • Additional PeopleCode SQL Methods
    • GetSQL
    • Activity 14-3: Using SQL Definitions
    • Object-Oriented SQL – The SQL Object Class
    • Using Record Objects to Invoke SQL Commands
    • Meta-SQL in PeopleCode
    • Activity 14-4: E-mail Enrollment Notification
    • Summary
  • 17
    15. Add-mode Processing
    • Chapter Overview
    • Add Mode Processing
    • Special Considerations for Add Mode Processing
    • Search Processing Event Sequence in Update Modes
    • Component Build Processing in Add Mode
    • Activity 15-1: Auto-incrementing Keys
    • Review: Auto-incrementing Keys
    • Summary
  • 18
    16. Using Java from PeopleCode
    • Chapter Overview
    • PeopleCode and Java
    • Using Java in PeopleCode
    • Activity 16-1: Where is my Temp Directory?
    • Review: PeopleCode and Java
    • Summary
  • 19
    17. The PeopleCode Debugger
    • Chapter Overview
    • The PeopleCode Debugger
    • The Enhanced PeopleCode Debugger
    • Summary
  • 20
    18. Final Activity
    • Final Activity
    • Activity 18-1: Final Activity
    • Steps
    • Helpful Hints
  • 21
    Bonus Content
    • Web Libraries
    • Event Mapping Ideas
    • Arrays
    • Metadata-less Integrations
    • Parsing JSON
  • 22
    Next Steps
    • Course Survey