The MSPro Boomi Collection
About
Good Practices & Patterns
Good Practices & Patterns
  • Markus' Boomi Integration
  • Implementation Patterns
    • The Cache Challenge
      • The Get-Or-Create Use-Case
      • PropCache Scripts
    • State Management
      • Example Scenario
      • State-Management in general
      • State-Management Functionality
      • Technical Solutions
        • Boomi File-System Implementation
          • saveState
          • readState & fetchStates
    • Exception Handling
      • Exception vs Error
      • Basic Rules
        • Aggregating Exceptions
      • Exception Handling Pattern
        • User-Defined Exception Messages
        • Catch Exceptions
      • The pattern in practice
        • API Error Handling
          • Single Record Strategy
            • Single Record RES
          • Many Records Strategy (Array)
            • Many Records RES
        • Pre-Condition Check
    • SQL Patterns
      • Script Header
      • General Rules
        • Check using RowCount
        • Check if record exists
        • Pagination and Sorting
        • Parameter - Best Practices
        • Use JSON as a complex parameter
    • Process Patterns
      • Process Route Implementation Pattern
      • Sub-Process or Process Route
    • DateTime
      • The Boomi datetime dilemma
      • Database and Flow
      • Groovy
      • Data Hub
      • Get Current Date
    • Groovy Script Patterns
      • Dynamic Document Properties
      • Dynamic Process Properties
      • Documents
    • Array Elements to Documents
  • MSPro Services
    • Intermediate Storage
      • Example Processes
        • Docs 01 - Update and Create
          • sub.SampleData.Invoice
        • 02 - Upsert and Get
    • Render Templates
  • Tips
Powered by GitBook
On this page
  1. Implementation Patterns
  2. Groovy Script Patterns

Dynamic Process Properties

DPP Functions

/**
 **Get a mandatory Dynamic Process Property.**

 @param propName
  The name of the Dynamic Process Property.
 @return
  The property value.
 @throws
  Exception in case the property does not exist or 
  its value is blank (is not initialized).
 */
static String _getDPPSafe(String propName) {
    String propValue = _getDPP(propName)
    if (propValue == null) throw new Exception(propName + ' not set!')
    return propValue
}
/**
 **Get a Dynamic Process Property.**

 @param propName
  The name of the Dynamic Process Property.
 @return
  The property value or [null] in case the property does not exist or 
  its value is blank (is not initialized).
 */
static String _getDPP(String propName) {
    String propValue = ExecutionUtil.getDynamicProcessProperty(propName)
    return (propValue == null || propValue.length() == 0) ? null : propValue
}