You are on page 1of 1201

Information in this document is subject to change without

notice. No part of this document may be reproduced or


transmitted in any form or by any means, for any purpose,
without the express written permission of TEMENOS
HEADQUARTERS SA. © 2021 Temenos Headquarters SA -
VERSION 22.04 all rights reserved.
TOC
Welcom e t o t he Tem enos Journey Plat form Docum ent at ion! 73

Topics 73

Badges 73

Version agnost ic cont ent 74

Copy URL but t on 74

Document at ion Navigat ion Opt ions 74

Search 74

Search filt ers 76

Google Search 76

Navigat ion Bar 76

Quick Menu 76

Table of Cont ent s 77

Resources 78

Feedback 78

What 's Next ? 79

Tem enos Journey Plat form Overview 80

AWS Cloud Deployment 82

Azure Cloud Deployment 83

Product s 83

Cloud host ed Journey Plat form VDC Edit ions 86

Int roduct ion t o Organizat ions 89

Journey Execut ive Reading Pat h 91

Journey St art er Reading Pat h 93

Journey Manager Overview 96

Journey Maest ro Overview 100

Page 2 of 1201
Journey Exchange Overview 103

Cont act ing t he Exchange Team 105

Exchange Package Archit ect ure 106

Exchange Developm ent Schedule 107

Exchange Part nerships 108

Exchange Developer Resources 109

Journey Workspaces Overview 110

What is Workspaces? 110

Who is Workspaces for? 110

Get t ing St art ed 111

Configurat ion 111

Browser Support 111

What 's new? 112

Journey Analyt ics Overview 117

Analyt ics Views 117

Journey Analyt ics User Int erface 118

Terminology 119

Transact ion St at us 119

St rict No PII Policy 119

Archit ect ure 119

Set up and User Administ rat ion 120

Journey Analyt ics Open UX Support 120

Ret ail DAO Overview 121

Audience 122

-3-
Areas of Value 122

Prerequisit es 122

What Remains t o Be Done 123

Adobe Reader PDF Form 124

Adobe Reader Not Found 124

Adobe Reader Updat e Required 124

Adobe Reader JavaScript is Disabled 124

For more informat ion on part icular browsers, see: 125

Unsupport ed Browsers 126

Google Chrome 126

To disable Chrome plugins 126

Microsoft Edge 127

View PDF Docum ent s in Chrom e 128

Chrome Troubleshoot ing 129

Check for updat es for Chrome, Adobe Reader and Acrobat 129

Check your Adobe Reader and Acrobat set t ings 129

Repair your Adobe Reader or Adobe Acrobat inst allat ion 130

Uninst all eit her Adobe Reader or Adobe Acrobat inst allat ion 130

Windows 130

Mac 130

Uninst all and Reinst all Adobe Reader or Acrobat 130

View PDF Docum ent s in Firefox 131

Using t he built -in PDF viewer 131

Using a PDF reader plugin 131

-4-
If plugin is not working 132

Test ing t he Adobe Reader Plugin 133

If PDF files are downloaded inst ead of displayed, t ry t hese solut ions 133

View PDF Docum ent s in IE 8 and IE 9 134

Using an Add-on t o view PDF document s wit hin an IE8 browser window 134

1. Make sure t hat t he syst em meet s t he requirement s for t he Acrobat product you use. 134

2. Check your IE add-on 135

3. Make sure t hat t he Act iveX folder cont ains files required for web browsing. 137

4. Use a support ed version of t he browser. 137

5. How t o t urn on and off add-ons 137

6. To delet e Act ive X cont rols 137

View PDF Docum ent s in IE 10 139

Using t he built -in PDF viewer 139

Check your Browser Set t ings 139

St ill having Issues? Try t hese st eps 140

Met hod 1: Disable Add-Ons 140

Met hod 2: Reset securit y set t ings for Int ernet Explorer 140

Met hod 3: Run t he Int ernet explorer performance t roubleshoot er and check if it helps. 141

Met hod 4: Reset Int ernet Explorer 10 141

Met hod 5: uninst all t he Adobe Acrobat Reader and inst all t he lat est version. 141

View PDF Docum ent s in Safari 142

Syst em requirement s 142

Configuring Acrobat t o display PDF files in Safari 143

Troubleshoot ing issues in Safari 143

-5-
Known Issues 143

Reader's Preferences > Int ernet > Display PDF in Browser is always dimmed 143

Uninst alling an older version of Acrobat or Reader aft er Acrobat X or Reader X has been inst alled
removes t he AdobePDFViewer plug-in 143

Older versions of t he AdobePDFViewer plugin can overwrit e newer versions of t he plug-in 143

View PDF Docum ent s in Windows 8 144

Using Acrobat Reader t o be t he Default PDF viewer 144

Transact Field App Overview 146

Get t ing St art ed wit h Transact Field App 148

Inst allat ion 148

Configurat ion 149

Log in 151

Self-regist rat ion 151

Credent ials provided t o you 151

Use your exist ing organizat ional credent ials 151

How t o Use Transact Field App 153

Synchronizing 154

Disconnect ed 154

WI-FI 155

Navigat ing around Transact Field App 155

Form s in Transact Field App 160

Types of Forms 160

Widget s 160

Fill out a Form 160

-6-
Task List in Transact Field App 164

Using t he Task List 164

Use a Build-in Cam era in Transact Field App 168

Barcodes 168

Support ed Format s 170

UPC-A and UPC-E 170

Code 93 171

Codabar 171

Dat a Mat rix 171

EAN-8 and EAN-13 172

Code 128 172

RSS-14 172

Azt ec 172

Code 39 173

ITF 173

RSS Expanded 173

PDF 417 174

QR Code 174

View Form Hist ory in Transact Field App 175

Using t he Hist ory folder 175

Viewing Opt ions 175

Mult iple Languages in Transact Field App 177

Transact Field App Securit y 180

Accessing Securit y 180

-7-
Form Securit y 180

Configure Transact Field App 181

Client Set t ings 181

Syst em Set t ings 183

Disable t he St andard Submit or At t achment But t on 186

Configure Form Tiles 188

Ext ract a Cust omer Email from Form Dat a t o Display it in a Task List 188

Configure t he form XML dat a ext ract s in Journey Manager: 188

Configuing t he field for Transact Field App 188

Synchronize t he Device wit h Manager 189

Ext ract a Dat e Field and Format it 189

Cust omize a Tit le of a Tile 190

Hide Default Fields 191

Configure t he Hist ory Screen Tiles Different ly t o t he Task List and Saved Form Tiles 191

Reference 191

Support ed Views 191

Templat e Values 192

Special dat e value handling 192

Com poser User Guide 195

Get t ing St art ed in Com poser 196

Login Page 196

Welcome Page 196

Recent Forms 196

Act ions 197

-8-
Product Informat ion 198

News 198

Home Menu Choices 198

Workspace 198

Access Cont rol 199

Syst em 199

Top of Page Links 199

Opt ions 199

Feedback 201

Online Document at ion 201

Logout 201

Accessibilit y for Com poser Developers 202

Checklist : 202

1. Use sequent ial page navigat ion 202

2. Use sect ion headers 203

3. Mark-up list s 203

4. Add alt ernat e t ext t o images 204

5. Do not use background images 205

6. Use fieldset s 205

7. Use capt ion placement t op 206

8. Use described by 207

9. Check color cont rast 208

10. Do not use placeholder t ext 208

11. Do not replace field capt ions wit h t ext 208

-9-
12. Do not disable anyt hing 209

The Com poser Workspace 210

The Hierarchy and Environment 210

Workspace Hierarchy 210

Merit s of t his St ruct ure 211

The Composer Hierarchy 211

Account s 211

Organizat ions 211

Project s 213

Creat ing a Form 214

Com poser Form Revisions 215

Manage Revisions Funct ionalit y 215

Accessing t he Form Revision Dialog 215

Menu 215

Manage Form Revisions Dialog 215

Form Revision Opt ions 216

Creat e 217

Make Act ive 218

Delet e 219

Rename 220

View XML 220

Read-Only Opt ion 221

Creat ing a Revision at Form Publish 222

Form Designer 224

- 10 -
The Wireframe View 224

St ruct ure and Preview 224

Dragging and Dropping on t he wireframe. 225

Widget Palet t e 225

Overview of Widget s 225

Organizat ion of t he Palet t e 225

Assist ant s 225

Field Types 225

Favorit es 225

How t o Use Widget s t o Creat e Fields on Forms 226

Widget Types 226

Simple Widget s 226

Blocks 226

Sect ions 226

For More on Widget s 226

St ruct ure Panel 226

St andard Mode 227

Showing t he relat ionship bet ween t he St ruct ure Panel and t he Wireframe 227

Advanced Mode 228

St andard Mode vs Advanced 229

Nut s & Bolt s vs Cont ent 229

Composer Framework (Advanced Mode Only) 229

How t o Place a New Field int o t he St ruct ure 229

Drag and Drop 229

- 11 -
Short cut for Power Users 232

Menu Bar 232

Layout 233

Assist ant s 234

Adding Assist ant s t o a Form 234

Assist ant s 234

Checkboxes 234

Using t he Checkbox Assist ant 235

The result ant st rut ure 237

Radio But t ons 238

The "Add a Radio But t on Group" wizard dialog 239

The st ruct ure t he "Radio But t on Assist ant " adds t o t he form 239

Dynamic Dat a 240

Sect ions 240

The Sect ion Assist ant wizard 240

Tables 241

Cont ent Blocks 242

Predefined Blocks 243

252

Tables & Repeat s 253

St at ic vs Dynamic 254

Edit ing Table St ruct ure 258

Adding a Foot er 259

Repeat s 262

- 12 -
Radio But t ons 262

Tem plat es 263

Overview 263

Out of t he Box 264

Creat ing a New Form 265

Choosing and previewing t emplat es in wireframes wit hint t he New Form wizard. 265

Basic Navigat ion Types 266

St andard Navigat ion 266

Accordion Navigat ion 266

Wizard Navigat ion 266

st rict ly in sequence 266

LH List s 266

menu select ion 266

rest rict ed menu select ion 267

Combinat ions of t he Above 267

St yling 267

How t o Change t he Templat e 267

Right -clicking on t he t op of t he St ruct ure Panel t ree 267

Samples of Templat es and St yles 268

A basic t emplat e, and how choice of color or t heme changes t he appearance. 269

Same form, different color scheme 270

Same form, but wit h a more elaborat e t emplat e. Not e t he Preview gives a more accurat e reprent at ion of
t he form's appearance. 271

Edit Propert ies 273

- 13 -
Invoking t he Edit Propert ies Dialog 273

St ruct ure 274

Edit Propert ies dialog for a t ab wit h a Left Hand menu 275

Not at ion Convent ion Used 275

The Filt er and View But t ons 276

The Propert ies Tab 276

The Ot her Tabs 278

Sect ions Blocks 279

Field Layout Cont rol 280

Problems wit h explicit posit ion layout s 280

Layout Managers and Hint s 280

The Layout Panels 281

Layout Const raint s 282

The Effect of t he Different Layout Managers 285

Flow — Top t o Bot t om 285

Flow — Left t o Right 286

Mult iple fields per line 287

Horizont al Layout 287

Two-column forms 287

Two Column Layout 288

Grid Layout 288

Grid layout wit h 3 radio but t ons respect ively 100%, 60mm and 100% 289

Propert y edit or for t he parent block 289

Tweaking t he element wit h "Edit Propert ies -> Layout -> Layout Dat a" 290

- 14 -
Grid layout where each of 5 columns set t o 100% (Not e: t he capt ion on t he 4t h column) 290

Fillers, Springs and Page Breaks 290

Field St yling 292

Using St ylesheet s 292

St yleset s 292

Typed St yles 292

Named St yles. 293

Manual Overrides 294

Cust om St yling 297

2 sample "HTML Cust om St yling" panels 297

A select ed t ext field in preview 297

Field Dat a 298

Overview 298

Dat a propert ies 298

Dat a Model 298

Dat a Propert ies 298

Dat a Panel 299

Init ial Field Value 302

Dat a Format 302

Dat a Display Format 302

Dat a Clearing Policy 302

Values 302

Dropdown Dat a Panel 303

Dropdown Dat a Panel (Advanced Mode) 303

- 15 -
Decimal Opt ions Panel 304

The Dat a Model Tab 305

Script ing 305

Overview of Script ing 305

The Composer Script ing Language 306

The Rules Tab 306

"Rule" Propert ies 306

"Policies" 306

Edit able Policy 306

Edit able Clearing Policy 307

Visibilit y Policy 307

Validat ion Policy 307

Messages 307

Act ions 307

Checkboxes 308

Responsive Ruleset s 308

The Rule Edit or 309

The Script Edit or 310

The Specificat ion Tab 312

Dependencies 313

Overview 313

Inspect ing Triggers 314

Inspect ing Dependencies 315

Preview & Publishing 316

- 16 -
Rendit ions 316

Publishing t o TM 317

N avigat ion 318

The Chrome of Navigat ion 318

The Simplest Chrome: None 319

But t on Navigat ion 320

Left Hand Menus 321

LH Menu Variant s (Unrecommended) 323

Top Menus 324

2-Level Menus 324

Mobile Menu Chrome 325

Navigat ion Choices 325

Unconst rained vs Const rained 326

Visible vs Hidden Navigat ion Choices 326

Validat ion, Errors and Navigat ion 326

Abandonment 326

Port al Chrome 327

Sect ions 327

Int roduct ion 327

Maguire Templat e 327

Adding a Sect ion 328

The Sect ion Assist ant wizard. 328

Sect ion Levels 328

Maguire's Use of Sect ions 328

- 17 -
Maguire Templat e use of Level 2 Sect ions 328

Wizards 328

2-Level Navigat ion 329

MaGuire t emplat e t op 2-level menu 329

The Navigat ion Menu in Composer 329

Feat ures common t o all t emplat es 329

Maguire Exclusive Feat ures 331

Headers and Foot ers 332

The Simple Approach 333

The Modern Approach 336

Maguire-st yle Navigat ion 337

Foot ers 339

Recolor and Hide on Print 340

Layout 341

Legacy Layout s 341

Overview 341

Keep it simple 342

Let Composer do t he work 343

Use Percent ages, not Fixed Widt h layout s 343

Use Field St yling 343

Checkboxes and Radio But t ons 343

Unit s and usage t ips 343

Capt ion Top or Capt ion Left 343

Mixing Checkboxes or Radio But t ons wit h Text fields on a line 344

- 18 -
Boxy Layout 344

An example of a Boxy layout 345

Layout Issues 347

Measurement s 347

Recommendat ions 348

Devices vs Deskt op 348

Delivery t o Mobile Devices 349

Two Modes of Delivery 349

Mode 1: The Web Browser 349

Mode 2: Via Nat ive App 350

Which Mode is Superior? 350

Responsive Layout 350

Int roduct ion 351

Composer use of Thresholds 352

Previewing Responsive Behavior 353

Grid Layout Caveat s 356

Act ions 357

Wrap 357

Wrap and fill 357

Fill 357

Hide 357

Hide (no media support ) 357

Show 357

In Line Validat ion Met hods 357

- 19 -
Tool t ips 358

Subm issions & At t achm ent s 359

File Uploading 359

Defining At t achment s in Composer 359

TM At t achment Table 359

TM At t achment Rule 359

TM Submission Block 360

How t his st ruct ure renders in preview. 361

Resuling "Submission At t achment s" page. 361

Delivery of At t achment s 361

Email Acknowledgement s 362

Signat ures 362

"Signat ures are not required at t his t ime. Aft er you have submit t ed t his form, print t he receipt , sign it
and send it in." 362

Wet signat ure form aft er submission. 363

Signat ure Pad Widget [HTML] 363

The signat ure canvas. 364

Not es 364

Dynam ic Dat a 365

Overview 365

What is Dynamic Dat a? 365

Dynamic Dat a in Act ion 365

The Dynamic Dat a Assist ant 366

St andard Block 366

- 20 -
Repeat able Block 366

Table 367

The Dynamic Dat a Assist ant wizard dialog. 368

Dynamic Dat a Assist ant creat es t he following st rut cure and wireframe. 369

Preview of t he form wit h fake dat a generat ed by t he Dynamic Dat a Assist ant , deskt op vs narrow
mobile 370

Aut oSuggest 371

Overview 372

Reference Dat a Lookup Block 375

CSV Dat a Wit h Headings 376

Panels in "Propert ies -> Dat a" for t he "Type" node (a TM Reference Dat a Lookup block) 378

CSV Dat a Wit hout Headings 379

Not es on Aut o Suggest ion _cont roller Dat a Configurat ion Paramet ers 379

"Hide St andard Address Block" in VEDA Block Widget 380

Sequence Numbers 381

Int ernet Explorer 8 Issue 381

Paginat ion 382

Adding a Page Navigat ion Block 383

2nd page of t he page navigat ion out put (using fake dat a). 383

Transact Field Mobile App 384

About t he App 384

The Avoka Transact Field App's main user int erface 385

How t o Publish a Form t o t he Mobile App 385

Mobile Camera Support 385

- 21 -
The St andard "Take Pict ure" But t on 386

Very simple form wit h a camera but t on 387

The form in t he Mobile App, and t he effect of t he "Take Pict ure" buit t on 388

Suppressing t he At t ach and Submit Tabs 389

Rest rict ing At t achment File Types in t he App 390

Mult i-channel 391

Overview 391

Aut hent icat ed Users 391

Wit h t he Maguire Templat e 391

Wit h Ot her Templat es 391

The Task List 392

Transact Field App 393

Anonymous Users 393

Form Sharing 394

Overview 394

Minimum Prerequisit es for Form Sharing 395

User Aut hent icat ion Set t ings 395

Simple Case using Prefabricat ed Blocks 396

Why Hide t he Sharing Block? 402

Sharing in Collaborat ions 402

Com poser Form Part s 403

Overview 403

Set t ing Up a Form Part s Project 404

Creat ing Mast er Forms and Part -Forms 405

- 22 -
Creat ing Part s wit hin t he Part Forms 406

Combining t he Part s t o Creat e a Mast er Form 409

Opaque and Transparent Part s 411

Part s and Versioning 412

Cross-part rules 413

Simple - All Cross-part Rules in t he Mast er Form 413

Normal - Each Part References Ot her Part s it Requires. 413

Advanced - Model/ View/ Cont roller 415

Usabilit y & Accessibilit y 418

General St at ement 418

FAQs 419

Quest ion: 419

Short Answer: 419

Long answer: 419

Tab Order 419

Privacy 421

General Overview 421

Privacy Concerns wit h Hidden Fields 421

Clear Hidden Dat a on Submit 421

Overriding 422

Clear Dat a when Hidden 422

When t o Clear Dat a 422

Validat ion 423

Overview 423

- 23 -
Fixed Lengt h 423

Regular Expression 423

Validat ion Script 424

Icon in Script Edit or t o access Composer classes list ing 424

Validat ion and Hidden fields 425

Validat ion Messages 425

Validat ion set t ings for a t ext field 426

Result ant Validat ion messages on t he Deskt op 426

In Line Validat ion 426

Inline Validat ion Set t ings 427

Some of t he import ant form-wide HTML Inline Validat ion opt ions 427

Inline Validat ion Example 428

Wireframe of form used t o demonst rat e Inline Validat ion 428

Deskt op Inline Validat ion Met hod [HTML] 428

None, Deskt op 429

Inline Validat ion: Deskt op, None 429

Per Field Block, Deskt op 430

Inline Validat ion: Deskt op, Per Field Block 431

Per Field, Deskt op 431

Inline Validat ion: Deskt op, Per Field 432

Per Sect ion, Deskt op 432

Inline Validat ion: Deskt op, Per Sect ion 432

Mobile Inline Validat ion Met hod [HTML] 433

None, Mobile 433

- 24 -
Mobile: Inline Validat ion met hod = None 433

Per Field Block, Mobile 434

Per Field, Mobile 435

Per Sect ion, Mobile 436

Analyt ics 437

Overview 437

Composer's Role in Analyt ics 438

Background Saving 438

The Cancel But t on in Maguire Forms 439

The Abandon Widget in non-Maguire Forms 440

Scoring 443

Field Types 446

Rich Text Fields 446

Rich Text Edit or 447

Tag Reference 449

Charact er t ags 450

Radio But t ons 452

Creat ing Radio But t on Groups Manually 452

Mandat ory Radio But t ons 452

Calculat ing or Using t he value of a Radio But t on Group 453

Dropdown Menus 453

Display Values 453

Values 454

Cascading Dropdowns 455

- 25 -
The Cascading Dropdown Manager predefined block dialog, wit h t he XML past ed int o t he dat a t ext -
box. "Save" creat es t he st ruct ure shown. 458

The dialog for creat ing t he "model" level cascading dropdown list . 458

The final st ruct ure on t he form. 459

Preview of t he cascading dropdowns. 459

Prefilled Dropdown List s 459

Prefilled Dropdown List s from Repeat able Areas 460

Repeat s 461

Overview 461

Advanced Script ing 462

JavaScript in Composer 462

Synt ax 462

"Me" Inst ead of "This" 462

Ot her Depart ures from St andard JavaScript 462

Classes and Funct ions 463

Synt ax Checking 463

Composer Framework 464

The JavaScript Libraries 464

The Public API 464

Document at ion 464

Calls 464

Using JavaScript 's Built -in Funct ions 465

Paramet ers 465

In t he Script Edit or 465

- 26 -
Edit Paramet er Dat a 465

Paramet er Types 466

Node Reference 467

Obt aining t he Fullpat h 467

Obt aining t he UID 467

Dat a Types 467

Overview 467

JavaScript Types 467

St ring 468

Number 468

Boolean 468

Undefined 468

Null 468

Raw Dat a 468

Conversions 468

Explicit Conversions 468

Implicit Conversion 469

Comparisons 469

Dat es 469

Dat e Format s and Pat t erns 469

Recommendat ion for Dat es 471

Advanced Dat e Out put Format s 471

Regular Expressions 473

Overview 473

- 27 -
RegEx References 474

How t o Use Regular Expressions 474

g 474

i 474

m 474

Using Propert y Formulae 474

Overview 474

$BUILD 475

$CHAR 475

$DATA 475

$ENCODE 475

$FIELD 476

$FIND 478

$FLOAT 478

$FORM 478

$GENERATION 478

$IF 479

$INFO 479

$LIST 480

$LOCALE 480

$LOOKUP 480

$MATH 480

$RULE 481

$SEQUENCE 481

- 28 -
$STRING 481

$TEST 482

Opt im izing Perform ance 483

Overview 483

Form Generat ion 483

Form Rendering 484

Speeding up Generat ion and Rendering 484

Opt imizat ion St rat egies 484

Tuning Dependencies 484

Inspect ing Dependencies 484

My Rule Dependencies 484

Triggered Rules 485

Dynamic vs St at ic Dependencies 488

Trigger Condit ions 491

Trigger at Init ializat ion 494

Phase Changes 495

Addit ional Event s 495

Caveat s 496

Business Rules 497

GeneralPurpose 497

Error 497

Warnings 497

General Purpose 497

Configurat ion Set t ings 497

- 29 -
Visibilit y Rule 498

Visibilit y Policy 498

Addit ional Event LIst eners 498

Business Rule Trigger 498

The Relat ionship Bet ween Nominat ed Widget s and t he Rule 498

The default 499

Rule fires on change of any observed widget ; as a result , t he rule could fire many t imes and make t he
form laggy 499

Rule fires less and only on a nominat ed form event or event s; result s in a more responsive form. 500

St andard Composer Event s 500

Error 501

Focus Field Target 501

Clearing Policies 501

Displaying Errors 502

Warning 502

Mandat ory Checkbox Block 502

Mandat ory Block 502

Library Advanced Feat ures 503

Overview 503

Composer Account Administ rat ion 504

How Libraries Relat e t o Organizat ions and Project s 504

Inherit ance 504

Visibilit y 504

Ordinary Libraries at t he Account Level 504

- 30 -
Compat ibilit y Libraries 505

The Organizat ion's Int ernal Library 505

Search Pat h Inclusion at Organizat ion Level 505

Templat es 505

Visibilit y Summary 505

Inherit ance 507

The Cascade 507

Search Pat h Order 508

Cust om Types 509

Localizat ion Keys 509

Non-edit able 509

Edit able 510

St yle Packs 514

Inherit ance Wit hin Forms 515

Overview 515

Widget Hierarchy 515

Inherit ance in blocks 516

St art er Cont ent 516

Resources 516

Cust om CSS 517

Cust om JavaScript Libraries 517

Templat es 518

Overview 518

St ylesheet Modificat ion 518

- 31 -
Locat ion of t he St ylesheet Modificat ions 518

Scope of St ylesheet Modificat ions 518

Edit ing t he Elect ed St ylesheet s 519

Templat e Edit or 519

St yle Opt ions t ab 520

Edit ing t he XML Source of t he Templat e 521

Localizat ion 521

Overview 521

Act ivat ing Localizat ion 521

Swit ching Templat e 522

Act ivat ing a Templat e 522

Set t ing Target Locales 523

Generat ing Keys 524

Generat ing t he Propert ies File 524

Use Source Language Values 524

Use Google Translat e Values 524

Use Blank Values 524

Save Non-form Propert ies t o Global Propert ies File 525

Deployment Opt ions 525

St ylesheet s 526

Overview 526

Typed St yles 526

Named St yles 527

St ylesheet Cat egories 527

- 32 -
Edit ing St ylesheet s 528

Cust omizing St ylesheet s 530

Form Designer Advanced Feat ures 531

Overview 531

Bulk Edit or 531

Propert y Set s 532

Art ifact s Tab 532

Dat a Model Tab 533

XML Source Tab 534

Localizat ion Tab 534

At t achm ent Fields Overview 535

Finding t he At t achment Field in t he Palet t e 535

Configuring t he At t achment Field 535

Init ial Config Opt ions 535

Basic Mode Config Opt ions 536

Advanced Mode Config Opt ions 537

Test ing in Preview Mode 538

The User Experience 538

Int eract ing wit h t he At t achment Field 538

Drag and drop support 539

Read-Only Behavior 539

Exposing At t achment s in Review & Approval St yle Collaborat ion Jobs 539

Support Not es 540

Obt ain Form Det ails 541

- 33 -
Rest ore t he Environm ent 543

Add Google Tag Manager t o a Com poser Form 547

Import ing t he Cont ainer int o Google Tag Manager 548

Configure Manager t o Enable Analyt ics 550

Enable Analyt ics for each Form 551

Addit ional Forms Pages 551

Configure Google Tag Manager 553

Furt her Informat ion 555

Navigat e and Locat e It ems in GTM 555

General Funct ional Overview 555

In-form Page Views 555

Ot her Page Views 556

Com poser Account Adm inist rat ion 557

Aim of t his Guide 557

The Workspace 558

Creat ing N ew Organizat ions 559

Creat ing N ew Project s 561

Creat ing & Im port ing Libraries 562

Export Opt ions 564

Inspect ing an Organizat ion's Libraries 565

Maint aining Libraries 566

Sharing Libraries wit h Account s 566

Assigning Libraries t o organizat ions from t he Workspace 566

Assigning and Maint aining St ylesheet s 567

- 34 -
Maint aining Cust om Types 570

Maint aining Templat es 572

Assigning Libraries 575

Maint aining Propert y Set s 576

Publishing & Im pact Analysis 578

Publish Target s 579

Impact Analysis 579

Creat ing Users 581

Client Tier Users 581

Syst em Tier Users 582

Creat ing Roles 583

Allocat ing Users 592

Creat ing N ew Account s 594

Deploym ent Propert ies Set t ing 595

Display Import ant Informat ion on t he Composer Login Page 595

Maint aining Help, N ews, and Tips 597

Organizat ion Managem ent 600

Release Managem ent 602

Viewing t he Logs 604

Managed Dat apacks 606

Background and st rat egic fit 606

Feat ures of using Managed Dat apacks 606

User int eract ion and design 606

Managed Support for BizPacks 608

- 35 -
Init ial Allocat ion of Bizpack Support 608

Import ing t he Bundled Packs 608

Gaining Access t o t he BizPack Libraries 608

Removing Access t o t he BizPack Dat apacks 609

Deprecat ed Widget s 609

The Composer Palet t e 609

Managed Support for Maguire 611

Com poser Ant Support v4.5.0 612

Requirement s 612

Set t ing up your Ant build file 612

Composer Ant Tasks 613

sfc-export -account 613

Task Paramet ers 613

Example 614

sfc-export -org 614

Task Paramet ers 614

Example 614

sfc-form-spec 614

Task Paramet ers 614

Examples 615

sfc-import 616

Task Paramet ers 616

Example 616

sfc-publish 616

- 36 -
Task Paramet ers 616

Example 617

sfc-server 617

Task Paramet ers 617

Example 618

Com poser On-prem ise Upgrade Guide (for m ajor release) 619

Upgrade St eps 620

Follow up Act ions 621

1) Updat ing t he Service Pack(s) (Not required for major releases) 621

2) Adding Maguire Packs 621

3) Act ivat ing Bizpacks 622

4) Set t ing t he current release 623

5) Client s not on t he lat est release 624

Rollback 625

Upgrading from an older version 625

St eps t o upgrade 625

Com poser On-prem ise Upgrade Guide (service pack release only) 626

1) Updat ing t he Service Pack(s) 626

2) Adding Maguire Packs 626

3) Set t ing t he current release 627

Com poser At t achm ent Definit ions 629

Transact ion Manager 629

Pros 629

Composer Form 629

- 37 -
TM At t achment Rule 629

Pros 630

Cons 630

TM At t achment Table 630

Com poser At t achm ent Rest rict ions 631

Transact ion Manager - Document Types 631

Com poser At t achm ent Tim e 632

Com poser At t achm ent s in Repeat s 633

Transact for Salesforce App 634

User Int erface Design 635

St yling 635

Navigat ion 635

Informat ion Archit ect ure 636

Int egrat ion Approach 637

UI 637

APIs 637

Aut hent icat ion / Ident it y Management 637

Dat a Securit y 638

Dat a Access Cont rols 638

Off-Plat form Dat a St orage 638

Salesforce Organizat ion Impact s 639

Licensing 639

Dat a St orage Requirement s 639

API Usage Volumes 639

- 38 -
Bat ch Processing 640

Report ing 640

Int egrat e Salesforce wit h Manager 641

Inst all t he Transact for Salesforce App 641

Creat e t he API User Account in Salesforce 641

Creat e t he Manager Connect ed App in Salesforce 642

Configure Permit t ed Users for t he Connect ed App 643

Creat e t he API Named Credent ial in Salesforce 643

Informat ion required by t he Journey Manager Team 644

Enable Access t o t he Transact for Salesforce App 646

Manage User Licenses 647

Ret rieve t he Consum er Key and Secret for t he Salesforce App 648

Ret rieve t he Securit y Token for t he Salesforce User Account 649

Rem ove Password Expiry on a Salesforce User Account 650

Creat ing a 'Password Never Expires' Permission Set 650

Adding t he 'Password Never Expires' Permission Set t o a User Account 650

Configure t he Transact for Salesforce App UI in Salesforce 651

Creat e t he Visualforce Page 651

Visualforce Markup At t ribut es 653

Add t he Visualforce page t o t he Page Layout 655

Configure Transact for Salesforce App 656

Creat e t he API User Account in Manager 656

Configure t he Salesforce API Client Det ails 657

Import t he Manager Ext ension Packages 657

- 39 -
Configure t he Salesforce User Space 657

Configure t he Securit y Manager 658

Configure t he Delivery Service and Delivery Channel 658

Make Form s Available for Salesforce Users 660

Group Form s Using Form Cat egories 661

Configure Salesforce Delivery Channel 662

Complet ed Transact ion Delivery 662

Abandoned Transact ion Delivery 662

Saved Transact ion Delivery 662

Configure a Prefill Generat or in Salesforce 663

Creat e t he Prefill Generat or Record 663

Managing Form Versions 663

JSON Configurat ion Format 664

Support ed Paramet ers 665

Object Type Definit ion 665

Dealing wit h Complex Types 666

The includeFields Direct ive (Required) 666

The includeRelat ed Direct ive (Opt ional) 666

The includeCust om Direct ive (Opt ional) 667

XML Prefill Dat a Generat ion 667

Cust om Prefill Generat ors 670

Populat e a Form wit h Salesforce Prefill Dat a 671

Configure a Delivery Processor in Salesforce 672

Creat e t he Delivery Processor Record 672

- 40 -
JSON Configurat ion Format 673

Object Type Definit ion 675

The mat chFields Direct ive (Opt ional) 676

The insert Fields Direct ive (Required) 677

The updat eFields Direct ive (Required) 677

The sourceFields Direct ive (Required) 677

The relat ions Direct ive (Opt ional) 678

XML Consumpt ion 678

Cust om Delivery Processors 679

Rest rict Access for Select ed Form s t o User Groups 681

Creat e t he Form Group 681

Add Users t o t he Form Group 681

Assign Forms t o t he Form Group 681

Enable Access t o Rest rict ed Form s 682

Receive Adm inist rat or Alert s when Delivery Processing Fails 683

Transact for Salesforce App Troubleshoot ing 684

Cont ent cannot be displayed: You do not have sufficient privileges t o access t he page: / apex/ Avoka_Trans-
act _Lead 684

Problem 684

Solut ion 684

Reference 684

Could not ident ify SObject t ype <X> 684

Problem 684

Solut ion 685

- 41 -
Delivery Error: No such column 'avoka__Delivery_Trigger_Type__c' on sobject of t ype avoka__Transact _
Delivery__c 685

Problem 685

Solut ion 686

Delivery Error: The request ed resource does not exist 687

Problem 687

Solut ion 687

Delivery Processing Error: Field <X> on <Y> is not CREATEABLE by <Z> 687

Problem 687

Solut ion 688

Insufficient Privileges: You do not have t he level of access necessary t o perform t he operat ion you reques-
t ed... 688

Problem 688

Solut ion 688

Missing "Reset My Securit y Token" Opt ion 689

Problem 689

Solut ion 689

Post Request : 403 Forbidden - You don't have permission t o access / man-
ager/ secure/ GroovyServiceServlet on t his server 689

Problem 689

Solut ion 689

Salesforce API Aut hent icat ion Failure (Invalid Grant ) 689

Problem 689

Solut ion 689

Sorry, you are not licensed t o use t he Transact solut ion 690

- 42 -
Problem 690

Solut ion 690

Transact for Salesforce App Inst allat ion 691

Service Definit ion Import Opt ions 692

Securit y Manager Import Opt ions 692

Inst allat ion Asset s Version 1.4 694

New Feat ures 694

Issues Resolved 694

Inst allat ion Asset s 694

Inst allat ion Asset s Version 1.5 695

New Feat ures 695

Issues Resolved 695

Inst allat ion Asset s 695

Inst allat ion Asset s Version 1.6 697

New Feat ures 697

Issues Resolved 697

Inst allat ion Asset s 697

Inst allat ion Asset s Version 1.8 698

New Feat ures 698

Issues Resolved 698

Inst allat ion Asset s 698

Inst allat ion Asset s Version 1.10 699

New Feat ures 699

Issues Resolved 699

- 43 -
Inst allat ion Asset s 699

Inst allat ion Asset s Version 1.11 701

New Feat ures 701

Issues Resolved 701

Inst allat ion Asset s 701

Transact Int egrat ion Gat eway Overview 702

Overview 702

Usage and Deployment Models 702

Delivery Int egrat ion 703

Service API Gat eway 704

Gat eway Securit y 705

Reference Dat a Int egrat ion 705

Transact Int egrat ion Gat eway Set up 707

Prerequisit es 707

Transact Client SDK 707

Inst allat ion 707

Configurat ion 708

Delivery Config 709

Proxy Config 711

Services Config 713

Gat eway Services Config 715

Scheduler Config 716

St orage Config 717

Transact Int egrat ion Gat eway Developm ent 719

- 44 -
Groovy Development 719

Securit y Rest rict ions 719

Script Development 719

Delivery Service Script 720

Gat eway Service Script 723

Scheduled Service Script 724

Adding JAR Libraries 725

Logging 726

Transact Manager Previous Releases 728

Transact Fluent SDK Overview 729

Benefit s of Using Groovy in Journey Manager 731

Fluent Groovy Services vs Groovy Services 735

Fluent Groovy Service 735

Groovy Service 737

Configurat ion Example 738

Fluent API REST Service 740

Request s 740

Responses 742

Securit y 742

Class Names 742

About Journey Plat form N ew Releases 747

Major Release 747

Maint enance Release 747

Release Not es Sit emap 747

- 45 -
What 's New 747

What 's N ew in 22.04 749

Journey Maest ro N ew Feat ures 750

Journey Manager N ew Feat ures 751

Exchange N ew Feat ures 752

Journey Analyt ics N ew Feat ures 753

Journey Workspaces N ew Feat ures 754

What 's N ew in 21.11 755

Journey Maest ro N ew Feat ures 756

Journey Manager N ew Feat ures 757

Journey Analyt ics N ew Feat ures 758

Journey Workspaces N ew Feat ures 759

What 's N ew in 21.05 760

Journey Maest ro N ew Feat ures 761

Journey Manager N ew Feat ures 762

What 's N ew in 20.11 763

Journey Maest ro N ew Feat ures 764

Journey Manager N ew Feat ures 765

SpringboardSm all Business (SMB) N ew Feat ures 766

What 's N ew in 20.05 767

Journey Maest ro N ew Feat ures 768

Journey Manager v20.05 N ew Feat ures 769

Journey Analyt ics N ew Feat ures 770

Journey Workspaces N ew Feat ures 771

- 46 -
Exchange N ew Feat ures 772

Springboard v3.0.0 N ew Feat ures 773

What 's N ew in 19.11 774

Journey Maest ro N ew Feat ures 775

Journey Manager N ew Feat ures 776

Journey Analyt ics N ew Feat ures 777

Journey Workspaces N ew Feat ures 778

Exchange v19.11 N ew Feat ures 779

What 's N ew in 19.05 780

Journey Maest ro N ew Feat ures 781

Journey Manager N ew Feat ures 782

Journey Analyt ics N ew Feat ures 783

Journey Workspaces N ew Feat ures 784

Exchange N ew Feat ures 785

Journey Manager Feat ures 786

Main Feat ures 786

Feat ures by Release 787

22.04 787

21.11 787

21.05 788

20.11 789

20.05 789

19.11 789

19.05 790

- 47 -
18.11 791

18.05 792

17.10 793

5.1 794

5.0 795

4.3 795

Maest ro Feat ures 797

Main Feat ures 797

Feat ures by Release 797

22.04 797

21.11 798

21.05 798

20.11 799

20.05 799

19.11 800

19.05 800

18.11 800

Journey Analyt ics Feat ures 802

Main Feat ures 802

Feat ures by Release 802

22.04 802

21.11 803

21.05 803

20.05 804

- 48 -
19.11 804

19.05 805

18.11 805

Journey Workspaces Feat ures 807

Main Feat ures 807

Feat ures by Release 807

Journey Workspaces 22.04 807

Journey Workspaces 21.11 808

Journey Workspaces 20.05 808

Journey Workspaces 19.11 809

Journey Workspaces 19.05 810

Journey Workspaces 18.11 811

Tem enos Journey Plat form Feat ures Com pat ibilit y 813

Manager 813

Maest ro 813

Composer 814

Product Suit e Com m on Vulnerabilit ies and Exposures 815

Journey Plat form for Developers 816

Journey Maest ro Design Environment 816

Open UX Environment 817

Int egrat ion 818

Nat ive Int egrat ion 818

3rd Part y Int egrat ion 818

Soft ware Developm ent Technologies 819

- 49 -
AngularJS 819

JavaScript 819

LESS 819

HTML5 820

JSON 820

CSS 820

CSV 820

XML 820

Journey Plat form Int egrat ion 822

Int egrat ion Areas 822

Transact ions Discovery 822

Dat a Pre-populat ion 823

Dat a Ent ry St reamlining 823

Execut ion 824

Save and Resume 824

Delivery 825

Aut hent icat ed and Unaut hent icat ed Transact ions 825

Ext ension Point s 826

Calling Ext ernal Services and API 830

Web Sit e Int egrat ion and Single Signon 831

Form Level Int egrat ion 832

Five Journey Plat form Int egrat ion Areas 833

Delivery 833

Form Discovery 836

- 50 -
3 Pre-Populat ion - Accelerat ing Dat a Ent ry 837

St reamlining Dat a Ent ry 837

Execut ion 838

The Economics of Int egrat ion 840

Why do we do int egrat ion? 840

Assess t he Value of Int egrat ion 841

Consider Deferring Int egrat ion 841

Consider Leveraging Exist ing Paper/ image-based Processes 841

Hidden Cost s of Process Re-engineering 842

Google Analyt ics Virt ual Page Int egrat ion 843

Cont inuous Int egrat ion Overview 845

Cont inuous Int egrat ion Workflow 847

CI Version Cont rol Syst em s 848

CI Servers 849

CI Build Syst em s 850

CI Dependency Managem ent Syst em s 852

CI Applicat ion Packages 853

Main JSON 854

app-package-def.json 854

Delivery Channels JSON 854

delivery/ rest -service-delivery-def.json 854

Forms JSON 855

forms/ CCA-MAESTRO-AP/ cca-maest ro-form-def.json 855

forms/ CCA-MAESTRO-AP/ locale-de.json 859

- 51 -
Propert ies 859

propert ies/ propert y-def.json 859

Service Connect ions 860

connect ions/ connect ion-def.json 860

Services 861

services/ helloworld/ service-def.json 861

services/ helloworld/ HelloWorld.groovy 862

Support 863

support HANDBOOK 864

SUPPORT PORTAL 864

POLICIES 864

Resources 865

SYSTEM REQUIREMENTS 865

LEGACY SYSTEM REQUIREMENTS 865

Journey Plat form Support Handbook 866

Roles and responsibilit ies 867

Support definit ions 868

Plat form Support 868

Definit ion 868

Example of Plat form Issues 868

Out of Scope 868

Development Assist ance 868

New Feat ure Request s 868

Severit y level definit ions 869

- 52 -
Severit y 1 869

Severit y 2 869

Severit y 3 869

Response t im es and updat e t arget s 870

Response Times 870

Updat e Target s 870

Business Hours Definit ion 870

Aft er Hours Support 870

Cont act ing Support 871

Support Cent ers 871

Business Hours 871

Aft er Hours Support 871

Temenos Support Port al 871

Accessing t he Temenos Support Port al 871

Username and Password 872

Open a new t icket 872

Describe your issue 873

Summary 873

Issue Descript ion 873

View exist ing t icket s 873

Ticket st at uses explained 874

Lifecycle of a support t icket 875

St ep 1 875

Open Support Ticket 875

- 53 -
Support Ticket Severit y 875

St ep 2 875

Engagement wit h Support Team 875

St ep 3 875

Close a Support Ticket 875

Issue Resolut ion 876

St ep 4 876

Cust omer Sat isfact ion Survey 876

St ep 5 876

Reopening a support t icket 876

Escalat ing a support t icket 877

Escalat ing support cases 877

How do I escalat e t he visibilit y of a support t icket t o management ? 877

What happens aft er an escalat ion request is made? 877

Time-Based Escalat ion 877

Product release definit ions 879

Release t erminology 879

Major release 879

Maint enance release 879

End-of-Life Policy 879

Get t ing m ore inform at ion 880

Document at ion websit e 880

Resources websit e 880

Announcement s 881

- 54 -
Release not es 881

Q&A 881

Ideas and New Feat ure Request s 882

Journey Plat form End-of-Life Policy 883

Feat ure and Maint enance Releases 884

Release Not es 884

Feat ure List s 884

End-of-Life Schedules 884

Journey Manager 884

Support ed versions 884

Unsupport ed (EOL) versions 884

Journey Maest ro 885

Support ed versions 885

Unsupport ed (EOL) versions 885

Journey Workspaces 886

Support ed versions 886

Unsupport ed (EOL) versions 886

Journey Maest ro Support for End-of-Life AngularJS Releases 886

Transact Composer 887

Unsupport ed (EOL) versions 887

Transact Field App 887

Unsupport ed (EOL) versions 887

Journey Plat form Deprecat ion Schedule 888

Reset Support Port al Password 890

- 55 -
Changes t o Our Product N am es 892

Name Changes from t he original Knowledge Base 892

Journey Plat form Syst em Requirem ent s 894

Legacy 894

Journey Manager Syst em Requirem ent s 895

Cloud 895

On Premise 895

Browser 895

Operat ing Syst ems 896

Dat abases 896

Hardware 897

Journey Maest ro Syst em Requirem ent s 898

Cloud 898

Browser 898

Recommended Hardware 898

Journey Plat form Form s Syst em Requirem ent s 899

Deskt op Browsers 899

Legacy Deskt op Browsers 899

Mobile Browsers 900

Mobile Browsers Requirem ent s 901

Transact Com poser Requirem ent s 902

Cloud 902

Adobe Flash 902

Browser 902

- 56 -
Recommended Hardware 903

Transact Int egrat ion Gat eway Syst em Requirem ent s 904

Cert ified Operat ing Syst ems 904

Recommended Hardware 904

Transact Field App Syst em Requirem ent s 905

Legacy Browsers Requirem ent s 906

Journey Plat form Persona Overview 907

Implement at ion Team 907

Business as Usual (BAU) Team 908

Maest ro Form Builder 910

Example t asks of a Form Builder include: 910

Prerequisit e Skillset of a Form Builder 911

Object ives and Goals of a Form Builder 911

Journey Solut ion Archit ect 912

Example t asks of a Journey Solut ion Archit ect include: 912

Prerequisit e Skillset of a Solut ion Archit ect 913

Object ives and Goals of a Solut ion Archit ect 913

Journey Plat form Developer 914

Example t asks of a Plat form Developer include: 914

Prerequisit e Skillset of a Plat form Developer 915

Object ives and Goals of a Plat form Developer 915

Maest ro Tem plat e Designer 916

Example t asks of a Templat e Designer include: 916

Prerequisit e Skillset of a Templat e Designer 917

- 57 -
Object ives and Goals of a Templat e Designer 917

Journey Applicat ion Test er 918

Example t asks of a JourneyApplicat ion Test er include: 918

Prerequisit e Skillset of a Journey Applicat ion Test er 918

Object ives and Goals of a Journey Applicat ion Test er 919

Journey Analyt ics User 920

Prerequisit e Skillset of Journey Analyt ics 920

Object ives and Goals of Journey Analyt ics 920

Journey Im plem ent at ion/ Project Manager 921

Example t asks of a Journey Implement at ion/ Project Manager include: 921

Prerequisit e Skillset of a Journey Implement at ion/ Project Manager 921

Object ives and Goals of a Journey Implement at ion/ Project Manager 922

Journey Cham pion/ Syst em Owner 923

Prerequisit e Skillset of a Journey Champion/ Syst em Owner 923

Object ives and Goals of a Journey Champion/ Syst em Owner 923

Journey Syst em Adm inist rat or 924

Example t asks of a Journey Syst em Administ rat or include: 924

Prerequisit e Skillset of a Journey Syst em Administ rat or 924

Object ives and Goals of a Journey Syst em Administ rat or 924

Journey Syst em Manager/ DevOps 925

Example t asks of a Journey Syst em Manager/ DevOps include: 925

Prerequisit e Skillset of a Syst em Manager/ DevOps 925

Object ives and Goals of a Syst em Manager/ DevOps 925

Journey Support Team 926

- 58 -
Example t asks of a Journey Support Team include: 926

Prerequisit e Skillset of t he Support Team 926

Object ives and Goals of a Support Team 926

Inst ruct or-Led Training and eLearning overview 927

Inst ruct or-Led Training ILT 928

eLearning 929

Available eLearning Courses 929

eLearning Exercises 930

Version 5.1 930

Version 17.10 930

Help 931

Learning Cent er Help Guide 932

New consolidat ed Journey Plat form resources websit e 932

Access t he online courses at t he new websit e - journey.t emenos.com 932

Access t he online courses at t he original locat ion - learning.avoka.com 932

Navigat e t hrough t he Temenos Learning Cent er 935

Home page and menu bar 935

St at us icon 935

Course name 935

Launch video 935

eLearning Exercises for Maest ro v17.10 937

Pre-requisit e 937

937

eLearning Exercises for Maest ro v17.10 937

- 59 -
What s new? 937

Help 938

Exercise Set up - Im port ing t he Maest ro v17.10 Exercise Files 939

St ep 1: Download t he Exercise Project 939

St ep 2: Navigat e t o t he Maest ro Organizat ion 939

St ep 3: Import Project 939

St ep 4: Set t he Default Init ial Version and Default Templat e 940

Assign an Ent it y t o Mult iple It em s Exercise v17.10 941

St ep 1: Add a new Sect ion and Component s 941

St ep 2: Assign an Ent it y t o mult iple it ems 941

Ext ra Help 941

Creat e an Ent it y in t he ID Field Exercise v17.10 942

St ep 1: Creat e a Form 942

St ep 2: Creat e an Ent it y 942

St ep 3: Assign an Ent it y 942

St ep 4: Creat e a nest ed Ent it y 943

Ext ra Help 943

Creat e an Ent it y in t he Ent it y Panel Exercise v17.10 944

St ep 1: Creat e an Ent it y 944

St ep 2: Creat e a nest ed Ent it y 944

Ext ra Help 944

Delet e an Ent it y Exercise v17.10 945

St ep 1: Delet e an Ent it y 945

Ext ra Help 945

- 60 -
Duplicat e IDs Exercise v17.10 946

St ep 1: Add a component wit h a duplicat e ID and Review 946

St ep 2: Add a component wit h a duplicat e ID and Accept 946

Ext ra Help 947

ID Managem ent Exercise v17.10 948

St ep 1: Creat e a new form 948

St ep 2: Add a new Text Field component 948

St ep 3: Updat e t he Text Field component 948

Ext ra Help 949

Im pact Analysis Exercise v17.10 950

St ep 1: Open t he Order form 950

St ep 2: Review t he current references 950

St ep 3: Add a new Text Field t hat references First Name 950

St ep 4: Review t he updat ed references 950

Ext ra Help 950

Sem ant ic Versioning Exercise v17.10 951

St ep 1: Updat e t he 1.0-develop version 951

St ep 2: Creat e a Tagged version (based on 1.0-develop) 951

St ep 3: Open t he Tagged version 951

St ep 4: Updat e t he 1.0-develop version 951

St ep 5: Creat e anot her Tagged version (based on 1.0-develop) 952

Ext ra Help 952

Upgrade a Project Exercise v17.10 953

St ep 1: Import a Legacy project 953

- 61 -
St ep 2: Upgrade t he project 953

Ext ra Help 953

eLearning Exercises for Maest ro v5.1 954

Pre-requisit e 954

954

eLearning Exercises for Maest ro v5.1 954

Help 955

Exercise Set up - Im port ing t he Maest ro v5.1 Exercise Files 956

St ep 1: Ident ify t he Training Environment 956

956

St ep 2: Download t he Exercise Project 956

St ep 3 Import t he Exercise Project 956

Result 957

Opt ional St ep 4 Import ing Legacy Project s 957

St ep 5 Updat e Release Version 958

Ext ra Help 959

Import ing a Project 959

Calculat ion Rules Exercise v5.1 962

962

St ep 1 Creat e a New Form 962

St ep 2 Add Component s t o Page One 962

St ep 3 Populat e a Component Based on Ent ered Dat a 963

St ep 4 Add Show if Rules 964

St ep 5 Change t he Clear Hidden Dat a Opt ion 964

- 62 -
St ep 6 Add an Order Det ails Sect ion t o t he Form 964

St ep 7 Add a Calculat ion Rule t o t he It em Tot al 965

St ep 8: Add a Calculat ion Rule t o t he Sub-Tot al Component 965

St ep 9: Add a Calculat ion Rule t o t he Tot al Due Component 966

Ext ra Help 966

Creat e a Show If Rule 966

Combine ent ered dat a int o a component 968

Clear Hidden Dat a Immediat ely 968

Creat e a Mat hemat ical Calculat ion Rule 969

Creat e a Calculat ion Rule for Repeat ed It ems 969

Com pat ibilit y Mode Exercise v5.1 971

St ep 1: Import Compat ibilit y Mode Project 971

St ep 2: Updat e t he Project t o Maest ro 5.1 972

Ext ra Help 972

Import project 972

Change Release Version 973

Creat e a N ew Form Exercise v5.1 975

St ep 1: Creat e a New Form 975

St ep 2: Add Component s t o Page One 975

St ep 3: Add Component s t o Page Two 977

St ep 4: Save t he Form 978

Ext ra Help 978

Component Propert ies 978

Radio But t on and Dropdown Opt ions 980

- 63 -
Arrangement of Radio But t on Opt ions 981

Creat ing Rules Exercise v5.1 983

St ep 1 Creat e a New Form 983

St ep 2 Add Component s t o Page One 983

St ep 3 Add a Rule t o Billing Address 984

St ep 4 Add a Rule t o t he Checkbox 985

St ep 5 Add Component s wit h a Mandat ory If Rule 985

Ext ra Help 986

Creat e an Edit able If Rule 986

Creat e a Change Rule 987

Creat e a Mandat ory If Rule 988

Creat ing Shared Com ponent s Exercise v5.1 990

St ep 1 Open Creat e Component Begin 990

St ep 2 Set up a Repeat ing Block and Add Component s 990

St ep 3 Creat e Visibilit y Rule 991

St ep 4 Wrap in block 991

St ep 5 Creat e a Shared Component 993

St ep 6 Edit a Shared Component 994

St ep 7 Publish Updat ed Component 995

Ext ra Help 996

Using a Repeat ing Block Templat e 996

Creat e a Show if Rule 997

Wrap Component s in a Block 999

Creat e Shared Component 1001

- 64 -
Layout Exercise v5.1 1004

St ep 1: Open t he Exist ing Form Layout Begin. 1004

St ep 2: Adjust t he Layout of Tit le, First Name and Last Name 1004

St ep 3: Adjust t he Employment Det ails Component s 1005

St ep 4: Adjust t he Living Expenses Component s 1005

St ep 5: Add a New Component t o t he Living Expenses Sect ion 1006

Ext ra Help 1006

Change t he layout of component s 1006

Change t he posit ion of component s (using Offset ) 1007

Add a Currency Field 1008

Pages and Sect ions Exercise v5.1 1010

St ep 1: Creat e a New Version 1010

St ep 2: Updat e t he Names of t he Exist ing Pages and Sect ions 1010

St ep 3: Add a new sect ion t o t he Applicant Det ails page 1011

St ep 4: Add a New Page wit h a Sect ion 1011

St ep 5: Rearrange t he Component s 1012

St ep 6: Build t he TM Form Version 1013

Ext ra Help 1013

Add a new page 1013

Add a new sect ion 1014

Addit ional Text 1015

Rearrange Component s 1015

Repeat ing and Shared Com ponent s Exercise v5.1 1018

St ep 1 Open t he Exist ing Form ‘Repeat ing and Shared Component s Begin’ 1018

- 65 -
St ep 2 Add a New Page wit h Sect ions t o Your Form 1018

St ep 3 Add Component s t o t he Page 1019

St ep 4 Add a Shared Component 1020

Ext ra Help 1021

Add a new Page and Sect ion 1021

Using a Repeat ing Block Templat e 1021

Using a Shared Component 1023

Rules wit hout Script ing Exercise v5.1 1025

St ep 1 Open t he exist ing form Rules wit hout Script ing Begin. 1025

St ep 2 Creat e a Rule for Income Det ails 1025

St ep 3 Calculat e t he Tot al of t he Four Expenses in t he Expense Det ails Sect ion 1025

St ep 4 Add t he Driver License Component s t o t he Your Det ails Sect ion. 1026

St ep 5 Creat e a Rule for Driver License 1026

Ext ra Help 1027

Creat e a Show If Rule 1027

Creat e a Script Rule 1029

Wrap Component s in a Block 1030

Two Level N avigat ion Exercise v5.1 1033

St ep 1 Open Two-Level Navigat ion Begin 1033

St ep 2 Add Page Groups t o t he Form 1033

St ep 3: Rename Pages 1034

St ep 4 Set Second Level Navigat or t o Equal Widt h 1034

Ext ra Help 1034

Using a Page Group 1035

- 66 -
Set t he Second Level Navigat or t o equal widt hs 1035

Validat ion Rules Exercise v5.1 1038

St ep 1 Open Validat ion Rules Begin 1038

St ep 2 Creat e a Valid If Rule 1038

St ep 3 Creat e a Regular Expression Validat ion Rule 1039

Ext ra Help 1040

Creat e a Valid if rule 1040

Creat e a Regular Expression rule 1041

eLearning Exercises for Maest ro v5.0 1043

Pre-requisit e 1043

1043

eLearning Exercises for Maest ro v5.0 1043

Help 1043

Exercise Set up - Im port ing t he Maest ro v5.0 Exercise Files 1045

St ep 1 Ident ify t he Training Environment 1045

St ep 2 Download t he Exercise Project 1045

St ep 3 Import t he Exercise Project 1045

Result 1046

Opt ional St ep 4 Import ing Legacy Project s 1046

Calculat ion Rules Exercise v5.0 1047

1047

St ep 1 Creat e a New Form 1047

St ep 2 Add Component s t o Page One 1047

St ep 3 Populat e a Component Based on Ent ered Dat a 1048

- 67 -
St ep 4 Add Show if Rules 1049

St ep 5 Change t he Clear Hidden Dat a Opt ion 1049

St ep 6 Add an Order Det ails Sect ion t o t he Form 1049

St ep 7 Add a Calculat ion Rule t o t he It em Tot al 1050

St ep 8: Add a Calculat ion Rule t o t he Sub-Tot al Component 1050

St ep 9: Add a Calculat ion Rule t o t he Tot al Due Component 1051

Ext ra Help 1051

Creat e a Show If Rule 1051

Combine ent ered dat a int o a component 1053

Clear Hidden Dat a Immediat ely 1053

Creat e a Mat hemat ical Calculat ion Rule 1054

Creat e a Calculat ion Rule for Repeat ed It ems 1054

Creat e a N ew Form Exercise v5.0 1056

St ep 1 Creat e a New Form 1056

St ep 2 Add Component s t o Page One 1056

St ep 3 Add Component s t o Page Two 1058

St ep 4 Save t he Form 1059

Ext ra Help 1059

Component Propert ies 1059

Radio But t on and Dropdown Opt ions 1061

Arrangement of Radio But t on Opt ions 1062

Creat ing Rules Exercise v5.0 1064

St ep 1 Creat e a New Form 1064

St ep 2 Add Component s t o Page One 1064

- 68 -
St ep 3 Add a Rule t o Billing Address 1065

St ep 4 Add a Rule t o t he Checkbox 1066

St ep 5 Add Component s wit h a Mandat ory If Rule 1066

Ext ra Help 1067

Creat e an Edit able If Rule 1067

Creat e a Change Rule 1068

Creat e a Mandat ory If Rule 1069

Creat ing Shared Com ponent s Exercise v5.0 1071

St ep 1 Open Creat e Component Begin 1071

St ep 2 Set up a Repeat ing Block and Add Component s 1071

St ep 3 Creat e Visibilit y Rule 1072

St ep 4 Wrap in block 1072

St ep 5 Creat e a Shared Component 1074

St ep 6 Edit a Shared Component 1075

St ep 7 Publish Updat ed Component 1076

Ext ra Help 1077

Using a Repeat ing Block Templat e 1077

Creat e a Show if Rule 1078

Wrap Component s in a Block 1080

Creat e Shared Component 1082

Layout Exercise v5.0 1085

St ep 1: Open t he Exist ing Form Layout Begin. 1085

St ep 2: Adjust t he Layout of Tit le, First Name and Last Name 1085

St ep 3: Adjust t he Income Det ails Component s 1086

- 69 -
St ep 4: Adjust t he Expenses Det ails Component s 1086

St ep 5: Add a New Component t o t he Expense Det ails Sect ion 1087

Ext ra Help 1087

Change t he layout of component s 1087

Change t he posit ion of component s (using Offset ) 1088

Add a Currency Field 1089

Pages and Sect ions Exercise v5.0 1090

St ep 1 Creat e a New Version 1090

St ep 2 Updat e t he Names of t he Exist ing Pages and Sect ions 1090

St ep 3 Add a new sect ion t o t he Applicant Det ails page 1091

St ep 4 Add a New Page wit h Two Sect ions 1091

St ep 5 Rearrange t he Component s 1092

St ep 6 Publish t he Form 1094

Ext ra Help 1094

Add a new page 1094

Add a new sect ion 1095

Addit ional Text 1096

Rearrange Component s 1096

Repeat ing and Shared Com ponent s Exercise v5.0 1099

St ep 1 Open t he Exist ing Form ‘Repeat ing and Shared Component s Begin’ 1099

St ep 2 Add a New Page wit h Sect ions t o Your Form 1099

St ep 3 Add Component s t o t he Page 1100

St ep 4 Add a Shared Component 1101

Ext ra Help 1102

- 70 -
Add a new Page and Sect ion 1102

Using a Repeat ing Block Templat e 1102

Using a Shared Component 1104

Rules wit hout Script ing Exercise v5.0 1106

St ep 1 Open t he exist ing form Rules wit hout Script ing Begin. 1106

St ep 2 Creat e a Rule for Income Det ails 1106

St ep 3 Calculat e t he Tot al of t he Four Expenses in t he Expense Det ails Sect ion 1106

St ep 4 Add t he Driver License Component s t o t he Your Det ails Sect ion. 1107

St ep 5 Creat e a Rule for Driver License 1107

Ext ra Help 1108

Creat e a Show If Rule 1108

Creat e a Script Rule 1110

Wrap Component s in a Block 1111

Two Level N avigat ion Exercise v5.0 1114

St ep 1 Open Two-Level Navigat ion Begin 1114

St ep 2 Add Page Groups t o t he Form 1114

St ep 3: Rename Pages 1115

St ep 4 Set Second Level Navigat or t o Equal Widt h 1115

Ext ra Help 1115

Using a Page Group 1116

Set t he Second Level Navigat or t o equal widt hs 1116

Validat ion Rules Exercise v5.0 1119

St ep 1 Open Validat ion Rules Begin 1119

St ep 2 Creat e a Valid If Rule 1119

- 71 -
St ep 3 Creat e a Regular Expression Validat ion Rule 1120

Ext ra Help 1121

Creat e a Valid if rule 1121

Creat e a Regular Expression rule 1122

Exercise_AssignEnt it yMult ipleIt em s 1124

Exercise_Creat eEnt it y_Ent it yPanel 1126

Exercise_Creat eEnt it y_IDfield 1128

Exercise_Delet eEnt it y 1131

Exercise_Duplicat eIDs 1132

Exercise_IDManagem ent 1134

Exercise_Im pact Analysis 1135

Exercise_Sem ant icVersioning 1137

Exercise_UpgradeProject 1140

Exercise - Assign an Ent it y t o m ult iple it em s 1141

Exercise - Creat e an Ent it y (Ent it y panel)_2 1143

Exercise - Creat e an Ent it y (ID field) 1145

Exercise - Delet e an Ent it y 1148

Exercise - Duplicat e IDs_3 1149

Exercise - ID Managem ent _2 1151

Exercise - Im pact Analysis_2 1152

Exercise - Sem ant ic Versioning 1154

Exercise - Upgrade a project _2 1157

Glossary 1158

- 72 -
Welcome to the Temenos Journey Platform Documentation!
Journey Platform | All Personas | 5.1 & Higher

We are here t o help you st art using our document at ion websit e in t he most efficient way so you can quickly and
easily find t he wealt h of informat ion on all our Temenos Journey platform product s. We have writ t en our doc-
ument at ion in an int uit ive way, but it 's wort h a few minut es of your t ime t o become familiar wit h t he doc-
ument at ion layout and import ant feat ures of t he websit e, such as:

l Search
l TOC
l Quick Menu
l Navigation Bar

Topics
We use t opics1 t o writ e and organize our document at ion. Each t opic is a self-cont ained art icle describing a par-
t icular concept or a procedure t hat can st and on it s own and give enough informat ion t o a reader as well as
provide links t o anot her relat ed t opic t o provide a learning pat h. A t opic is designed t o minimize repet it ion across
pages and ensure t here's a single source of t rut h for every concept and feat ure.

Badges
Every t opic begins wit h a t it le t hat let s you know what you're looking at . Links bet ween t opics let you jump st raight
t o relat ed cont ent . Most t opics include a row of badges, locat ed above t he cont ent , t hat provide informat ion
about t he t opic, including:

l Product t he t opic relat es t o. Usually a t opic describes one product , but somet imes it can cover several, for
example, Manager and Maest ro.
l Persona t he t opic is relevant for. It helps ident ify reading audience and creat e various learning pat hs.
l Product version t he t opic is compat ible wit h and whet her a feat ure described in t his t opic was creat ed,
updat ed or removed.

For example, t he t opic below - t he Maestro Libraries Overview - relat es t o t he Maestro product , is relevant for
Form Builders, and has been updat ed wit h cont ent for Maest ro v18.05.

1Topic-based aut horing is a modular approach t o cont ent creat ion where cont ent is st ruct ured around t opics t hat

can be mixed and reused in different cont ext s.

Welcome t o t he Temenos Journey Plat form Document at ion! - 73 -


We cont inuously add, updat e and enhance it s cont ent , so t here is more for you t o read and search. To make it
easier for you t o navigat e our cont ent , we have t ailored it t o cert ain personas relat ed t o how you use t he Journey
plat form. Read understanding personas t o find out what your Journey persona is.

Version agnost ic cont ent


This document at ion covers all Journey plat form products including t heir different versions. We have writ t en it in
such a way t o make it version agnost ic, meaning all users have access t o t he same cont ent regardless of t he
product version t hey use. When t here is a product or feat ure difference bet ween versions, it is not ed wit hin t he
document at ion. This allows t he number of versions of each t opic t o be minimized, which reduces duplicat ion of
cont ent t hat doesn't change from one version t o t he next , and makes it easier for you t o find what you need. The
t opic layout is designed t o make it clear which product versions t he t opic relat es t o. Each t opic has a version badge
ident ifying t he product versions in which t he t opic was most recent ly updat ed. For example, t he M aest ro Librar-
ies Overview t opic above was updat ed for Maest ro v18.05.

Our document at ion is int ended t o describe t he most recent version of t he Journey plat form. Any version-specific
cont ent prior t o t he most recent version will be ident ified eit her at t he t opic level, using badges as described above,
or inline.

Copy URL but t on

Each t opic has t he Copy Url but t on t hat allows you t o copy t he t opic's Url, so you can share t he page via
social net works or email.

Documentation Navigation Options


Search
We believe t hat searching our document at ion is t he fast est and most flexible way t o navigat e it s cont ent t o find
what you need. When you open our home page, t he search is right t here and ready t o go.

Welcome t o t he Temenos Journey Plat form Document at ion! - 74 -


Click in t he Search but t on and st art t yping what you're looking for, for example, maest ro overview. As you t ype,
t he search will list t he mat ching result s, so you can st op when you see t he mat ch and click t he link t o read a t opic.

Each search mat ch displays a t opic t it le, a paragraph where t he search keyword or phrase is found, and t he URL of
t he t opic.

It 's common t hat t he search ret urns many pages of result s, so you need t o scroll t hrough t he page t o look for t he
exact mat ch and use t he paginat ion at t he bot t om of t he search window t o go t o t he next page. For example, click
2 t o go t o t he second page of t he search result s.

Welcome t o t he Temenos Journey Plat form Document at ion! - 75 -


Search filt ers
The search out put can be overwhelming at t imes, especially if you're not sure what you're looking for. In t his case,
you can narrow t he search result by select ing one or several filt ers from t he Filt ers box. Filt ers represent our
product s. For example, you should click t he M aest ro filt er t o show only art icles relat ed t o Journey Maestro
product .

Every page of our document at ion has a search bar in t he t op right corner, so you are never far away from it . Type
your search query in t he box or select one from t he previous searches and press Ent er.

If you can't find what you're looking for in our document at ion, click Resources (t op-right corner) t o cont inue
searching t here. The resources search works similarly t o t he document at ion search, and you can filt er it s result s as
well.

Google Search
You can also search our Journey Plat form document at ion st raight from Google! Google indexes t he doc-
s.avoka.com websit e every now and t hen, so all you need t o do is t o run a query like t his sit e:docs.avoka.com
"what ever you are looking for" from your browser. You can do t he same for t he resources websit e.

Navigation Bar
There are a number of ways t hat you can find t he informat ion you need - you can use t he document at ion search,
view one of t he persona or feat ure user pat hs, or browse t he t able of cont ent s.

At t he t op of t he page, t he N avigat ion Bar provides quick access t o t he most relevant t opics of t he select ed part
of t he document at ion. The Navigat ion Bar is accessible from any t opic you're reading, so you can use it as a short -
cut t o anot her part of t he document at ion. For example, click Overview t o open t he Temenos Journey Plat -
form Overview t opic.

Quick Menu

Welcome t o t he Temenos Journey Plat form Document at ion! - 76 -


On t he left side of t he page, t he Quick M enu provides direct access t o each product sect ion.

Table of Contents

Welcome t o t he Temenos Journey Plat form Document at ion! - 77 -


On t he left side of t he page, t he t able of cont ent s shows where you're at in relat ion t o ot her t opics in t hat product
sect ion. You can expand or collapse each sect ion of t he t able of cont ent s t o cont rol what 's displayed.

Resources
The foot er on every page has useful links t o our resources, support and social media.

Feedback
Every t opic has a Feedback t ile wit h a link t o Cont act Us via email. Use t his t o provide your feedback if any improve-
ment s or fixes are required.

Welcome t o t he Temenos Journey Plat form Document at ion! - 78 -


What's Next?
Now, we would like t o invit e you t o learn about cust omer journeys you can creat e wit h our Journey plat form. Read
Temenos Journey platform overview t o get you st art ed!

Welcome t o t he Temenos Journey Plat form Document at ion! - 79 -


Temenos Journey Platform Overview
Journey Platform

The Temenos Journey plat form is a syst em of engagement 1 t hat enables banks t o creat e a seamless orches-
t rat ion bet ween t he acquisit ion of cust omer dat a and t he back-end syst em of record2. It lives in bet ween your
cust omer acquisit ion channels and your back-end syst ems, usually alongside your exist ing web CMS plat form. This
allows t he Journey plat form t o maint ain t he loose coupling bet ween t he cust omer channels coming in from mul-
t iple sources, and t he back-end syst ems wit hout needing major archit ect ural changes t o t he exist ing infra-
st ruct ure.

The Journey plat form solves t he following key archit ect ural challenges in building omnichannel3 cust omer acquis-
it ion and onboarding4 syst ems:

l Int eroperabilit y wit h exist ing syst ems of record.


l Int eroperabilit y wit h 3rd part y syst ems for act ions like ID verificat ion, risk scoring, and fraud det ect ion.
l Creat ion and maint enance of funct ionalit y common t o any acquisit ion process, such as securit y, scalabilit y,
save & resume, receipt generat ion, at t achment s, and bundling of mult iple forms.
l Behavioral Analyt ics for measurement and cont inuous improvement of t he CX5.

The Journey plat form support s all t he key facet s of t he cust omer acquisit ion process, by providing feat ures t o t he
front -end channels as funct ions, and simplifying t he omnichannel experience for t he end consumer. It delivers t he
abilit y t o maint ain a loose coupling of t he st at e, user dat a, and input act ions of t he consumer t o t he back-end sys-
t em, which allows rapid deployment of cust omer init iat ives wit hout complex and cost ly changes t o exist ing sys-
t ems.

1Syst ems of Engagement (SoE) is t he t echnology used by an organizat ion t o help facilit at e and orchest rat e t he cus-

t omer journey via more personalized, seamless int eract ions across t he various t ouchpoint s. These include social
media channels, email market ing plat forms, mobile apps, and cont ent management syst ems.
2Syst em of Record (SOR) is an ISRS (informat ion st orage and ret rieval syst em) t hat is t he aut horit at ive source for a

part icular dat a element in a syst em cont aining mult iple sources of t he same element . To ensure dat a int egrit y,
t here must be one -- and only one -- syst em of record for a given piece of informat ion.
3Omnichannel is a service delivery model t hat int egrat es different int eract ion point s for cust omers such as online,

by phone or in st ore. Omnichannel Banking offers banking access across t hese t hree met hods.
4The st eps required t o get a new cust omer int egrat ed int o a new program. These st eps may vary business t o busi-

ness.
5Cust omer Experience (CX) is an aggregat e of a cust omer’s A-Z experience wit h a brand. It is not a snapshot in

t ime, such as a key t ouchpoint or a crit ical int eract ion.

Temenos Journey Plat form Overview - 80 -


The Journey plat form act s as a PaaS1, providing a service plat form on which banks can deploy t heir web applic-
at ions. Inside t he plat form, t here are mult iple services t hat run independent ly of one anot her maint aining t he plat -
form funct ionalit y, such as securit y, front -end services, management , and report ing and operat ional monit oring.
These services can be independent ly scaled and adjust ed t o fit t he need of t he cust omer’s applicat ions. The PaaS
archit ect ure allows rapid and simple deployment and scaling of services needed t o deliver complex user experience
orchest rat ions.

The example of a deposit account opening applicat ion built on t he Journey plat form is shown below:

1Plat form as a Service (PaaS) is a cat egory of cloud comput ing services t hat provides a plat form allowing cust omers

t o develop, run, and manage applicat ions wit hout t he complexit y of building and maint aining t he infrast ruct ure
t ypically associat ed wit h developing and launching an app.

Temenos Journey Plat form Overview - 81 -


The Journey plat form is most ly deployed as a cloud-based syst em and configured as a privat e secure environment
for each bank. End users engage in t he cust omer acquisit ion journey t hrough t he Journey plat form’s servers and
applicat ion dat a is exchanged t o and from bank syst ems of record via API services. The Journey plat form con-
figurat ion on t he cloud provides for t he highest levels of securit y, reliabilit y, scalabilit y and dat a int egrit y. We sup-
port bot h AWS and Azure clouds, as shown below.

AWS Cloud Deploym ent

Temenos Journey Plat form Overview - 82 -


Azure Cloud Deploym ent

Int eract ing wit h t he Journey plat form PaaS is made simple t hrough t he abilit y t o make API calls from t he front -end
framework of choice, meaning t hat t he complexit y of building mult iple plat form services is reduced t o a set of
st andard REST API calls. This allows t he bank development t eam t o dict at e t he t erms of engagement wit h t he plat -
form, choosing t o eit her leverage in-house skills t o build experiences or using our t ools for building cust omer int er-
act ion workflows, saving t ime and expense against having t o build t he ent ire set of services from scrat ch.

Products
The Journey plat form incorporat es t he following product s, also known as modules, t o design, manage, and opt im-
ize t he cust omer experience across channels wit hout impact ing back-end syst ems:

Journey Maestro is t he HTM L5 1, design environment t hat allows business t eams t o build sophist icat ed and eleg-
ant web form applicat ions.

Journey Manager is t he ent erprise management syst em t hat host s t he web form applicat ions and enables soph-
ist icat ed cust omer int eract ion and 3rd party system integration bet ween form transactions and back-end busi-
ness processes.

Journey Exchange is a cat alog of pre-int egrat ed FinTech applicat ions t o ext end t he power of t he Journey Plat form.
These t hird part y int egrat ion packages are made available t o our Journey Plat form cust omers for use in t heir
online cust omer applicat ions.

1Maest ro forms are fundament ally built using HTML 5. The st ruct ure of t he form and t he t ext displayed in t he

form are all configured and est ablished using HTML5. HTML is t he st andard markup language for creat ing Web
pages and st ands for Hypert ext Markup Language. HTML 5 describes t he st ruct ure of a Maest ro form.

Temenos Journey Plat form Overview - 83 -


Journey Workspaces is an int egral module of t he Temenos Journey Plat form t hat enables your organizat ion t o
improve your cust omers' experience wit h onboarding assist ance, rapid resolut ion, and communicat ion of pro-
gress, regardless of t he channel t hey are applying from. Out of t he box, Workspaces includes t he feat ures you
need t o accomplish your business object ives.

Journey Analytics capt ures cust omer behavior t o drive det ailed form t ransact ion analyt ics on how t o reduce fric-
t ion and abandonment wit hin t he web form applicat ions. It allows you t o wat ch t ransact ion progress and monit or
complet ion rat es, bounce rat es, and submission volume for different devices and forms. You can t est new ideas
wit h t he st andard Form A/B Testing in Manager or t he more granular met rics wit h Custom Reports in Journey Ana-
lyt ics t o inst ant ly monit or result s. Then when changes are needed, adjust ment s are dat a-driven similar t o a web
cont ent manager, no coding changes required. This allows rapid deployment in a few clicks, no need for wait ing on
t est and release cycles.

All our product s are designed and built t o be easily int egrat ed wit h each ot her. The t ypical set up is shown below.

You can also int egrat e Manager wit h Salesforce using our API or use Open UX t o design and creat e forms using
your favorit e IDE.

As you can see, t he Temenos Journey Plat form is based on various archit ect ural and design principals. Most of
t hese aspect s are not covered in t his overview art icle due t o it s complexit y and sensit ivit y.

Temenos Journey Plat form Overview - 84 -


Next , learn more about platform integration and platform development .

Temenos Journey Plat form Overview - 85 -


Cloud hosted Journey Platform VDC Editions
Journey Platform | All Personas | 5.1 & Higher

When it comes t o running our Temenos Journey platform , you have several opt ions wit h t he most popular being
t he Privat e Cloud Ent erprise Edit ion or Virt ual Dat a Cent re (VDC) 1, which is suit able for organizat ions wit h t he
highest requirement s for privacy and securit y. It is cloud based for maximum agilit y, and includes mult iple servers
t o ensure high availabilit y. It uses a privat e inst ance of t he Amazon RDS dat abase server t hat is not shared wit h any
ot her organizat ions. It also offers hybrid cloud opt ions for maximum flexibilit y in st orage of Personal Iden-
t ifiable Informat ion 2, and SalesForce 3 int egrat ion.

You can choose bet ween t he VDC and VDC+ Edit ion, depending on your requirement s. To help you decide which
edit ion works best for you, we have list ed specific feat ures of each VDC edit ion below.

VDC+ Edi-
Features VDC Edition
tion

Redundancy & Availability

High Availabilit y 4 Application Servers (Multi-AZ) (Traffic load bal-


anced across application servers in separate data centers)
Transact Application Server Nodes (Production) 2+2 = 2x /manager
4+ (HA)
(admin) portal nodes + 2x /workspace portal nodes HA = High Avail- 4+ (HA) (2+2)
(2+2)
ability (nodes deployed into separate AWS AZs)
High Availability RDS Database Server Replicated across separate
data centers (Multi AZ)
Non-production environments (test, UAT, etc) included 3 3
Production - Service Level Availability Target (monthly) 99.9% 99.9%
Number of countries supported (ie tenants) (You can't use TM ORGs
1 1
to segregate country solutions, or deploy additional instances)
Extra countries/tenants available (POA - price on application) (In
standard/enterprise edition, you need to buy a new edition for an
extra country)
RDBMS Aurora Aurora

Backup & Recovery

1Virt ual Dat a Cent re (VDC) is an aut omat ed and scalable Infrast ruct ure as a Service (IaaS) cloud plat form providing

comput e, net work and st orage.


2Personally Ident ifiable Informat ion (PII) is informat ion about an individual t hat can be used t o dist inguish or t race

an individual‘s ident it y, such as name, social securit y number, dat e and place of birt h, mot her‘s maiden name, or
biomet ric records; and any ot her informat ion t hat is linked t o an individual. In Europe, PII is known as personal
dat a.
3Salesforce is t he cust omer relat ionship management (CRM) plat form.
4High availabilit y (HA) is a charact erist ic of a syst em which aims t o ensure an agreed level of operat ional per-

formance, usually upt ime, for a higher t han normal period.

Cloud host ed Journey Plat form VDC Edit ions - 86 -


Database Backup Frequency Continuous Continuous
~5
Backup Frequency (RPO 1) ~ 5 minutes
minutes
Database Recovery Time (RTO 2) 4 hours 4 hours

Security

Customer Virtual Private Cloud (Solution installed in customer-spe-


cific AWS VPC with private subnets)
Data Sovereignty - All data resides in same geographic region.
Regions are US (Oregon) EU (Ireland) Asia Pacific (Sydney) Other AWS
Regions available as required
Strong AES 256-bit data encryption for data in transit and at rest
Separate security subnets for production and non-production envir-
onments
IP White-listing
Automatic updates for o/s & security vulnerability patches
Anti-virus scanning
Dedicated RDS Database Server in same Virtual Private Cloud
Separate administration and end user portal servers
Amazon
Encryption Data Key Management Amazon KMS
KMS
Internal vulnerability scanning – Continuous (Qualys Cloud Agent)
External vulnerability scanning - Monthly (Qualys WAS scan)
Third-party penetration testing - Annually ---
Available
Akamai - for WAF and CDN Available (POA)
(POA)

Network Connectivity Features

AWS VPC Peering (Connect 2 AWS accounts; no service cost - AWS


Available Available
Doc)
AWS Direct Connect (Connect AWS to on premise; service cost not
Available Available
included - AWS Doc)
Available
AWS VPN Site to Site Available (POA)
(POA)

Advanced Security Features

Web Application Firewall (WAF) Apache ModSe- Sophos

1Recovery point object ive (RPO) is t he age of files t hat must be recovered from backup st orage for normal oper-

at ions t o resume if a comput er, syst em, or net work goes down as a result of a hardware, program, or com-
municat ions failure.
2Recovery Time Object ive (RTO) is t he t arget ed durat ion of t ime and a service level wit hin which a business process

must be rest ored aft er a disast er (or disrupt ion) in order t o avoid unaccept able consequences associat ed wit h a
break in business cont inuit y.

Cloud host ed Journey Plat form VDC Edit ions - 87 -


curity (fixed cus-
UTM
tomized rules)
AWS Shield Stand-
Network Protection (Deep packet inspection, Flood protection, DoS, Sophos
ard (no DPI and
DDoS and port scan blocking, Country blocking) UTM
Country blocking)
Sophos
Advanced Threat Protection --- UTM
SandStorm
Sophos
Outbound Proxy (whitelist) Squid
UTM

Security Extras

AWS Dedicated Instances (dedicated hardware for application serv-


Available (POA)
ers - AWS Doc)
Additional IPS / UTM (Sophos Unified Threat Management) layer
Available (POA)
(AWS Doc)

Platform Issue - Response Times – Production

Level 1 30 mins 30 mins


Level 2 1 hour 1 hour
Level 3 2 hours 2 hours
1 business
Level 4 1 business day
day

Platform Issue - Resolution Times – Production

Level 1 2 hours 2 hours


Level 2 4 hours 4 hours

If you have any furt her quest ions or you need more informat ion including pricing, cont act your Cust omer Success
Manager.

Next , learn about t he Journey platform system requirements.

Cloud host ed Journey Plat form VDC Edit ions - 88 -


Introduction to Organizations
Journey Platform

An organizat ion is a concept wit hin t he Journey platform t hat allows you t o represent your business such as a com-
pany, a depart ment , a branch wit hin t he company, a government organizat ion, or a product . For example, if a cli-
ent bank uses credit card applicat ion process, you can creat e a corresponding st ruct ure in Journey Manager, as
illust rat ed below.

You can use organizat ions t o:

l Creat e a well-defined st ruct ure of your asset s (forms and PDF receipts) and resources (libraries and tem-
plates) wit hin an organizat ion, manage and migrate t hem across different environments t o speed up form
development life cycle.
l Have different core module configurat ion on t he organization , system , form, and project levels t o allow you
t o change t he way forms appear and operat e.
l Inst all new modules int o your organizat ion t o integrate wit h ot her ext ernal syst ems.

l Provide secure users access t o t he resources wit hin t he organizat ion and assign t hem different roles t o per-
form cert ain act ivit ies.
l Encapsulat e development and t est ing of forms relevant t o your organizat ion.
l Focus on monitoring, collect ing and analyzing only your organizat ion's runt ime dat a t o guarant ee and
improve forms user journey.

Int roduct ion t o Organizat ions - 89 -


Every Journey plat form's core module uses t he concept of organizat ions, but in slight ly different ways. The brief
summary is shown below wit h t he links t o det ailed informat ion for each module:

l Manager organizations own forms and t heir asset s.

l Maest ro organizations hold project s, widget s and libraries.

l Exchange uses organizat ions t o allow you t o inst all modules only t here.
l Journey Analytics uses organizat ions t o cont rol which form st at ist ics users can view.

Next , learn about Manager .

Int roduct ion t o Organizat ions - 90 -


Journey Executive Reading Path
Journey Platform | Executive

As an executive, you have lit t le t o no free t ime t o grasp a new concept or underst and a new product , so we have
short -list ed t opics you need t o check t o get t o know our Temenos Journey plat form and it s product s.

First of all, t his is all about cust omer onboarding1, creat ing easy and smoot h cust omer journeys, helping t hem t o
sign up for product s t hey want t o. This is not an easy t ask, but we have expert ise and t he Temenos Journey plat-
form t o make it happen. Our plat form enables you t o creat e and manager t hese cust omer onboarding journeys
where each journey is a single dynamic HTML form or a form bundle t hat navigat e cust omers t hrough each
onboarding workflow. You can t hink of our plat form as a fast and reliable framework t o build, implement and
deploy t hese forms and workflows.

The Journey plat form is a suit e of core product s working t oget her t o enable cust omer onboarding journeys. Jour-
ney Manager is t he most import ant product and t he heart of t he plat form. It 's a complex applicat ion web server,
writ t en in Java 2 and Groovy 3 and deployed on a cloud or on-premise, t hat runs all ot her product s, modules and
bespoke solut ions. Of course, it 's not all t hat Journey Manager does - it has many ot her great features, such as
form user dat a prefill, save and resume, and receipt generating t o name a few.

The next product is Journey Maestro . It allows you t o design, build and deploy applicat ion forms using t he lat est
JavaScript 4 t echnologies.

Then, we have Journey Analytics t hat gives you a powerful t ool t o analyze cust omer journey experiences, so you
can adjust your forms and business logic t o cont inuously improve user experience and reduce t he user aban-
donment .

The list wouldn't be complet e wit hout Transact Exchange, which provides a wealt h of 3rd part y FinTech 5 services,
so you can easily plug t hem int o your solut ions using Groovy 6 script s.

1The st eps required t o get a new cust omer int egrat ed int o a new program. These st eps may vary business t o busi-

ness.
2Java is a programming language t hat produces soft ware for mult iple plat forms. When a programmer writ es a Java

applicat ion, t he compiled code (known as byt ecode) runs on most operat ing syst ems (OS), including Windows,
Linux and Mac OS. Java derives much of it s synt ax from t he C and C++ programming languages.
3Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.
4Javascript (JS) is a script ing languages, primarily used on t he Web. It is used t o enhance HTML pages and is com-

monly found embedded in HTML code. JavaScript is an int erpret ed language. Thus, it doesn't need t o be compiled.
5Financial Technology, also known as FinTech, is a new indust ry t hat uses new t echnology and innovat ion t o

improve act ivit ies in finance. It aims t o compet e wit h t radit ional financial met hods in t he delivery of financial ser-
vices t o cust omers by improving cust omer experience, reducing t ime-t o-market , decreasing cost t o ment ion a few.
6Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.

Journey Execut ive Reading Pat h - 91 -


To make your life easier, we have developed Journey Workspaces, which is t he user-friendly, feat ure-rich business
port al for managing applicat ion forms and workflows. We've purposely developed t he collaboration jobs frame-
work t o help you build and manage complex workflows wit hout t he need t o use Business Process M odeling1
t ools.

And, of course, t here's Journey Springboard, t he out of t he box Deposit Account Opening (DAO) applicat ion for t he
US market , which you can use as t he best pract ice t o implement your own cust om solut ions.

Now, t his was t he brief int roduct ion on our plat form. We hope you've clicked a few links above, so you got some
good insight s. We underst and it may be overwhelming at first , but don't worry, you can use our documentation
search and the table of contents t o find out more about each product and how t hey may benefit you.

Next , learn more about t he starter path .

1Business Process Modeling Not at ion (BPMN) is a met hod of illust rat ing business processes in t he form of a dia-

gram similar t o a flowchart .

Journey Execut ive Reading Pat h - 92 -


Journey Starter Reading Path
Journey Platform | Starter

As a starter , you want t o underst and quickly a few key concept s about our Temenos Journey platform and it s
product s, so you can st art using t hem.

Our plat form is rich in funct ionalit y and t herefore complex, so it t akes some t ime t o get your head around it . We
recommend you begin wit h t he executive path first , as you only need t o read a handful of art icles and underst and
a few key t hings.

The first product t o learn about is Journey Manager , because it 's t he most import ant product t hat ot her product s
ut ilize. Journey Manager has t o be installed and configured before you can st art using it . You can inst all t he
product yourself, or ask your IT depart ment t o do it for you. However, Journey Manager is oft en inst alled and run
on a cloud, so you only need t o log in using credentials provided t o you.

Your Journey Manager experience st art s wit h t he home dashboard . It is abundant wit h useful system information ,
recent forms and services, and t ransact ion hist ory, so it may be t ricky t o decide where t o go next . We suggest you
look at organizations, as t his is t he first building block you need t o create and configure before you can deploy any
forms. Then, check what form spaces are and whet her you have permissions t o access t hem. Form spaces host
forms and cont rol user accessibilit y using groups and roles. Manager comes wit h t he advanced SSO 1 securit y con-
figurat ion, including LDAP2 and ADFS3 t o name a few, and you need t o be quit e familiar wit h t hese t echnologies
t o set it up.

One of t he best features of Journey Manager is Groovy services, which you can use as t hey are or writ e your own.
This gives you unbounded possibilit ies t o implement various solut ions, but yet you have t o know how t o writ e
Groovy 4 script s. We recommend you check Transact Fluent SDK overview and benefits of using Groovy before
you dive int o writ ing your own st uff. It 's wort h looking at t he standard services, as t hey may already address your
needs, plus t hey are professionally writ t en and t horoughly t est ed. This is especially t he case for t he 3rd part y ser-
vice int egrat ion t hat is usually complex and t herefore t ime consuming part of application development . Luckily for
you, we have Transact Exchange t hat comes wit h dozens of packages you can easily inst all and use t o enhance you
FinTech 5 applicat ions.

1Single sign-on (SSO) is a propert y of access cont rol of mult iple relat ed, yet independent , soft ware syst ems. Wit h

t his propert y, a user logs in wit h a single ID and password t o gain access t o any of several relat ed syst ems.
2Light weight Direct ory Access Prot ocol (LDAP) s an open, vendor-neut ral, indust ry st andard applicat ion prot ocol

for accessing and maint aining dist ribut ed direct ory informat ion services over an Int ernet Prot ocol net work.
3Act ive Direct ory Federat ion Services.
4Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.
5Financial Technology, also known as FinTech, is a new indust ry t hat uses new t echnology and innovat ion t o

improve act ivit ies in finance. It aims t o compet e wit h t radit ional financial met hods in t he delivery of financial ser-
vices t o cust omers by improving cust omer experience, reducing t ime-t o-market , decreasing cost t o ment ion a few.

Journey St art er Reading Pat h - 93 -


Manager includes a powerful framework, t he collaboration jobs, for building onboarding workflows. This is a quit e
complex area and requires significant knowledge of our product s, but it 's wort h reading a few art icles t o under-
st and what you can possibly achieve wit h t his t ool.

Journey Manager is t he developer friendly product and comes wit h ext ensive logging and troubleshooting func-
t ionalit y, so you can debug your services and configurat ions t o t une and fix t hem. Addit ionally, it allows you t o cre-
at e your solut ion in a development environment and t hen propagat e it t o anot her environment and finally t o
product ion using our multi-environment support . Journey Manager also support s t he horizont al scaling, meaning
you can add server nodes t o cat er for your product ion needs and demands. We recommend running several
server nodes, wit h at least one dedicat ed node t o generat e and render receipts.

Journey Manager has a great deal of syst em configurat ion t hat is paramount t o keep t he product running. We
recommend st art ing wit h outgoing email service and data retention management . While Journey Manager is
designed t o sust ain high load of transactions, it requires some maint enance and operational support every now
and t hen and when an issue occurs. There's a lot t o learn here, so we suggest you st art wit h submission life cycle
and transaction details.

The next product you need t o underst and is Journey Maestro . It is ext remely rich in funct ionalit y and has user-
friendly int erface allowing you t o build sophist icat ed and elegant web form applicat ions based on modern tech-
nologies, such as HTM L5 1 and JavaScript 2. We recommend looking at forms and components first , t hen get your
head around libraries and entities, as t hese are enablers for best UX design principles and soft ware reuse. This con-
t ent is rat her complex and requires some knowledge of HTML, JavaScript and UX design. When you've mast ered
form creat ion, you can learn how t o build t hem in Maest ro and t hen deploy t hem t o Journey Manager, where t hey
will be run.

Our Journey plat form enables you t o apply SDLC3 t o t he process of building, t est ing and running your form applic-
at ions. Journey Analytics fulfills a very import ant role in t his development cycle, as it allows you t o analyze cus-
t omer journey experiences t hat are based on your forms. There's a lot of t heory behind how we collect , analyze
and present dat a, but we recommend you st art wit h t he product 's dashboard view and t hen follow t he links as
you read. If you're aft er a few simple report s and A/B testing caparisons, we suggest you look at Journey Manager's
analytics, which is a simplified version of Journey Analyt ics. Nevert heless, t his t ool gives you a good insight s on
transaction trends, such as complet ion and conversion rat es, form abandonment and bounce rat e, t hat are t he
key met rics for form improvement t o t ry t o make t he cust omer journey frict ionless.

1Maest ro forms are fundament ally built using HTML 5. The st ruct ure of t he form and t he t ext displayed in t he

form are all configured and est ablished using HTML5. HTML is t he st andard markup language for creat ing Web
pages and st ands for Hypert ext Markup Language. HTML 5 describes t he st ruct ure of a Maest ro form.
2Javascript (JS) is a script ing languages, primarily used on t he Web. It is used t o enhance HTML pages and is com-

monly found embedded in HTML code. JavaScript is an int erpret ed language. Thus, it doesn't need t o be compiled.
3Soft ware Development Life Cycle (SDLC) is a process used by t he soft ware indust ry t o design, develop and t est

high qualit y soft wares.

Journey St art er Reading Pat h - 94 -


As you can see, t here's a wealt h of informat ion generat ed during user int eract ion wit h forms. It 's ext remely difficult
t o manage it wit hout our Journey Workspaces module, which provides key feat ures for bank st aff t o provide great
cust omer service. We recommend st art ing wit h Workspaces UI Tour and Workspaces Core Concepts t o gain an
underst anding of Workspaces fundament als. One of our newest product s is Journey Springboard, t he out of t he
box Deposit Account Opening (DAO) applicat ion for t he US market , which enables banks t o rapidly deliver an out -
st anding digit al cust omer acquisit ion journey using a pre-built solut ion on an ext ensible plat form t hat grows wit h
t he bank. You can use it as a best pract ice, pre-built cust om solut ion t o get t o market fast er wit h acquisit ion jour-
neys. The Springboard DAO solves t he complex challenges of t he deposit account opening process, including com-
pliance and risk management requirement s. Through pre-int egrat ed connect ions t o proven FinTech providers,
Springboard DAO addresses t he crit ical issues of fraud screening, ID verificat ion, risk mit igat ion, dat a pre-fill, and
funding.

Now, while t his was more a det ailed int roduct ion on our product s and t he development pract ices we use, t here's
much more for you t o read and learn. You can always go t o our documentation search or navigate the table of con-
tents t o find out more about each product .

Next , learn about t he Platform Developer path .

Journey St art er Reading Pat h - 95 -


Journey M anager Overview
Journey Manager (JM) | System Manager / DevOps | 21.05

Journey Manager is t he heart of t he Journey platform . It is a syst em of engagement , purpose-built t o manage cus-
t omer onboarding1 and cust omer journeys, such as account opening and servicing.

Manager product izes t he t echnology needed for a best -in-class digit al sales experience in a pre-built plat form. This
experience enables financial and government inst it ut ions, large or small, t o creat e t heir user journeys wit hout hav-
ing t o engineer complex feat ures such as securit y, dat a capt ure, resiliency, convenience, and int egrat ion.

Manager is a complex soft ware syst em, consist ing of many int erconnect ed component s. It 's designed t o:

l Host applicat ion forms and associat ed resources, and provide cust omers wit h secure access t o t hem.

l Manage forms' transaction flow.

l Creat e highly configurable services t o implement t he desired cust omer experience 2.

l Enable integration wit h various FinTech 3 services and syst ems.

l Analyze act ual cust omer behavior t o cont inuously improve t he cust omer experience.

Manager provides t he following core capabilit ies:

1The st eps required t o get a new cust omer int egrat ed int o a new program. These st eps may vary business t o busi-

ness.
2Cust omer Experience (CX) is t he product of an int eract ion bet ween an organizat ion and a cust omer over t he dur-

at ion of t heir relat ionship. This int eract ion is made up of t hree part s: t he cust omer journey, t he brand t ouchpoint s
t he cust omer int eract s wit h, and t he environment s t he cust omer experiences (including digit al environment ) dur-
ing t heir experience. A good cust omer experience means t hat t he individual's experience during all point s of con-
t act mat ches t he individual's expect at ions.
3Financial Technology, also known as FinTech, is a new indust ry t hat uses new t echnology and innovat ion t o

improve act ivit ies in finance. It aims t o compet e wit h t radit ional financial met hods in t he delivery of financial ser-
vices t o cust omers by improving cust omer experience, reducing t ime-t o-market , decreasing cost t o ment ion a few.

Journey Manager Overview - 96 -


l Form host ing - mult iple forms can be host ed cent rally and be made accessible t o applicant s by embedding
links t o t he forms int o organizat ion's web pages or by using form search engines. You can also manage
forms and process submissions made by users.
l Data pre-population - users can quickly complet e forms t hat are pre-populat ed wit h t heir informat ion, which
comes from one or more user's profiles or organizat ion provided dat a ret rieved via web services or APIs.
l Receipts - users are provided wit h an elect ronic receipt t hat includes t he submit t ed form, payment and sub-
mission informat ion. Receipt s can be viewed online, emailed, or downloaded and t hen print ed.
l Payments - if a submission needs t o be accompanied by a payment , Manager can be configured t o read t he
correct payment amount from t he form and process t he payment using a secure credit card payment pro-
cess.
l Support ing document at ion - submissions can be support ed by addit ional document s t hat may be uploaded
elect ronically or submit t ed in paper form. Business logic in t he forms can be applied t o support ing doc-
ument s.
l Submission delivery - complet ed submissions can be delivered by email t o one or more user's addresses. The
delivery process can be configured separat ely for each form.
l Form configuration and version control - forms provide fine-grained cont rol over behavior, including form
propert ies, form met adat a, and cust om rendering orchest rat ions. Forms also support version cont rol
enabling parallel development and mult iple versions of t he same form, so you can promot e forms from devel-
opment , t o t est , and finally product ion on separat e servers.
l Task assignment - creat es a t ask for a user or a group of users t o work wit h forms t o complet e, review or
reject t hen.
l Submission tracking - all submissions can be t racked from form download t o submission delivery. Cust omer
support can view forms and at t achment s t o provide user assist ance during t he submission process.
l Reports - provides mult iple chart s and st andard report s for report ing on submissions. Addit ional report s can
be configured using advanced report ing modules. Report s can be displayed on a screen or can be aut o-
mat ically sent out via email.

For t he complet e list of all product capabilit ies, see Manager features.

The diagram below out lines t he main component s, wit h t he submission delivery, transaction workflow and ser-
vices being of t he high significance.

Journey Manager Overview - 97 -


Manager provides a well-defined st ruct ure t o enable aut hent icat ed (st aff) and anonymous (applicant s) users' int er-
act ion wit h forms. An organization sit s at t he t op of t hat st ruct ure, followed by form spaces and finally forms. A cli-
ent can have mult iple organizat ions, which each organizat ion using several form spaces. Each form space can
provide access t o different forms and a form it self can be associat ed wit h several form spaces.

Manager is a secure syst em t hat allows you t o enable fine grained user access t o forms by using preconfigured
security managers or and cust omized groups and roles. The platform developers or system admins can have ded-
icat ed access t o configure, maint ain and manage your Manager environment . St aff and applicant s can access
forms direct ly or indirect ly t hrough Journey Workspaces.

Manager provides rich and fine grained framework for developing, t est ing and deploying services t hat implement
client 's business logic, int eract wit h FinTech services and ext ernal syst ems. Manager comes wit h many pre-
configured core services, covering most of common client 's requirement s, but you can easily creat e new services
using Transact Fluent API and Transact functions as t hey are based on t he st andard Groovy framework.

Manager includes pre-built connectors for best in class services such as fraud det ect ion, ID verificat ion, digit al sig-
nat ures, and over 30 different connect ion part ners. The int egrat ion has already been done, so each connect or can
be added t o t he user experience as needed when designing t he applicat ion.

Every user int eract ion wit h a form is a transaction t hat is creat ed and managed in Manager using t he submission
delivery mechanism. You have a wide of range of t ools t o view and manage t hese t ransact ions. Manager comes
wit h analysis t ools including Insights t o drill down t o t ransact ions, analyze user t ends so you can make an edu-
cat ed decision how t o improve a cust omer journey.

Journey Manager Overview - 98 -


Manager st ores all users' t ransact ions in a secure dat a st orage. You can configure how long t o keep and when t o
purge t he dat a by cust omizing data retention policy. This configurat ion is import ant t o maint ain opt imal per-
formance of your server. At any given t ime, system administrators can check Manager system info and health t o
see if any addit ional t uning is required such as adding a new server node.

Manager can be deployed in t he cloud environment 1, or on-premise depending on cust omer requirement s and
available infrast ruct ure.

Manager is implement ed using a broad range of open source 3rd party libraries.

Next , learn how t o create an organization .

1Cloud comput ing is shared pools of configurable comput er syst em resources and higher-level services t hat can be

rapidly provisioned wit h minimal management effort , oft en over t he Int ernet . Cloud comput ing relies on sharing of
resources t o achieve coherence and economies of scale, similar t o a public ut ilit y.

Journey Manager Overview - 99 -


Journey M aestro Overview
Maestro | Form Builder Platform Developer | 5.1 & Higher

Journey Maest ro is a t ool for designing and building applicat ion forms t hat implement various cust omer onboard-
ing journeys. Maest ro is a product suit e of t he Temenos Journey platform , so it is seamlessly int egrat ed wit h all
ot her product s t o give you a maximum edge in creat ing web-based apps using lat est t echnologies.

Maest ro 5.0 is t he first version of our Maest ro t ool. It was versioned as 5.0 t o keep it in line wit h Journey Man-
ager version numbering. Therefore, Maest ro forms are not support ed in Manager prior t o 5.0.

Maest ro allows anyone wit h moderat e t echnical expert ise and skills t o design and configure web-based forms
using t he built -in Maestro editor . The Maest ro edit or is a WYSIWYG1 edit or so you can see how a form will look
like while creat ing it . You can also preview t he form in different device emulat ors or render it as a PDF or HTML
receipt . The Maest ro edit or comes wit h t he rich text editor t o give you a flexibilit y of using various cont ent format -
t ing.

The forms t hat Maest ro produces are single-page AngularJS applications wit h responsive designs, and can be pre-
viewed in format s suit able for smart phones, t ablet s, and deskt op comput ers. A single design runs on all devices,
t akes t he screen size int o account , and gives an opt imal experience wit hout creat ing versions for each device.

Maest ro provides you wit h t he following feat ures t o st reamline your form development process:

l Drag-and-drop pre-built components direct ly int o t he WYSIWYG edit or for rapid form creat ion

l Creat e cust om component s from scratch or by combining existing components

l Use templates t o maint ain a consist ent look and feel across a large number of forms

l Generat e receipt s based on t he design of a form or design custom receipts

l Implement save and resume functionality wit hout writ ing any code

l Define rules t hat run arbit rary JavaScript code when event s, such as a click, occur

l Maint ain mult iple translations of a single form

For more informat ion, see t he complet e list of Maest ro features.

Maest ro uses t he following ent it ies t o enable you t o design and build forms:

1WYSIWYG, an acronym for What You See Is What You Get , is a syst em in which edit ing soft ware allows cont ent t o

be edit ed in a form t hat resembles it s appearance when print ed or displayed as a finished product , such as a prin-
t ed document , web page, or slide present at ion.

Journey Maest ro Overview - 100 -


l Organization - cont ains project s and organizat ion level libraries
l Project - cont ains forms, component s, t emplat es and project level libraries
l Form - cont ains user dat a capt ured using form component s
l Template
l Receipt
l Component
l Library

Organizat ions, project s and forms make up t he t hree-t ired hierarchy t hat allows you t o minimize configurat ion
effort yet maximize development efficiency by using a correct level or scope while defining and configuring a form.

Maest ro relies on Journey Manager t o host forms, process user input s and st ore all relevant informat ion t o ensure
a form user get s t he best onboarding experience. Therefore, Manager has t he similar concept of ent it ies as Maes-
t ro, plus it also includes back-end configurat ion and dat a t hat are not exposed t o web-based forms.

The diagram below shows t he main ent it ies of Maest ro, communicat ion wit h Manager and int eract ion wit h form
users (applicant s), Form Builders and Template Designers.

A t ypical Maest ro form goes t hrough several st ages of t he cust omer journey experience, such as, Prefill, Dat a Cap-
t ure, Save and Resume, Payment s, Not ificat ions, and Collaboration bet ween various part icipat ing or approving
part ies. Some of t hese st ages have an impact on a form’s design. Let 's explain it wit h t he diagram below, which out -
lines t he development workflow t hat Maest ro provides t o Form Builders and Template Designers t o creat e a cus-
t omer journey.

Journey Maest ro Overview - 101 -


This workflow begins wit h a t emplat e designed in Maest ro by a Templat e Designer. Once t he t emplat e is creat ed,
Form Builders can st art work on new forms based on t he t emplat e, t aking advant age of t he common feat ures built
int o t he t emplat e and maint aining compliance wit h brand guidelines. The Templat e Designer can cont inue adding
t o t he t emplat e increment ally, even while Form Builders are creat ing forms based on t he t emplat e, wit hout affect -
ing any forms in progress.

Once a form is implement ed, t he Form Builder can build t he form and import it int o Manager. Aft er import ing, t he
form can be t est ed across mult iple environment s and, if needed, furt her improvement s can be made before t he
form is published int o a product ion environment for cust omers t o use.

Maest ro forms move t hrough various event s of t he journey experience, which is a sequence of event s t hat include
prefill, dat a capt ure, save and resume, payment s, not ificat ions, and collaborat ion act ivit ies bet ween part ies.

Next , learn about Management Dashboard .

Journey Maest ro Overview - 102 -


Journey Exchange Overview
Exchange | Platform Developer | v5.1 & Higher

The Journey Exchange, formerly known as t he Avoka Exchange, is a cat alog of pre-int egrat ed FinTech 1 applic-
at ions, such as Mit ek, FIS, Mast ersoft , and LexisNexis, t o ext end t he power of t he Journey Plat form.

These t hird part y int egrat ion packages are made available t o our Journey Plat form cust omers for use in t heir
online cust omer applicat ions. A list of published and available packages per region is maint ained at : Exchange Pack-
ages

The Exchange cat alog has been int egrat ed int o Journey Manager from v18.05 t o allow you t o easily download
Exchange packages direct ly int o your Manager environment .

You will need t he Exchange permissions t o be able t o do t his. However, for all earlier versions of Manager, a zip file
gives you access t o t he Exchange package services and Maest ro asset s. To find out more, refer t o:

l Access to Exchange Packages


l Package Installation
l Exchange Permissions
l Package Configuration

Wat ch t his video for an int roduct ion t o t he Exchange.

1Financial Technology, also known as FinTech, is a new indust ry t hat uses new t echnology and innovat ion t o

improve act ivit ies in finance. It aims t o compet e wit h t radit ional financial met hods in t he delivery of financial ser-
vices t o cust omers by improving cust omer experience, reducing t ime-t o-market , decreasing cost t o ment ion a few.

Journey Exchange Overview - 103 -


Journey Exchange Overview - 104 -
Contacting the Exchange Team
You can cont act t he Exchange Team t o suggest an idea or raise a support request t hrough t he Customer Care
portal:

Got an idea? Need t o know how to log an idea?

Got an issue? Need t o know how to log a defect or issue?

1. Ensure you're using t he original Exchange package (not modified services or Maest ro asset s).
2. Include your Manager, Maest ro and Exchange package versions.
3. Det ail t he st eps t o help us t o reproduce t he issue.

Cont act ing t he Exchange Team - 105 -


Exchange Package Architecture
All Exchange packages are based on t he same archit ect ure and int eract wit h Manager and Maest ro in t he same
manner.

As t he user int eract s wit h an Exchange package implement ed in t heir applicat ion (form), t he t hird part y services
are called via Manager, and t hese event s are recorded in Journey Analyt ics, t he plat form's analyt ics t ool, t o be fur-
t her analyzed in t he fut ure.

The t ransact ion propert ies of t he user's applicat ion are also sent t o t he Workspaces port al, so t he applicat ion life
cycle can be reviewed by t he Workspaces users.

Exchange Package Archit ect ure - 106 -


Exchange Development Schedule
More Exchange packages are always being developed.

Packages being considered for development are here: Development Schedule

Exchange Development Schedule - 107 -


Exchange Partnerships
Int erest ed in becoming an Exchange Part ner and publishing your own solut ions?

The Exchange Part ner Program is designed t o allow your t eam t o part icipat e in t he Avoka Exchange service by
developing, cert ifying and publishing your own solut ions. Find out what is involved:

l The Exchange Publishing Process


l Exchange Certification
l Developer Resources

Exchange Part nerships - 108 -


Exchange Developer Resources
Looking for answers as you develop? Let us assist you t o get your Exchange package built , cert ified and published.

We've got some import ant t ips and guidelines t hat are a great place t o st art : Developer Resources

Exchange Developer Resources - 109 -


Journey Workspaces Overview
Workspaces | Workspaces User | 18.11 | 21.11

Efficient resolut ion and assist ance for cust omers is an essent ial part of omni-channel cust omer acquisit ion. Journey
Workspaces, powered by Journey Manager , is an int egral module of t he Temenos Journey Platform t hat enables
your organizat ion t o improve t he qualit y of cust omer experience wit h onboarding assist ance, rapid resolut ion, and
communicat ion of progress, regardless of t he channel t hey are applying from.

What is Workspaces?
Journey Workspaces is a highly configurable and feat ure-rich business port al for banking st aff, designed t o support
resolut ion and cust omer service act ivit ies relat ed t o account opening and onboarding direct ly in t he account open-
ing process. Workspaces support s a digit al workflow for in-bound applicat ions t hat enables bank st aff t o init iat e,
review and resolve cust omer applicat ions, and provide great cust omer service. Bank st aff are offered an efficient
met hod of receiving, t racking, organizing, and resolving pending applicat ions t hat improves bot h t heir product ivit y
and t he accuracy of t he applicat ion review process.

In t he Workspaces port al, you can search and filt er t o find an applicat ion t hen view all t he key applicat ion det ails,
enabling bank st aff t o provide a richer cust omer assist ance experience and make an informed decision about an
applicat ion's out come. You can filt er and assign applicat ions for review based on crit eria such as workloads,
decision st at us, risk, or incomplet e applicat ion dat a. Applicat ion assignment feat ures enable managers t o cont rol
st aff workloads, helping t o reduce t he onboarding delays t hat can lead t o cust omer dissat isfact ion. Throughout
t he account opening process, Workspaces capt ures not es and user- and syst em-init iat ed act ions t hat document
an easy-t o-underst and audit t rail of t he applicat ion life cycle. Wit h visibilit y int o all t he applicat ion informat ion at
your fingert ips, you can quickly resolve pending applicat ions wit h a final decision and communicat e back t o t he
applicant t o increase cust omer acquisit ions and improve cust omer service.

Out of t he box, Workspaces comes wit h a collect ion of t hought fully designed, pre-t est ed t emplat es for several role-
based spaces t hat facilit at e processing, helpdesk, and applicat ion management act ivit ies as well as kick-st art ing
applicat ions on behalf of cust omers and monit oring t heir progress. These t emplat es represent common work scen-
arios and t ake advant age of t hird-part y int egrat ions t o add meaningful feat ures. The t emplat es accelerat e t he
inst allat ion and configurat ion process and can also be used as t he basis for your own cust om Workspaces exper-
ience.

Who is Workspaces for?


Workspaces provides feat ures for several user t ypes or purposes.

Processing Workspaces offers review capabilities for pending applications that


St aff need manual action.
Review

Journey Workspaces Overview - 110 -


Workspaces allows support staff to find any application that needs
Sup- Helpdesk St aff
further assistance quickly and easily.
port

Assist ed Chan- Workspaces allows assisted channel staff to kick start the applic-
Assist nel St aff ation process and track application progress.

M anagers / Workspaces provides tasks management capabilities for man-


Man-
Supervisors agers.
age

The Workspaces Applicant space offers a self-service portal for


Aut hent icat ed
Applic- managing application creation, follow-ups, and keeping track of
Applicant s
ations application progress.

To learn more about t he Workspaces Applicant space, see Workspaces Applicant Space Overview, The Applicant
Space Search Screen , and The Applicant Space Details Screen .

Getting Started
Configurat ion
Workspaces is a highly configurable product , so we provide a set of default configurat ions t o get you up and run-
ning fast er. You can download t he Workspaces dist ribut ion, including t he default configurat ions. More informat ion
is available in t he Workspaces technical documentation t o help you configure your Workspaces port al t o meet
your needs.

Browser Support
Workspaces has been designed for and t est ed against t he following web browsers.

l Google Chrome
l Mozilla Firefox
l Microsoft Edge
l Microsoft Int ernet Explorer 11 (limit ed support - see IE11 Support below)

For t he best experience, we recommend t hat you use t he lat est version of Chrome, Firefox, or Edge, and t hat you
keep your browser updat ed, especially t hrough t he applicat ion of securit y pat ches.

While you may be able t o access Workspaces using ot her browsers, t here's no guarant ee t hat everyt hing will work,
and you may not enjoy t he great user experience available when using a support ed browser. We st rongly recom-
mend t hat you use a support ed browser for t he best Workspaces experience.

IE11 Support

Journey Workspaces Overview - 111 -


Workspaces is support ed on Int ernet Explorer 11 (IE11), commencing from Workspaces v18.11.4. Workspaces is fea-
t ure-compat ible wit h IE11; however, t he user experience on IE11 may not be as great as when using a modern
browser due t o limit at ions imposed by IE11.

What's new?
Here's some informat ion t o help you discover t he great new feat ures and improvement s in each Workspaces
release.

22.04
21.11 Here's what 's new and improved in Workspaces 22.04.
20.05
19.11
19.05
18.11 Improved version
Improved control in Product
build and Artifactory that
construction
deployment allows easy access to
process a specific Work-
spaces release.
A brand-new Oper-
ations portal that
allows operations
staff and admin-
admin_
Operations istrators to search
panel_set-
Space and view TJM trans-
tings
actions when provid-
ing operational
assistance to banks
and their customers.
Apply a theme to the
Theme sup- Applicant space to
picture_in_
port in Applic- match bank brand-
picture_alt
ant space ing and color
schemes.
A new notes feature
in the Applicant
space that allows
Notes feature applicants to com-
speaker_
in Applicant municate directly
notes
space with bank staff for
assistance during
the application pro-
cess.
Search Improvements to
search
improvements the Workspaces

Journey Workspaces Overview - 112 -


search feature, allow-
ing the user to
return to the parent
view quickly after
completing a search.
Improvements to
the Application
view_ Timeline timeline feature to fil-
timeline improvements ter out tasks or trans-
actions that are not
required.
Improvements to
the Workspaces
notes feature to
speaker_ Notes make it easier for
notes improvements bank staff to com-
municate with applic-
ants in the Applicant
space.
Migration from the
Migration to old web driver frame-
new auto- work to the Night-
build_circle
mation frame- watch framework for
work API, config, and UI
automation.

Here's what 's new and improved in Workspaces 21.11.

Improved build and An improved build and deployment process for Workspaces is
deployment process now available from the Product Artifactory.

Applicant Space t em- A fully configurable workspace for authenticated non-bank users
plat e to manage the application journey.

Support for Job Prop- Support for configuring the Key Info card and custom cards using
ert ies the application's job properties.

Localizat ion improve- Support for switching the language within Workspaces, and other
ment s minor enhancements to the localization framework.

Search improve- Configure search to include fields that are not part of the item list
ment s data.

Journey Workspaces Overview - 113 -


Here's what 's new and improved in Workspaces 20.05.

Improved build An improved build and deployment process for Workspaces that
and deployment supports seamless integration to your DevOps practices such as
process CI/CD.

Task-specific Task-specific actions are presented alongside each task in an applic-


act ions ation to give you confidence you are acting on the right task.

A new focused search option that lets you search on a specific applic-
Focused search
ation data item and get results faster.

Improved UI / UX A fresh new user interface for an improved user experience.

Improved cust om
Improved custom card configuration including permission control
card con-
and an option to hide empty/null data.
figurat ions

Improved session
Automatic session logout after a defined period of inactivity.
logout

Dat e picker Enhancements to the date picker to support single date selection
enhancement s and custom date formats.

Enhanced search/ - New search/filter behavior on the List pages: the latest search/filter
filt er behavior is retained in each space until cleared or the session ends.

Enhanced applic-
The assignee full name is displayed when assigning a task to a user.
at ion assignment

Enhanced applic- An enhanced view configuration extending control over line wrap-
at ion list ing ping in data tables.

Enhanced doc- Attachment name is now included for each item in the Documents
ument s panel panel.

Wat ch t his video t o discover t he great new feat ures and improvement s in Workspaces 19.11.

Journey Workspaces Overview - 114 -


Wat ch t his video t o discover t he great new feat ures and improvement s in Workspaces 19.05.

Wat ch t his video t o discover t he great new feat ures and improvement s in Workspaces 18.11.

Journey Workspaces Overview - 115 -


Journey Workspaces Overview - 116 -
Journey Analytics Overview
Journey Analytics | Analytics User | Latest Version

Journey Analyt ics, formerly known as Transact Insight s, is a purpose-built behavioral analyt ics module t hat
provides addit ional ext ensive analyt ics on your applicat ions host ed on t he Temenos Journey Platform .

Once set up , Journey Analyt ics aims t o assist cust omers t o t rack t he performance of t heir applicat ions on t heir Jour-
ney Plat form from an analyt ical perspect ive. Journey Analyt ics provides a wide variet y of analyt ical views t hat cap-
t ure complet ion analysis for one or more applicat ions. As well as t hese feat ures, Journey Analyt ics also support s
rich filt ers t hat allow cust omers t o underst and t he device t ype, browser and ot her at t ribut es of t he devices used t o
complet e applicat ions.

Journey Analyt ics must be enabled for Maest ro, Composer or Open UX applicat ions in Journey Manager t o be able
t o collect Journey Analyt ics dat a.

A key value Journey Analyt ics offers is t he behavioral analyt ics t o assist our cust omers t o underst and user engage-
ment wit h t he form, t he effort it t akes t o submit an applicat ion, and where users are abandoning t heir applic-
at ions.

These fine-grained met rics help t o ident ify abandonment hot spot s in t he cust omer applicat ion and furt her explore
problemat ic fields t o:

l Reduce t he effort it t akes t he user t o complet e an applicat ion.


l Improve t he user experience and onboarding 1 process.

l Opt imize t he applicat ion t o drive conversion and complet ion.

Analytics Views
Journey Analyt ics now offers eight main analyt ical views for bot h applicat ion performance analyt ics and user beha-
vioral analyt ics:

1The st eps required t o get a new cust omer int egrat ed int o a new program. These st eps may vary business t o busi-

ness.

Journey Analyt ics Overview - 117 -


1. Dashboard View – gives a high-level overview of applicat ion performance providing key met rics on com-
plet ion, device dist ribut ion, complet ion t imes and recent complet ion hist ory.
2. Timeline View – provides a t rend of applicat ion st at uses over a select ed period. In addit ion, you can aggreg-
at e t he dat a at various levels and split t he dat a by device t ype, browser, applicat ion version and ot her
opt ions.
3. Dropoff View – provides behavioral analyt ics capt uring key insight s on user int eract ion wit h t he applicat ion.
It includes sect ion and field level met rics t hat help t o ident ify abandonment hot spot s, problemat ic fields,
and applicat ion flow.
4. Field Analysis View - provides det ailed field-level st at ist ics for each sect ion of t he applicat ion being analyzed.
It also helps t o ident ify abandonment hot spot s by aggregat ing all field level behavioral dat a for all t rans-
act ions during t he select ed t ime frame. In v18.05 and earlier t his view is accessed t hrough t he Dropoff View.
5. User Journey View – t his view provides a map of cust om milest ones implement ed in t he applicat ion and how
users are progressing t hrough t hem t owards complet ing t he applicat ion. It also provides insight int o all pos-
sible journey pat hs users are t aking t o complet e t ransact ions, and allows cust omers t o perform seg-
ment at ion analysis of t he users based on t he dat a sent by t he Segment APIs from t he applicat ion form or
Journey Manager. Int roduced wit h Journey Manager 18.05.
6. Collaboration Job View - t his view uses a node graph t o represent t he Collaborat ion Job workflow. It provides
a view int o key met rics at t he job, st ep, act ion, sect ion and field level. Int roduced wit h Journey Manager
18.11.
7. Export View - t his feat ure allows you t o export analyt ics report s t o CSV, wit h t he abilit y t o select t he gran-
ularit y of your report s and ret rieve export s for mult iple applicat ions in a single file. Int roduced wit h Journey
Manager 19.05.
8. Custom Reports View - t his view provides a cust omizable dashboard t hat makes it easy t o compare t he per-
formance of your applicat ion versions, across many different met rics in a single view. Mult iple analyt ics can
be displayed in t he form of report cards t hat can be arranged and resized in any locat ion on t he screen. Int ro-
duced wit h Journey Manager 19.05.

Journey Analytics User Interface


The Journey Analytics User Interface is common t o all analyt ical views. Use t he int erface t o select t he required ana-
lysis views, select t he t imeframe for analysis, and set global filt ers and preferences.

From Journey Manager 18.11 a new user int erface called t he Visualizer was int roduced, which is a modern user
int erface t hat brings t oget her modern best pract ices t o deliver a refreshed user experience. For cust omers on Jour-
ney Manager 18.11 and lat er, all analyt ical views will be seen t hrough t his refreshed user int erface. For cust omers
on Journey Manager 18.05 and earlier, t he original legacy Dashboard user int erface will display. Examples of bot h
user int erfaces are available in t his document at ion.

Journey Analyt ics Overview - 118 -


Terminology
Journey Manager forms or applicat ions designed in Maest ro, Composer or Open UX are referred t o as applicat ions
in Journey Analyt ics, and once a user submit s t he applicat ion in t he browser it becomes a complet ed t ransact ion in
Journey Manager.

Transaction Status
Transact ions on Journey Manager may progress t hrough any of t he following statuses; Open, Bounced, St art ed,
Saved, Complet ed, Abandoned.

Strict No PII Policy


Transact ional dat a ent ered by users is not st ored in Journey Analyt ics, however, Journey Analyt ics does st ore
informat ion about t he t ransact ion st at us and user behavior event s from t he applicat ion. This behavioral dat a is
st ored and used t o populat e all t he Journey Analyt ics analysis views.

The t ransact ion st at us and user behavior event s DO NOT include any user input dat a it self and hence Journey Ana-
lyt ics DOES NOT collect any Personally Ident ifiable Informat ion 1 (PII). The Journey Analyt ics service has been
explicit ly designed t o NOT record or st ore user input dat a and PII.

You may verify t his by using t he browser’s F12 t ool t o monit or t he net work t raffic of an Journey Analyt ics enabled
applicat ion. Journey Analyt ics employs all possible mechanisms and st rat egies t o NOT st ore dat a relat ing t o PII. For
more informat ion, see Journey Analytics Data Privacy and Security.

Architecture
Journey Analyt ics is built and host ed on t he Google Cloud Plat form (GCP) infrast ruct ure. It is a fully managed ser-
vice built using t he GCP. The image below describes t he high-level archit ect ure of Journey Analyt ics and how it fit s
int o t he Journey plat form.

1Personally ident ifiable informat ion (PII) is any dat a t hat could pot ent ially ident ify a specific individual. Any inform-

at ion t hat can be used t o dist inguish one person from anot her and can be used for de-anonymizing anonymous
dat a can be considered PII.

Journey Analyt ics Overview - 119 -


Journey Analyt ics collect s event s from t wo sources – Journey Manager and t he browser where t he applicat ion is
rendered.

Journey Manager sends t ransact ion st at us event s and applicat ions rendered in t he browser send user int eract ion
event s. These t wo sources support t he det ailed st at ist ical analysis of user behavior wit hin applicat ions.

The user int eract ion event s from t he browser include informat ion such as - field visit , field complet ion, validat ion
error, sect ion navigat ion et c. These analyt ical event s are direct ly comparable t o t he Google Analyt ics or Adobe
Analyt ics event s recorded by t hese analyt ics services. For more informat ion, see Journey Analytics Data Privacy
and Security.

Setup and User Administration


Some setup and user administration is required t o use Journey Analyt ics. Users must have t he Journey Analyt ics
user role and space added t o t heir Journey Manager user accounts t o be able t o access Journey Analyt ics.

Journey Analytics Open UX Support


Journey Analyt ics support s t he Open UX framework via a separat e npm package. For implement at ion det ails and
an example Open UX React project , see Open UX.

Journey Analyt ics Overview - 120 -


Retail DAO Overview
Springboard | Form Builder | Retail DAO 3.0

The Ret ail Springboard Solut ion for US Deposit Account Opening, Springboard DAO 1 for short , is a ready-t o-use
solut ion t o enable onboarding2 of new and exist ing cust omers for US Direct Deposit Account s (DDAs3). Spring-
board is a st art ing point for cust omer specific DAO project s, which requires significant ly less development t han a
t ypical Journey project .

This is achieved by pre-building most of t he t ypical component s, required t o support US DAO solut ions on Journey
Manager, such as:

l Maest ro t emplat e and forms

l Transact Functions including t hird-part y integration


l St andard workflows and collaboration jobs t o support manual review and approval act ivit ies

For more informat ion on each of t he component s supplied wit h t he solut ion, see components.

A t ypical Springboard applicat ion flow is shown below.

1Deposit Account Opening ( DAO). DAO bank forms allow users t o open Checking, Savings and Money Market

Account s.
2The st eps required t o get a new cust omer int egrat ed int o a new program. These st eps may vary business t o busi-

ness.
3Direct Deposit Account (DDA) is simply a checking or savings account which offers t he abilit y t o send and receive

funds elect ronically.

Ret ail DAO Overview - 121 -


Audience
This document at ion is designed t o assist your implement at ion t eam members wit h t he init ial set up of t heir local
development environment , deployment of solut ion art ifact s and configurat ion of st andard solut ion component s.

This document is also int ended for all project t eam members:

l Project Manager
l Business Analyst
l Solut ion Archit ect
l Technical Lead

l Developers
l Qualit y Assurance Team

Areas of Value
Springboard provides value t o Client Services t eams and our client s in several ways:

l Offers our client s a vision of what a good DAO 1 solut ion should look like.

l Offers our client s a head st art on developing a cust om DAO solut ion by leveraging our base Springboard solu-
t ion.
l Serves as Temenos’ current reference archit ect ure for a Journey Manager / Journey Maest ro DAO solut ion.
l Offers Client Services t eams a framework for implement ing a cust om DAO solut ion.

Prerequisites
To st art using Springboard and get t he most out of it , you need t o be familiar wit h:

l The Temenos Journey platform


l Journey Manager's services

l Maestro
l Narrat ives
l SCM
l Git

More informat ion is available in our online documentation and on our resources website. We also offer inst ruct or-
led and online training (aut hent icat ion required) on developing Journey plat form solut ions.

1Deposit Account Opening ( DAO). DAO bank forms allow users t o open Checking, Savings and Money Market

Account s.

Ret ail DAO Overview - 122 -


What Remains to Be Done
While large port ions of t he solut ion are pre-built t here is st ill work required for every cust omer specific imple-
ment at ion. Typically, t he bulk of t he work for a client should be focused int o t hree main areas:

l Configurat ion/ Set up - such as st yle/ brand, labels, configurable opt ions, deploying and t est ing component s,
t est ing int egrat ions, et c.
l Core Banking Int egrat ion - t o support account and cust omer creat ion, as well as ot her crit ical onboarding
act ivit ies
l Cust omizat ion - which includes specific modificat ions t o t he project scope, which have been added t o t he
project SOW or via CRs

Next , learn about Springboard architecture.

Ret ail DAO Overview - 123 -


Adobe Reader PDF Form
Journey Platform | Form Builder | v5.0

This art icle provides up t o dat e informat ion on how t o get PDF Forms and Adobe Reader working on your com-
put er.

If you are using an Apple iPad, Android or Windows RT device, you will need t o use a PC or Mac comput er t o
complet e your form. Current ly XFA PDF forms are not support ed on t hese t ablet devices.

Adobe Reader Not Found


This message is displayed when your browser could not find t he Adobe Reader plug-in. This may be due t o Adobe
Reader not being inst alled on your comput er or t he plug-in is not configured in your browser.

To inst all Adobe Reader please download t he free inst aller from Adobe at http://get.adobe.com/reader/ . We
always recommend you use t he lat est version of Adobe Reader so you have t he lat est securit y updat es have t he
best user experience. It is recommended t hat you don't use any versions before Reader 9 as t hese older versions
are not support ed by Adobe, and will not be updat ed t o address t he lat est securit y t hreat s.

If you have Adobe Reader inst alled by it s not available in your browser please check t he following browser set t ings.

Adobe Reader Updat e Required


If t his message is displayed t he PDF form requires a more up t o dat e version of Adobe Reader. Please inst all t he
lat est version of Adobe Reader from: http://get.adobe.com/reader/

Adobe Reader JavaScript is Disabled


If you open a PDF form and t he following message ribbon is displayed t hen your Adobe Reader is configured t o dis-
able JavaScript .

Adobe Reader PDF Form - 124 -


Most PDF forms will not work wit hout JavaScript 1 and you will need t o enable it t o complet e your form.

To enable JavaScript :

1. Click on t he Opt ions ribbon menu and select t he it em 'Enable JavaScript for t his document always'
2. In t he 'Add t o Privileged Locat ion' click on t he OK but t on

For m ore inform at ion on part icular browsers, see:


l Unsupported Browsers
l View PDF Documents in Chrome
l View PDF Documents in Firefox
l View PDF Documents in IE 8 and IE 9
l View PDF Documents in IE 10
l View PDF Documents in Safari
l View PDF Documents in Windows 8

1Javascript (JS) is a script ing languages, primarily used on t he Web. It is used t o enhance HTML pages and is com-

monly found embedded in HTML code. JavaScript is an int erpret ed language. Thus, it doesn't need t o be compiled.

Adobe Reader PDF Form - 125 -


Unsupported Browsers
Journey Platform | Form Builder | v5.0

A number of browser now no longer support Adobe Reader plugins and as such don't support in browser PDF
forms. The browsers are list ed below:

Google Chrom e
Google chrome now no longer support s NPAPI (Net scape Plugin API), which Adobe Reader ut ilized t o run from
wit hin t he browser. To use PDF forms now If you can t ry one of t he following solut ions:

l Use a different browser, for example, Firefox or Int ernet Explorer.

l Disable reader, Chrome's default PDF viewer, so it will force Chrome t o open t he PDF in t he default applic-
at ion for t he PC, which can be set as Adobe Reader.

To disable Chrom e plugins


1. Open Chrome and in t he address bar t ype chrome:/ / plugins

2. Click Det ails on t he right hand side of t he page.


3. Scroll down t o Chrome PDF Viewer and click Disable at he bot t om of t he plugin informat ion.

Unsupport ed Browsers - 126 -


4. PDFs will now open t o t he default App on your machine.

M icrosoft Edge
The new Edge browser does not have any support for Act iveX plugins, which is what Adobe Reader uses in it s
browser plugins. Edge will open PDFs in t he default PDF viewer app for your PC. If you st ill have t roubles wit h PDFs
in Edge, it is recommended t hat you use anot her browser, for example, Firefox.

Next , learn how t o view PDF documents in Chrome.

Unsupport ed Browsers - 127 -


View PDF Documents in Chrome
Journey Platform | Form Builder | v5.0

As we use PDF format for our applicat ion forms, you will need t o get Adobe Reader working on your comput er or
in your browser. This art icle provides inst ruct ions how t o use Google Chrome, a popular browser, t o open PDF
Forms.

By default , Chrome uses a built -in PDF viewer t o open PDF files, so when you click a PDF link on a web page, t he file
opens direct ly in your browser.

The following cont rols are available in t he lower-right area of t he browser window:

If you've disabled t he built -in PDF viewer, Chrome will use Adobe Acrobat or Adobe Reader t o display PDF files.

Adobe Reader runs inside Chrome as a NPAPI (Net scape Plugin API) plugin. Google is phasing out support
for NPAPI plugins from t he Chrome browser. Since April 2015 (Chrome 42) NPAPI plugins have been dis-
abled by default . It is possible t o re-enable t hem via an override however from Sept ember 2015 (Chrome
45) t his override will be removed and NPAPI support will be permanent ly removed from Chrome.

To re-enable NPAPI:

1. Ent er: chrome://flags/#enable-npapi in t he browser's address bar.

2. Look for t he following Enable NPAPI ent ry.

3. Click Enable .
4. Rest art Chrome and t hen ent er chrome://plugins/ in t he browser's address bar.

5. Look for t he following Adobe Reader ent ry.

View PDF Document s in Chrome - 128 -


6. Click Enable . This makes Adobe Reader t he default PDF viewer inside your Chrome and consequent ly dis-
ables t he Chrome PDF Viewer.

Alt ernat ively, you can set any of t he plugin Ent erprise policies, such as EnabledPlugins or Plu-
ginsAllowedForUrls, which t emporarily re-enable NPAPI support .

Aft er NPAPI support is removed from Chrome, if you need t o use Adobe Reader inside a browser, you must use
anot her browser unt il a replacement plugin becomes available for Chrome.

If you have enabled bot h NPAPI support and eit her t he Adobe Acrobat or Adobe Reader plugin, but you are st ill
experiencing problems please follow t he following st eps.

First check if t he issue is specific t o Chrome. Try opening PDFs in anot her browser on your comput er, such as Fire-
fox. If you experience similar problems viewing PDFs in anot her browser, t he issue is likely not relat ed t o Chrome,
so you need t o visit t he Adobe support sit e for addit ional help.

Chrome Troubleshooting
If you are st ill having issues viewing PDFs and it is specific t o Chrome, t ry t he following solut ions in t he order t hat
t hey arere list ed:

Check for updat es for Chrom e, Adobe Reader and Acrobat


1. Checking for Chrome updat es here.
2. Check for Adobe Reader or Acrobat soft ware updat es here.

Check your Adobe Reader and Acrobat set t ings


Follow t he inst ruct ions below t o confirm t hat eit her Adobe Reader or Adobe Acrobat is configured t o display PDFs
in t he browser.

Only one of t he programs should be set t o preview PDFs in t he browser, not bot h.

1. In eit her Adobe Acrobat or Reader, select Edit > Preferences.


2. Click Int ernet .
3. Select t he Preview PDF in browser or Display PDF in browser checkbox. If t he checkbox is already selec-
t ed, clear it , click OK, t hen go Preferences and select it again.
4. Click OK.

View PDF Document s in Chrome - 129 -


5. Follow t he same st eps in t he ot her program, but make sure t hat t he Preview PDF in browser checkbox is
not select ed.

Repair your Adobe Reader or Adobe Acrobat inst allat ion


1. In Adobe Reader, select Help > Repair Adobe Reader Inst allat ion .
2. In Adobe Acrobat , select Help > Repair Acrobat Inst allat ion .

Uninst all eit her Adobe Reader or Adobe Acrobat inst allat ion
If you have bot h Adobe Reader and Adobe Acrobat inst alled, t hey may conflict wit h each ot her. Try uninst alling
one of t he applicat ions.

Windows
1. Use t he Add or Remove Programs funct ion in your Windows Cont rol Panel t o remove eit her Adobe
Reader and Acrobat from your comput er.
2. Rest art your comput er aft er you have complet ed uninst alling t he program.

M ac
1. Drag eit her Adobe Reader or Acrobat from t he Applicat ions folder t o t he Trash .
2. Remove AdobePDFViewer.plugin from t he Library > Int ernet Plug-Ins folder.

Uninst all and Reinst all Adobe Reader or Acrobat


1. Follow t he st eps from t he sect ion above t o uninst all all versions of t hese programs.

2. Visit http://www.adobe.com/downloads/ t o reinst all t he lat est version of Adobe Acrobat or Reader.

Next , learn how t o view PDF documents in Firefox.

View PDF Document s in Chrome - 130 -


View PDF Documents in Firefox
Journey Platform | Form Builder | v5.0

This art icle provides up t o dat e informat ion on how t o get PDF Forms and Adobe Reader working on your com-
put er.

Using the built-in PDF viewer


Firefox now includes a built -in PDF viewer t hat allows you t o view almost all PDF files found on t he web wit hout a
plugin. The built -in PDF viewer is enabled by default .

Using a PDF reader plugin


To check what your Firefox browser is set t o, go t o t he Tools M enu > Opt ions and click on t he Applicat ions t ab

To change from using t he built -in PDF viewer t o your PDF reader plugin:

1. Click Firefox at t he t op of t he Firefox window and select Opt ions.


2. Select t he Applicat ions panel.
3. Click Find Port able Document Format (PDF) .
4. Select a desired PDF reader from t he dropdown list , for example, Use Adobe Reader (default ) in t he
Act ion column .

View PDF Document s in Firefox - 131 -


5. Click OK.

The Firefox Soft ware Updat e feat ure does not updat e inst alled plugins. For informat ion about securit y and
st abilit y issues affect ing Adobe Reader, see t he Adobe security bulletins and advisories documentation .

To check if you have t he lat est versions of all your plugins, see plugin check documentation .

If plugin is not working


Firefox can somet imes block plugins from working on cert ain web pages. If t he PDF is not rendering check t he plu-
gin is allowed, click t he plugin icon in t he browser address bar and t hen click Allow and Remember .

View PDF Document s in Firefox - 132 -


Test ing t he Adobe Reader Plugin
To t est whet her you are able t o open PDF files, see Mozilla Privacy Policy PDF documentation .

If PDF files are downloaded inst ead of displayed, t ry t hese solut ions
To reset download act ions:

1. Open your profile folder.

2. Click Firefox at t he t op of t he Firefox window.


3. Go t o t he Help menu and select Troubleshoot ing Informat ion .
4. Under t he Applicat ion Basics sect ion, click Show Folder . A window wit h your profile files will open.

If you are unable t o open or use Firefox, follow t he inst ruct ions in Finding your profile wit hout opening Fire-
fox.

Next , learn how t o view PDF documents in IE 8 and IE 9 .

View PDF Document s in Firefox - 133 -


View PDF Documents in IE 8 and IE 9
Journey Platform | Form Builder | v5.0

This art icle provides informat ion on how t o get PDF Forms and Adobe Reader working on your comput er.

Int ernet Explorer is support ed for use wit h Acrobat and Adobe Reader version 7.0.8 and higher. For versions of
Acrobat earlier t han 7.08, most funct ionalit y will work, but t here may be issues wit h forms workflows.

If you run int o any sort of issue, t hen you should upgrade t o t he lat est version of Acrobat Reader (and if possible
your browser version).

Int ernet Explorer 8 makes it more visible t o t he user which add-ons are enabled and disabled. This is done from t he
t ools menu by select ing Manage Add Ons.

Using an Add-on to view PDF documents within an IE8 browser window


When you inst all Acrobat or Adobe Reader on a syst em t hat includes a browser, you aut omat ically configure t he
browser t o open PDF files wit hin t he browser window. Acrobat and Adobe Reader inst all Act iveX plug-in files t hat
allow you t o use Int ernet Explorer or AOL t o open PDF files.

If eit her applicat ion is inst alled, but PDF files don't open in t he browser window, t hen work t hrough t he following
st eps t o configure t he browser:

1. M ake sure t hat t he syst em m eet s t he requirem ent s for t he Acrobat product you
use.
Acrobat may not run correct ly if t he syst em doesn't meet t he following requirement s:

View PDF Document s in IE 8 and IE 9 - 134 -


l Int el Pent ium III processor or equivalent
l Microsoft Windows 2000 wit h Service Pack 4 or Windows XP Professional, Home Edit ion, or Tablet PC Edit ion
wit h Service Pack 2
l Microsoft Int ernet Explorer 6.0
l 256MB of RAM (512MB recommended)
l 860MB of available hard-disk space; cache for opt ional inst allat ion files (recommended) requires an addi-
t ional 460MB of available hard-disk space.
l 1,024x768 screen resolut ion

2. Check your IE add-on


Int ernet Explorer 8 makes it more visible t o t he user which add-ons are enabled and disabled. This is done from t he
t ools menu by select ing Manage Add Ons.

1. Click St art .
2. Type Int ernet Explorer and select Int ernet Explorer from t he list .
3. Click Tools and select M anage add-ons.
4. Click Toolbars and Ext ensions under Add-on Types.
5. Select one of t he following views of your add-ons under Show :
l All add-ons - t o display a complet e list of t he add-ons on your comput er.
l Current ly loaded add-ons - t o display only t hose add-ons t hat were needed for t he current webpage
or a recent ly viewed webpage.
l Run wit hout permission - t o display add-ons t hat were preapproved by Microsoft , your comput er man-
ufact urer, or a service provider.

View PDF Document s in IE 8 and IE 9 - 135 -


View PDF Document s in IE 8 and IE 9 - 136 -
6. Click Close .

3. M ake sure t hat t he Act iveX folder cont ains files required for web browsing.
To open PDF files in a browser window, t he Act iveX folder must cont ain t he following files: AcroPDF.dll, AcroIEHelp-
er.dll, and pdfshell.dll.

The Act iveX cont rols should be locat ed in: Program Files\ Common Files\ Adobe\ Acrobat \ Act iveX

If any of t hese files are missing, t hen repair Acrobat or Adobe Reader by choosing Help > Repair Acrobat Inst all-
at ion, or reinst alling t he applicat ion.

4. Use a support ed version of t he browser.


Make sure t hat you use a version of your web browser t hat Acrobat and Adobe Reader support .

Support ed browsers for Adobe Acrobat 8, Adobe Reader 8 are Int ernet Explorer 6.0, 6.0 SP1, Int ernet Explorer 7.0,
Firefox 1.5 or lat er, Mozilla 1.7, and AOL 9.

5. How t o t urn on and off add-ons


1. Click St art .
2. Type Int ernet Explorer and select Int ernet Explorer from t he list .
3. Click Tools and select M anage add-ons.
4. Click All add-ons under Show .
5. Click an add-on, and t hen do one of t he following:

l Click Enable - t o make t he add-on available for use in t he browser.

l Click Disable - t o t urn t he add-on off so it can't be used in t he browser.


6. Repeat st ep 4 for each add-on t hat you want t o t urn on or off.

7. Click Close .

Before you t urn off a browser add-on, keep in mind t hat some webpages, or Int ernet Explorer it self, might
not display properly if an add-on is t urned off. We recommend t hat you only t urn off an add-on if it
repeat edly causes Int ernet Explorer t o close.

6. To delet e Act ive X cont rols


You can only delet e Act iveX cont rols t hat you have downloaded and inst alled. You can't delet e Act iveX cont rols
t hat were pre-inst alled or add-ons of any kind, but you can t urn t hem off.

1. Click St art .
2. Type Int ernet Explorer and select Int ernet Explorer from t he list .
3. Click Tools and select M anage add-ons.

View PDF Document s in IE 8 and IE 9 - 137 -


4. Click Downloaded cont rols under Show t o display all Act iveX cont rols.
5. Click t he Act iveX cont rol you want t o delet e, and t hen click M ore informat ion .
6. Click Remove . Administ rat or permission required If you're prompt ed for an administ rat or password or con-
firmat ion, t ype t he password or provide confirmat ion.
7. Repeat t hese st eps for every cont rol you want t o delet e.

8. Click Close .

For more informat ion, see http://windows.microsoft.com/is-IS/windows7/How-to-manage-add-ons-in-Internet-


Explorer-9.

Next , learn how t o view PDF documents in IE 10 .

View PDF Document s in IE 8 and IE 9 - 138 -


View PDF Documents in IE 10
Journey Platform | Form Builder | v5.0

This art icle provides informat ion on how t o get PDF Forms and Adobe Reader working on your comput er.

Using the built-in PDF viewer


Int ernet Explorer includes a built -in PDF viewer t hat allows you t o view almost all PDF files found on t he web
wit hout a plugin.

If your PDFs are opening in a nat ive applicat ion such as Acrobat Reader, check t he IE set t ings as described below.

Check your Browser Set t ings


1. Open t he IE browser.

2. Select Tools M enu > Int ernet Opt ions.


3. Click t he Advanced Tab.
4. Scroll t o t he Securit y sect ion and clear t he Enable Enhanced Prot ect ed checkbox
5. Rest art your comput er and PDFs should now open in your IE browser.

View PDF Document s in IE 10 - 139 -


6. Click OK.

Still having Issues? Try these steps


M et hod 1: Disable Add-Ons
1. Click Tools and select M anage add-ons.
2. Disable t he add-ons by clicking t hem one at a t ime t o highlight t hem and t hen click on disable but t on.
3. Re-enable t he add-ons one by one and check wit h which Add-on you get t his error message.
4. Disable t he Add-on causing t he problem.

M et hod 2: Reset securit y set t ings for Int ernet Explorer


If you configure securit y set t ings t o be t oo rest rict ive, you may prevent Int ernet Explorer from displaying cert ain
Web sit es. To det ermine whet her an issue is caused by overly rest rict ive securit y set t ings, revert t o default securit y
set t ings. To do t his, follow t hese st eps:

View PDF Document s in IE 10 - 140 -


1. Open Int ernet Explorer.

2. Click Tools and select Int ernet Opt ions.


3. Click t he Securit y t ab.
4. Click Reset all zones t o default level
5. Click OK.

M et hod 3: Run t he Int ernet explorer perform ance t roubleshoot er and check if it
helps.
1. Press t he ‘Windows + W’ key on t he keyboard.
2. Type t roubleshoot er in t he search box and t hen press ent er.

3. Select Troubleshoot ing.


4. Click on view all and select Int ernet explorer performance.
5. Click next and follow t he on-screen inst ruct ions.

M et hod 4: Reset Int ernet Explorer 10


1. Drag t he mouse t o t he bot t om right corner and click on search.

2. Click Set t ings and t ype Int ernet Opt ions.


3. Click Int ernet Opt ions and select Advanced t ab.
4. Click Reset .
5. Click OK.

Please not e t hat running Reset Int ernet Explorer Set t ings will reset all user-defined set t ings including t hose
set by inst alled ext ensions, t oolbars and ot her add-ons t o IE Default s. This includes all Securit y, Privacy and
Zone set t ings. Also t his will clear browsing hist ory, delet e all t emporary Int ernet Files, cookies, form dat a and
especially all st ored passwords.

M et hod 5: uninst all t he Adobe Acrobat Reader and inst all t he lat est version.
Download t he lat est version at http://get.adobe.com/reader/otherversions/

If you have mult iple Adobe Readers inst alled, uninst all t hem all t hen inst all t he lat est version. Adobe doesn't sup-
port mult iple versions of Reader or Acrobat on t he same comput er. Mult iple versions simult aneously inst alled can
lead t o soft ware conflict s and errors. Uninst all all versions of Reader or Acrobat and t hen reinst all only one version
of t he product .

Next , learn how t o view PDF documents in Safari.

View PDF Document s in IE 10 - 141 -


View PDF Documents in Safari
Journey Platform | Form Builder | v5.0

This art icle provides up t o dat e informat ion on how t o get PDF Forms and Adobe Reader working on your com-
put er.

The Adobe Reader and Acrobat st and-alone applicat ions are unaffect ed and Safari 5.1 renders PDF document s nat -
ively.

However, t he Adobe Reader and Acrobat browser plug-ins before 10.1.3 don't funct ion as expect ed in LiveCycle
and Acrobat workflows t hat require eit her plug-in t o render PDF document s in Safari 5.1.

Adobe Reader for XFA PDF forms is not available on iPad or iPhone devices.

System requirements
Acrobat X and Adobe Reader X support viewing PDF files inside t he Safari browser on Mac OS X.

For more informat ion about syst em requirement s, click t hese links for your product : Acrobat X Pro, Acrobat X
St andard, Adobe Reader X.

Adobe PDFViewer for Mac OS X requires t he following syst em requirement s:

l Safari 4 for Mac OS X 10.5.8 and Mac OS X 10.6.4


l Safari 5 for Mac OS 10.6.4
l Acrobat and Reader via AdobePDFViewer Safari plug-in are 32/ 64-bit (64-bit available in Safari 10.6)

If you don't have Acrobat or Reader, or haven't inst alled t he PDFViewer plug-in, t hen Safari shows PDF files
using t he Mac OS X nat ive PDF support . Support for many Adobe PDF workflows, such as t he collaboration
jobs or many forms and securit y feat ures, is unavailable.

View PDF Document s in Safari - 142 -


Configuring Acrobat to display PDF files in Safari
The AdobePDFViewer plug-in is used t o display PDF files in Safari using Acrobat and Reader. This plug-in is inst alled
as part of t he Acrobat X or Reader X inst allat ion.

The locat ion of t his plug-in on a Macint osh is /Library/Internet Plug-ins/AdobePDFViewer.plugin.

Troubleshooting issues in Safari


Opt ions include t he following:

l Cont inue t o use Safari 5.0.x and Mac OS X 10.6.

l Upgrade t o Adobe Reader or Acrobat version 10.1.3 or lat er.


l Save t he PDF file from Safari t o t he comput er, and t hen open it direct ly in Adobe Reader or Acrobat .

For more informat ion, see http://helpx.adobe.com/acrobat/kb/troubleshoot-safari-plug-acrobat-x.html.

Known Issues
Reader's Preferences > Int ernet > Display PDF in Browser is always dim m ed
l To disable Safari int egrat ion, delet e t he AdobePDFViewer.plugin from /Library/Internet Plug-ins.

l To reenable Safari int egrat ion, rerun t he inst aller over t he current inst allat ion. St art t he Acrobat / Reader X
inst aller from t he original media and follow t he prompt s t o complet e t he inst allat ion.

Uninst alling an older version of Acrobat or Reader aft er Acrobat X or Reader X has
been inst alled rem oves t he AdobePDFViewer plug-in
If Acrobat X or Reader X is inst alled alongside an older version of Acrobat or Reader, removing t he older version
removes t he AdobePDFViewer plug-in.

To re-enable Safari int egrat ion, rerun t he inst aller over t he current inst allat ion. St art t he Acrobat / Reader X inst aller
from t he original media, and t hen follow t he onscreen prompt s t o complet e t he inst allat ion.

Older versions of t he AdobePDFViewer plugin can overwrit e newer versions of t he


plug-in
Having mult iple versions of Acrobat or Reader inst alled on t he same syst em can cause plug-in conflict s. For
example, suppose you have bot h Acrobat 9 and Acrobat X on your syst em and Acrobat 9 get s updat ed. In t his
case, t he Acrobat 9 version of t he AdobePDFViewer plug-in can overwrit e t he Acrobat X version of t he plug-in. To
correct t he issue, follow t hese st eps:

l Remove t he previous version of Acrobat or Reader.


l Reinst all Acrobat X or Reader X from t he original media.

Next , learn how t o view PDF documents in Windows 8 .

View PDF Document s in Safari - 143 -


View PDF Documents in Windows 8
Journey Platform | Form Builder | v5.0

This art icle provides informat ion on how t o get PDF Forms and Adobe Reader working on your comput er.

To make PDF forms work in Windows 8 you need t o make Adobe Reader t he default PDF Reader, as t he Reader
provided by Microsoft Windows does not support PDF forms.

Once you have Adobe Reader inst alled and configure please access forms wit h Int ernet Explorer in t he Windows
Deskt op UI mode. To swit ch t o Deskt op mode press t he keys Windows + D.

The Adobe Reader plugin is not compat ible wit h Int ernet Explorer running in st art screen or Met ro UI mode.

To make Adobe Reader t he default PDF Reader please follow t he inst ruct ions below:

Using Acrobat Reader to be the Default PDF viewer


Windows 8 doesn't associat e Acrobat Reader as default applicat ion for PDF files aft er inst alling it . If you want t o
open all your PDF files using Acrobat Reader by default , follow t he following st eps:

1. Right click on any PDF file and click Propert ies.


2. Click Change against t he Open Wit h opt ion t o open a new window which shows valid applicat ions asso-
ciat ed wit h PDF files.

View PDF Document s in Windows 8 - 144 -


3. Click Adobe Acrobat .

Once you have Adobe Reader inst alled and configure please access forms wit h Int ernet Explorer in t he Win-
dows Deskt op UI mode. To swit ch t o Deskt op mode press t he keys Windows + D. The Adobe Reader plu-
gin is not compat ible wit h Int ernet Explorer running in st art screen or Met ro UI mode.

Next , learn about unsupported browsers.

View PDF Document s in Windows 8 - 145 -


TransactField App Overview
TransactField App | Deprecated in 21.11

Transact Field App works wit h t he Temenos Journey Platform and enables mobile workers t o do business
whenever, and wherever, t hey require. It offers robust mobile capabilit ies and improves mobile workforce pro-
duct ivit y by opt imizing on-sit e dat a ent ry and making it easy for organizat ions t o deliver qualit y service and meas-
urable result s, as well as speed up billing. Addit ionally, organizat ions can link t he Transact Field App t o ERP1 and
CRM 2 syst ems t o deliver work t icket s, inspect ion jobs, and report forms t o a mobile workforce – anyt ime, any-
where.

Transact Field App runs on Apple and Android devices, Microsoft Windows deskt op and t ablet and synchronizes
t hem wit h mobile dat a capt ure applicat ions t hat are built using t he Temenos Journey Plat form. Int eract ion
bet ween Transact Field App and t he Journey plat form is illust rat ed wit h t he diagram below.

1Ent erprise resource planning (ERP) is t he int egrat ed management of main business processes, oft en in real-t ime

and mediat ed by soft ware and t echnology.


2Cust omer relat ionship management (CRM) is an approach t o manage a company's int eract ion wit h current and

pot ent ial cust omers. It uses dat a analysis about cust omers' hist ory wit h a company t o improve business rela-
t ionships wit h cust omers, specifically focusing on cust omer ret ent ion and ult imat ely driving sales growt h.

Transact Field App Overview - 146 -


The Transact Field App delivers t he following capabilit ies t o mobile workers:

l Allows mobile workers t o t ake t heir forms wit h t hem out in t he field and work eit her online or offline.
l Synchronizes Smart Forms aut omat ically t o t he device.
l St ores submit t ed form dat a t emporarily on t he device, complet ing t he submissions when t he user comes
online.
l Enables forms t o make use of device capabilit ies, including camera, geolocat ion (GPS), and scribble signat ure.
l Enforces securit y, including password prot ect ion and encrypt ed dat a on t he device and over t he wire.
l Provides full cont rol over which forms go t o which users t hrough permissions and roles.
l Synchronizes t o all apps when a new form or an updat ed form is deployed.

The following form t ransact ion feat ures support ed by Transact Field App and Self Service Port al. This t able should
help guide business on where t o deploy t heir form t ransact ion applicat ions.

Form Transaction Features TransactField App Web Portal

Offline Support Y N
Authenticated Access Y N

Anonymous Access N Y

Authenticated Save Y Y
Anonymous Save Y Y
Form Tasks Y Y
Form Group Access Control Y Y
Landing Page N Y
Terms & Conditions N Y
Attachments Y Y
Box Integration Y N
Card Payments N Y
eSignature and Wet Signatures N Y
Scribble Pad Signature Y Y
Email Verification Y Y
Prefill Service Y Y
Y (Available only when authen- Y (Available only when authen-
Dynamic Data Service
ticated) ticated)
PDF Form (XFA) N Y

The Self Service Port al does not support working offline or working in environment s wit h very limit ed int ernet
connect ivit y.

Next , learn how t o get started with TransactField App.

Transact Field App Overview - 147 -


Getting Started with TransactField App
TransactField App | Deprecated in 21.11

To use TransactField App , you need t o inst all it on your device or a comput er.

Installation
You can download and inst all Transact Field App from t he Apple App Store, Google Play Store, and via standalone
desktop version t hat runs on Windows 10.

To inst all Transact Field App:

1. Locat e t he Transact Field App applicat ion on t he appropriat e online applicat ion st ore.

2. Click Transact Field App for more det ails, reviews and relat ed informat ion.
3. Click Inst all ("Free") t o inst all t he applicat ion.
4. Click Transact Field App t o open t he applicat ion.

5. Configure t he applicat ion.

Get t ing St art ed wit h Transact Field App - 148 -


Don't uninst all Transact Field App from t he device, because it will delet e all local not synchronized dat a. If you
need t o uninst all it , make sure you don't have any out st anding not synchronized work on your home screen.
You should updat e Transact Field App from t he app st ore inst ead.

Configuration
When you first launch Transact Field App, you will be present ed wit h t he login screen as shown below.

If you can't see t he Creat e Account but t on, refer t o Syst em Set t ings.

Each organizat ion using Transact Field App has t heir own Journey Manager server, which st ores all t he forms and
submission and ot her relevant dat a. When you first inst all Transact Field App, it is configured t o use a st andard Trial
Server. You will need t o configure it t o point t o your organizat ion's Manager server. Your syst em administ rat or will
send you informat ion about which server you need t o use.

To configure which Manager server t o connect t o:

Get t ing St art ed wit h Transact Field App - 149 -


1. Click Connect ed t o.

2. Ent er t he URL of your server.

The default for users evaluat ing t he app on t rial is ht t ps:/ / t rial.avoka.com/ field-worker/ .

3. Click Connect .
4. Provide your Login Name and Password and click Log in or click Creat e Account .

You will only need t o configure t he server once - Transact Field App will remember t he configurat ion.

Syst em Administ rat ors can choose from a range of languages.

Get t ing St art ed wit h Transact Field App - 150 -


Don't purge t he device or change port al URL - t his will delet e all dat a from t he device so you can not recover
all unsynchronized dat a.

For more informat ion on Transact Field App configurat ion, see configure TransactField App .

Log in
Aft er launching Transact Field App, you need t o log int o t he server. There are several different ways t o obt ain your
user-name and password.

Self-regist rat ion


If securit y set t ings are configured, you may be allowed t o creat e your own credent ials in t he syst em, as described
below:

1. Click Creat e Account .


2. Ent er your username and password.

Credent ials provided t o you


Your syst em administ rat or have creat ed an account for you already and have l provided a username and password
t o you:

1. Ent er your username and password.

2. Click Log in .

Ensure t hat you are online t he first t ime you log in, as Transact Field App caches your credent ials so you can
work offline disconnect ed from t he Manager server.

Use your exist ing organizat ional credent ials


In some cases, you can be configured t o reuse your exist ing organizat ion credent ials:

1. Ent er t he usual username and password t hat you use when logging int o your organizat ional net work or a
comput er.

Get t ing St art ed wit h Transact Field App - 151 -


2. Click Log in t o access t he Transact Field App home screen. as shown below.

You will be asked t o login again aft er closing Transact Field App and reopening it , or aft er it has t imed out .

Next , learn how t o use TransactField App.

Get t ing St art ed wit h Transact Field App - 152 -


How to Use TransactField App
TransactField App | Deprecated in 21.11

TransactField App is used t o collect some dat a remot ely using online forms.

Once you have inst alled t he app on your mobile device, it is accessed by select ing t he icon on your mobile device,
as shown below:

You will be direct ed t o t he home screen in Transact Field App.

How t o Use Transact Field App - 153 -


If you are online, t he informat ion on Transact Field App will aut omat ically synchronize wit h your server. The online
st at us icon (found in t he t op right hand corner of your screen) is accessible from wit hin any screen in Transact Field
App. The app will eit her be shown in one of t he following st at es:

Synchronizing
Synchronizing - t he app is current ly synchronizing wit h t he server (several funct ions will be disabled t ill it is fin-
ished). The icon is a rot at ing animat ion and various messages display beside t he icon, such as "Synching Profile",
"Complet ing Sync", "Downloading n Templat es" or "Downloading n Prefills".

Disconnected
Disconnect ed - t he app can not current ly access t he server. Tap on t he icon t o re-est ablish t he connect ion and t o
re-sync.

How t o Use Transact Field App - 154 -


WI-FI
When connect ed t he t ype of connect ion is displayed. This will be one of WI-FI, Cell or Connect ed (for Cable con-
nect ions). Tapping on t he icon will re-sync t he app wit h t he server

Transact Field App will aut omat ically synchronize wit h Journey Manager aft er a specified number of seconds (pre-
defined in Journey Manager and visible in t he app under "Set t ings -> Preferences -> Aut o Sync Int erval") if you are
connect ed t o t he server.

However clicking on t he st at us icon allows you t o manually synchronize Transact Field App.

If you have a form open, Transact Mobile App will not synchronize. When you close t he form, it will resume
synchronizing.

Navigating around TransactField App


When you open Transact Field App, you will be direct ed t o t he Home screen. The Home screen gives you access t o
t he various capabilit ies wit hin t he applicat ion.

How t o Use Transact Field App - 155 -


How t o Use Transact Field App - 156 -
The Home screen consist s of a menu (which will eit her be locat ed across t he t op of t he screen or t o t he left of t he
cont ent area depending on t he device t ype and orient at ion) and t he cont ent area where t he 'Forms', 'Task List '
and 'Hist ory' icons are visible by default .

l Forms list s t hose forms you can access or have been allocat ed t hrough Journey Manager.
l Task List shows your part ially complet ed forms or t hose passed on t o you for complet ion.
l History list s submit t ed forms and t heir receipt numbers. You cannot access forms aft er t heir submission.
l Set t ings is for making configurat ion changes t o t he Transact Field App.
l Logout is for exit ing t he Transact Field App.

How t o Use Transact Field App - 157 -


Check Transact Field App is Connect ed - t his is displayed wit h indicat or in t op right corner (WI-FI, CELL, CABLE).
When disconnect ed for a long t ime, at t empt t o connect device t o net work t o minimize t he risk of losing your work.

If you have synchronizat ion errors and you have out st anding work (Home screen red warning box) even aft er sev-
eral sync at t empt s, upload det ailed log, as displayed below, and cont act your administ rat or.

How t o Use Transact Field App - 158 -


You can check t he Transact Field App synchronization and device logs in Journey Manager .

Next , learn about forms in TransactField App.

How t o Use Transact Field App - 159 -


Forms in TransactField App
TransactField App | Deprecated in 21.11

TransactField App allows you t o access and view a list of your forms.

Types of Forms
l Some forms may only require a handful of fields t o gat her informat ion, while ot hers will require a complex
st ruct ure t hat changes t he face of t he form depending what t he user input s.
l In t he "Top t o Bot t om" form st ruct ure, fields are simply laid out one below t he previous one and navigat ion
occurs by simply 'swiping your finger' up and down t he screen.

l In a form cont aining a wizard st ruct ure, form pages cont ain navigat ion but t ons t ypically 'Next ' and 'Previous'
t o move bet ween pages. There might also be a menu on t he left or t op side of t he form which allows an
alt ernat e way t o navigat e among form pages.
l The int eract ion wit h t he form should be t he same all devices. However, t he form may re-arrange it self
depending on t he widt h of t he screen being used: t his is called responsive behavior.

Widgets
l Most forms will cont ain t he basic widget t ypes, e.g.: a t ext field which enables t he form filler t o ent er inform-
at ion and radio but t ons or check boxes t o enable t he form filler t o make choices.
l Some widget s, such as t he dat e picker and radio but t ons, have t he same funct ionalit y on all devices but dis-
play different on mobile devices.

l Ot her widget s may only be used on a mobile device. These include:


l The camera widget wit h gallery int egrat ion which allows t he mobile form filler t o easily capt ure a pic-
t ure, such as a damaged vehicle, a pat ient 's injury, a driver's license, or a passport . Pict ures are sub-
mit t ed as part of t he form submission. The camera widget only works on devices t hat have a camera.
l The scribble signat ure field t hat allows signat ures creat ed wit h a finger or st ylus t o be collect ed right
on t he screen.

Fill out a Form


Select ing Forms eit her from t he t ab menu or t he home screen, direct s you t o a list of accessible forms wit h brief
descript ions, if available.

Forms in Transact Field App - 160 -


Tapping on Open t akes you t o t he form's first page. The t ab menu may also change t o form-specific funct ions.

Forms in Transact Field App - 161 -


The Submit icon is select ed t o complet e t he form. If t he user is online, t he form will be submit t ed and an ent ry
goes in t he Hist ory t ab, t oget her wit h a Reference number. If you are not connect ed, it is shown in t he Task t ab,
wit h t he st at us Pending. It moves t o Hist ory aft er a successful synchronizat ion.

It is possible t o suppress t he submit but t on in t he Mobile App and only submit via a form submit but t on or visa-
versa. This can be achieved t hrough configurat ion set t ings made in Composer or in Transact ion Manager.

Transact Field now support s in-form at t achment s. The form is set up wit h t he support ing widget . When select ed t he
at t achment s can be sourced direct ly from t he device's int ernal camera, from t he int ernal camera roll, or from your
corporat e Box cloud service.

The 'Close' icon allows t he form filler t o exit t he form wit h various opt ions:

Forms in Transact Field App - 162 -


l Save and Exit saves t he form int o your Task List for fut ure complet ion.

l Discard Changes does not save any changes made.


l Back t o Form t akes you back t o t he open form.

Next , learn about tasks in TransactField App.

Forms in Transact Field App - 163 -


Task List in TransactField App
TransactField App | Deprecated in 21.11

Task List cont ains any part ially-complet ed forms, which can include:

l Forms st art ed by you and t hen saved for lat er submission.


l Pre-populat ed forms assigned t o you for complet ion.
l Submit t ed forms t hat have not been synchronized.

Using the Task List


There is a maximum number of t asks t hat can appear in t he 'Task List '. This is set in Journey Manager by your
administ rat or.

Task List Sect ions: The following screen shows t hat t he user has 2 assigned t asks and one saved form in t heir
queue.

Filt ering: Tasks can be filt ered using t he Advanced filt er opt ions.

Task List in Transact Field App - 164 -


Locat ion opt ions: Tasks can be specified wit h a locat ion. This will int roduce a map opt ion t o t he t ask and will allow
t he map t o be shown t o t he user when select ed.

Task scheduled/ expiry dat es: A t ask can have dat es assigned t o it . They are shown in t he t ask t ile as below.

The dat e filt er icon will show t he scheduled t asks in t ime order.

Task List in Transact Field App - 165 -


Task Open but t on is for edit ing t he form.

Task Delet e displays t his confirmat ion message:

Task List in Transact Field App - 166 -


Check your home screen, t ask list and hist ory page for out st anding it ems. As displayed on screen-shot s you can
easily see if t here is any out st anding work. In t his case t ap on sync icon in t op right corner or on red warning box
on home screen t o synchronize.

Next , learn about a built-in camera in TransactField App.

Task List in Transact Field App - 167 -


Use a Build-in Camera in TransactField App
TransactField App | Deprecated in 21.11

There are some form funct ions available only t hrough nat ive apps, t he inbuilt camera being one of t hem. HTML
forms can have t he user upload images from t he device's camera roll as at t achment s, but t he mobile app can go
furt her and have t he user snap a phot o from t he form. The mobile App can also handle bar codes in a way not avail-
able t o HTML forms accessed t hrough a web browser.

Barcodes
The Temenos Journey plat form allows a form t o have a barcode 1 but t on, so a device camera reads a barcode and
it s dat a is ret urned t o t he form. This eliminat es t he need for a user t o submit t he form for t he barcode t o be
deciphered, because it is now done wit hin Transact Field App.

The barcode must be posit ioned over t he semi-t ransparent red line, t he device must be moved close enough t hat
t he image focuses and when t he soft ware finds t hat it can read t he image, t he user is t aken back t o t he form wit h
t he Barcode Value field filled in wit h t he value of t he code.

The barcode scanner module behaves slight ly different ly in Android and Windows phone devices: t here may not be
t he red line display (t o simulat e a laser scanner) and t he camera's focus may operat e different ly.

1Barcode is a machine-readable code in t he form of numbers and a pat t ern of parallel lines of varying widt hs, prin-

t ed on a commodit y and used especially for st ock cont rol.

Use a Build-in Camera in Transact Field App - 168 -


Use a Build-in Camera in Transact Field App - 169 -
Not e: for iPads, iPhones and iPod Touches — t he camera's aut o-focus soft ware does not work in t he usual way, by
t apping on a point in t he preview window. The only real cont rol, ot her t han physically moving t he whole device, is
t he "Cancel" but t on at t he bot t om of t he window. The user does not have a shut t er cont rol t o t ake t he pict ure in
t he usual way. Inst ead t he App goes back t o t he form when it has successfully read t he barcode.

Supported Formats
Transact Field App support s t he following AIM 1 format s:

UPC-A and UPC-E


The Universal Product Code or UPC barcode was t he first bar code symbology widely adopt ed. It s birt h is usually
set at April 3, 1973, when t he grocery indust ry formally est ablished UPC as t he st andard bar code symbology for
product marking. Foreign int erest in UPC led t o t he adopt ion of t he EAN code format , similar t o UPC, in December
1976.

1Associat ion for Aut omat ic Ident ificat ion and Mobilit y (AIM) is an indust ry t rade group t hat developed and st and-

ardized bar codes, Aut omat ic ident ificat ion and dat a capt ure.

Use a Build-in Camera in Transact Field App - 170 -


Code 93
Code 93 offers higher informat ion densit y for alphanumeric dat a t han eit her Code 39 or Code 128. Code 93 is used
primarily by Canada Post t o encode supplement ary delivery informat ion. Every symbol includes t wo check char-
act ers.

Codabar
Codabar can encode t he digit s 0 t hrough 9, six symbols (-:.$/ +), and t he st art / st op charact ers A, B, C, D, E, * , N, or T.

Dat a M at rix
Dat a Mat rix is a t wo-dimensional mat rix symbology cont aining dark and light square dat a modules. It has a finder
pat t ern of t wo solid lines and t wo alt ernat ing dark and light lines on t he perimet er of t he symbol. A t wo-dimen-
sional imaging device such as a CCD camera is necessary t o scan t he symbology. Dat a Mat rix is used for small it em
marking applicat ions using a wide variet y of print ing and marking t echnologies.

Use a Build-in Camera in Transact Field App - 171 -


EAN-8 and EAN-13
See t he UPC variant s above

Code 128
Code 128, a very high-densit y barcode symbology, is current ly used ext ensively world wide in shipping and pack-
aging indust ries. The symbol can be as long as necessary t o st ore t he encoded dat a. It is designed t o encode all 128
ASCII charact ers, and will use t he least amount of space for dat a of 6 charact ers or more of any 1-D symbology.

RSS-14
RSS (Reduced Space Symbology) is now called GS-1 Dat abar. Seehttp://www.databar-barcode.info/ Example:
Dat abar-14:

Azt ec
Part ially support ed.Azt ec Code is a t wo-dimensional mat rix symbology cont aining dark and light square dat a mod-
ules. It has a finder pat t ern of concent ric square rings cent ered on a single dark module locat ed in t he cent er of t he
symbol. A t wo-dimensional imaging device such as a CCD camera is necessary t o scan t he symbology. Azt ec Code is
used for small it em marking applicat ions using a wide variet y of print ing and marking t echnologies, and is also well
suit ed for displays of cell phones and ot her mobile devices.

Use a Build-in Camera in Transact Field App - 172 -


Code 39
Code 39, pioneered by t he defense and aut omot ive indust ries, is an alphanumeric bar code. The symbol can be as
long as necessary t o st ore t he encoded dat a. It is designed t o encode 26 uppercase let t ers, 10 digit s and 7 special
charact ers. It can be ext ended t o code all 128 ASCII charact ers by using a t wo charact er coding scheme.

ITF
ITF barcodes, also known as Int erleaved 2 of 5 barcodes, encode 14 numeric digit s and are generally used for t he
packaging level of product s. Since t hey can deal wit h high print ing t olerances, ITF is a good choice when barcodes
need t o be print ed on corrugat ed cardboard.

RSS Expanded
RSS Expanded is capable of st oring 74 numeric or 41 alphabet ic charact ers and is normally used in point of sale
ret ail applicat ions. See http://www.bardecode.com/en1/rss-expanded-examples/

Use a Build-in Camera in Transact Field App - 173 -


We support most variant s.

PDF 417
Current support needs furt her work. PDF417 is a t wo-dimensional, mult i-row symbology designed t o be scanned
by laser scanners and linear CCD scanners and used t o encode dat a files wit h hundreds or t housands of charact ers
in a laser scannable symbol. PDF417 is used in a variet y of applicat ions, primarily t ransport , ident ificat ion cards,
and invent ory management .

QR Code
QR Code is a t wo-dimensional mat rix symbology cont aining dark and light square dat a modules. It has posit ion
det ect ion pat t erns on t hree of it s four corners and feat ures direct encodat ion of t he Japanese Kana-Kanji charact er
set . A t wo-dimensional imaging device such as a CCD camera is necessary t o scan t he symbology. Alt hough init ially
used for t racking part s in vehicle manufact uring, QR Codes are now used in a much broader cont ext , including
bot h commercial t racking applicat ions and convenience-orient ed applicat ions aimed at mobile phone users
(known as mobile t agging).

This is t he recommended barcode format . Avoka t est ing shows it is t he most suit able for mobile.

Next , learn how t o view history in TransactField App.

Use a Build-in Camera in Transact Field App - 174 -


View Form History in TransactField App
TransactField App | Deprecated in 21.11

The Hist ory folder cont ains a list of submit t ed and synchronized forms and t he current st at us of t he submission.
The st at us may be updat ed by downst ream processes t o indicat e t he progress of your submission as it flows
t hrough t he organizat ion.

Using the History folder


The Hist ory List is limit ed t o a maximum number of submissions (predefined in Journey Manager).

Viewing Opt ions


The "Search" Field at t he t op right of t he screen filt ers forms by input keywords. In t he screen below we have used
"Avoka" as t he search crit eria.

There are t wo filt er swit ches t o furt her assist when many it ems exist :

'Submit t ed by', default ed t o "All", it allows users 2 opt ions: 'Me' and 'All'. This filt ers which forms become visible.

'Show unsynced' default ed t o "Yes". This allows a user t o exclude any unsynchronized it ems from t he view

Reference Number: will cont ain t he syst em reference number for t he submission e.g. child-prot ect ion-rep1.

View Form Hist ory in Transact Field App - 175 -


Tot al Payment : will cont ain eit her 'No payment ' (not required in t he form) or a payment amount .

At t achment s: will cont ain 'No at t achment s' (not required in t he form) or a list of at t achment s t hat were uploaded
t o t he form.

Submit t ed: will cont ain t he dat e and t ime of form was submission (whet her online or offline) and when t he sub-
mission act ually complet ed.

The 'View Receipt ' but t on may, or may not , be seen in t he Hist ory list ing (predefined in Journey Manager). Clicking
on it , will open t he mobile device's web browser t o display your receipt . Not e t hat you will have t o login using t he
same credent ials used t o login t o t he Mobile App. This connect s t he browser wit h t he Mobile App.

Next , learn about multiple languages in TransactField App.

View Form Hist ory in Transact Field App - 176 -


M ultiple Languages in TransactField App
TransactField App | Deprecated in 21.11

Journey Manager can be configured t o support mult iple languages, which is called localizat ion. You can log in using
localizat ion support .

Mult iple Languages in Transact Field App - 177 -


Mult iple Languages in Transact Field App - 178 -
Wit h t he Manager server configured t o enable localizat ion, t he login screen will display a select ion of languages.
The act ual choice depends on t he localizat ion set t ings of t he server. Select ing a language ot her t han t he default
changes t he chrome of Transact Field App, namely all surrounding navigat ion links and icons such as t he left -hand
menu on a device in port rait orient at ion, as shown above.

The form cont ent s are not aut omat ically t ranslat ed: each of t he forms must be localized in Composer (See t he
Composer User Guide on how t o do t his). Each form t hough, can be localized for several languages and served
according t o t he user's language select ion.

Journey Manager can be configured t o display t he app in any language of your choice. There is an aut omat ic t rans-
lat ion facilit y in Manager, based on t he Google Translat e plat form. Avoka st rongly advises t o check all t he t ext frag-
ment s in t he app wit h fluent speakers in t he t arget language t o ensure t he machine t ranslat ions are accurat e.

Next , learn about security in TransactField App.

Mult iple Languages in Transact Field App - 179 -


TransactField App Security
TransactField App | Deprecated in 21.11

This t opic discusses t he various securit y measures wit hin Transact Field App. For more informat ion, see our securit y
archit ect ure document .

Accessing Security
The Transact Field App has various levels of securit y:

l The first t ime you log in, you must be online, and your user-name and password are verified against Journey
Manager.

l On subsequent logins:
l If you are online, you will always be aut hent icat ed against Journey Manager.
l If you are offline, you can st ill log in and be aut hent icat ed against an encrypt ed st ored copy of your cre-
dent ials.

Not e: This means t hat if your server password has changed, you must cont inue using your old password offline
unt il you log in online.

l If your session is inact ive for a specified lengt h of t ime (predefined in Journey Manager), t he session will t ime
out and you will be required t o log in again.
l If you fail t o log in successfully aft er a specified number of t imes (predefined in Journey Manager), t he Trans-
act Field App dat a (including dat a not saved back t o t he server) on your mobile device will be permanent ly
delet ed.
l All t he Transact Field App dat a is securely st ored wit h 128-bit encrypt ion.
l All communicat ion is t hrough t he 'ht t ps' prot ocol t o avoid ' man-in-the-middle' at t acks.

Form Securit y
In Journey Manager, administ rat ors can set up 'Form Work Group Support ' which impact s t he st age at which a
group of users may access a form in Transact Field App.

The st ages of a form include one or more of t he following:

l New forms - visible in t he 'Forms' list ing.


l Saved or Assigned Forms - visible in t he 'Task List '.
l Complet ed Forms - visible in t he 'Hist ory' list ing

Next , learn how t o configure TransactField App.

Transact Field App Securit y - 180 -


Configure TransactField App
TransactField App | Deprecated in 21.11

You can configure TransactField App using:

1. Client set t ings in t he Set t ings t ab of Transact Field App, which you can modify.

2. Syst em set t ings t hat are configured by a Journey Manager administ rat or. You can't change t hese set t ings in
Transact Field App. For more informat ion, see configure form tiles.

Client Settings
Click Set t ings t o change configurat ion in Transact Field App.

Click Profile t o change configurat ion of t he user profile det ails.

This will cause t he following t o t ake place:

l Changed profile informat ion is updat ed in Journey Manager next t ime you are connect ed t o it .
l The informat ion t hat you see on t his page may vary depending on t he configurat ion set t ings t hat your
administ rat or has set up.
l It is also possible for you t o configure mult iple profiles, however t his feat ure is rarely enabled.

Click Preferences.

Configure Transact Field App - 181 -


l Click Sync M ode t o change it t o:

l Immediat e — which is how previous versions of t he app used t o synch. Synchronizat ion happens
aft er every form save, submit or delet e and you could not open any form for several minut es unt il
synching finished. An immediat e sync will always occur when you login for t he first t ime, change serv-
ers or aft er a local st orage purge.
l Background (default ) — Synchronizat ion now happens at regular t ime int ervals (default is 30
seconds), not every t ime forms change as per t he previous opt ion. You can also delet e mult iple forms
wit hout t he need t o wait for synchronizat ion aft er t he delet ion of each form.

l M anual — synchronizat ion happens only when you init iat e it by t apping on t he sync but t on.This
mode is for sit uat ions when you are working offline, for example, and don't want your work being fre-
quent ly synchronized.
l Click Sync Wit h Wi-Fi Only t o conserve mobile dat a bandwidt h.

l Select a form display t ype from t he Form Display Type dropdown list , which can be changed from Tablet
t hough t his is not recommended if you are on a mobile device.
l Click Purge Local St orage t o delet e Transact Field App dat a st ored on your mobile device. This should be
used wit h caut ion and only as a last resort when corrupt ion of local dat a may have occurred.

Click Password t o change your password.

Aft er you click Change , you will be t aken t o t he Transact Field App login screen.

Click Syst em Info t o view useful informat ion t o diagnose problems wit hin Transact Field App.

Click Upload t o populat e t he Transact Field App Client Log in Journey Manager t he next t ime you are connect ed t o
t he server.

Configure Transact Field App - 182 -


Don't t urn sync mode t o manual wit hout a good reason. Background sync mode is t he default set t ing and will syn-
chronize t he app wit h t he server regularly (usually every 30 seconds depending on Manager set t ing). It 's import ant
t o have your work regularly backed up. Manual sync mode can be used t emporarily under very unst able net work
condit ions. Ensure you swit ch back t o Background sync mode in regular condit ions.

System Settings
There are a number of server side Transact Field App Port al Propert ies which can be configured by syst em admin-
ist rat ors.

Setting Description Default

The auto sync interval in seconds


Auto Sync Interval during which a sync action is per- 30
formed.
Box Client Id The client key for Box <key>
Box Client Secret The secret key for Box <key>
Interval in seconds specifying
Client Auto Save Interval how often client automatically 60
saves open forms.
The TransactField App should
Client Delete DB After Max delete the local database after
3
Login Attempts the maximum number failed
logins have been attempted.
Client Deprecated Versions Comma separated list of T-Field string

Configure Transact Field App - 183 -


versions which will be forced to
update.
Client HTTP request timeout in
Client HTTP timeout 180
seconds.
The client task list and history
Client Group Filter Default Group
group filter default setting.
Number of lines which will be per-
Client Log Length 1000
sisted in log file on device.
Settings which turns on location
logging in sync message. When
Client Log Location enabled, sync message will False
include user latitude and lon-
gitude.
The user inactivity duration in
minutes after which the client is
Client Session Timeout logged out. The default zero 5 Minutes
value means do not log the user
out.
The predefined syncing mode for
Client Sync Mode users. If Editable, user can Editable
choose the mode on device.
Settings which allow client
syncing on Wifi connection only.
Client Sync WIFI Only Editable
If Editable, user can choose set-
ting on device.
Use native XML parser on iOS
Client Use Native XML Parser True
devices.
Email message for 2FA user
Email 2FA Message
account enrolment.
Email subject for 2FA user
Email 2FA Subject
account enrolment.
Email subject for submitted form
Email Form Receipt Subject "Form Receipt"
receipt email.
"You recently submitted a
<form name> at <portal
Email message for submitted name>. Your submission ref-
Email Form Receipt Message
form receipt email. erence number is: ...... Please
see the attached PDF for a copy
of your form submission. "
Lost password reset email sub- "Transaction Manager Lost Pass-
Email Lost Password Subject
ject. word"
Lost password reset email mes- "Thank you, an email with your
Email Lost Password Message
sage. new password will be sent to

Configure Transact Field App - 184 -


you in a few minutes. Please
check your email SPAM folders if
you don't receive an email, also
note if you don't have a valid
account you will not receive an
email."
<span/> # if ($jobPro-
cessMessageText) <p> ${jobPro-
cessMessageText} </p> # else
<p> ${user.fullName} your form
Email Submission Status Mes- Email subject for submission pro-
tracking code ${sub-
sage cessing status update
mission.trackingNumber}
status has been updated to:
${submission.processingStatus}
</p> # end
Email subject for submission pro- ${submission.formName}
Email Submission Status Subject
cessing status update Update
Email Template HTML Email border template HTML HTML template code
Specify the location of the Email
Email Template Mode "Use Email Template HTML"
HTML border template to use.
"Thank you, an email with your
new password will be sent to
you in a few minutes. Please
Password reset confirmation mes- check your email SPAM folders if
Forget Password Message
sage to user. you don't receive an email, also
note if you don't have a valid
account you will not receive an
email."
Client maximum time allowed to
Form Load Timeout 120000
load a form in milliseconds.
Google API Key Google API Services Access Key
The maximum height or width
(whichever is bigger) in pixels.
Otherwise the image will be re-
sampled to the same aspect ratio
with the maximum dimension
Max Attachment Pixel Dimen- the specified value. The default
800
sion value, "0", means that images will
not be resampled. Note: unres-
ampled images in viewers that do
not honour EXIF data, Windows
Photo Viewer for example, may
need rotation to be in the correct

Configure Transact Field App - 185 -


orientation. The resampling fea-
ture in Transaction Manager will
take EXIF orientation into
account.
The max number of Submission
Max Client History Submissions History records the client can 60
download from the server.
The max number of Task records
Max Client User Tasks the client can download from the 30
server.
The server sync logging level. If
Sync Logging Level 'Detail' enabled then all sync calls Summary
will be logged.

A number of t hese propert ies cont rol t he Transact Field App's behavior and t he client synchronizes wit h t hese:

l Aut o Sync Int erval


l Client Sync Mode
l Client Sync WiFi Only
l Client Delet e DB Aft er Max Login At t empt s
l Client Session Timeout
l Max Client User Tasks
l Max Client Hist ory Submissions

Disable the Standard Submit or Attachment Button


To disable t he st andard Submit or t he At t achment but t on, go t o N ut s & Bolt s > Form Opt ions > Generat ion
Opt ions > Propert ies > HTM L Generat ion > TFIELD.

Why would you use t hese opt ions:

If a form has no mandat ory fields, it would be useful t o place t he Submit but t on at t he end of t he form t o prevent
t he form filler submit t ing t he form t oo early. In t his case, you would disable t he mobile app submit but t on by
unchecking t he opt ion, and place a submit but t on on t he form.

If you had a form wit h no at t achment s, it is useful t o remove t he at t achment but t on from t he applicat ion t o min-
imize confusion. Addit ionally, if you have elect ed t o use t he camera or gallery widget but t on in t he form, and prefer
your users t o use t he in form opt ions, you may wish t o un-check t his opt ion.

Configure Transact Field App - 186 -


Next , learn how t o use TransactField App .

Configure Transact Field App - 187 -


Configure Form Tiles
TransactField App | Deprecated in 21.11

TransactField App allows you t o configure form t iles and dat a ext ract s from forms. Form t iles cust om informat ion
is useful for fast er navigat ion, filt ering and sort ing of saved tasks, forms and history items, especially when t here
are many it ems. This is most ly accomplished from Journey Manager . You can configure Transact Field App t o
achieve t he following.

Extract a Customer Email from Form Data to Display it in a Task List


To show a cust om field on a Transact Field App t ile from a form:

Configure t he form XM L dat a ext ract s in Journey M anager:


1. Log on t o Journey Manager

2. Select Form > Dat a Config > Form Dat a Ext ract M apping
3. Name t he field Email and ent er t he XPat h 1 t o t he field in form dat a XML

Configuing t he field for Transact Field App


Transact Field App needs t o know what is available and how it should be displayed in t he form t iles

1XPat h (XML Pat h Language) is a query language for select ing nodes from an XML document . In addit ion, XPat h

may be used t o comput e values (e.g., st rings, numbers, or Boolean values) from t he cont ent of an XML document .
XPat h was defined by t he World Wide Web Consort ium (W3C).

Configure Form Tiles - 188 -


l A t iles.json file needs t o be creat ed. This shows t he minimal configurat ion t o display t he ext ract ed email field
for t he appropriat e form. The field will be displayed wit h "My Email" label.

[
{
"formCode" : "avoka-showcase-form5",
"views" : [{
"type" : "saved",
"fields" : [{
"label" : "My Email",
"value" : "formDataMap.email"
}]
}]
}
]

l In t he example above t he field is named "Email" in Manager and is accessed in t iles.json file as
formDat aMap.email. Not e t hat Ext ract Field Names are t ransformed t o camel case not at ion so a field called
"Delivery Email" would be accessed as formDat aMap.deliveryEmail
l t he last st ep is t o upload t iles.json file t o Manager in T-Field port al

Synchronize t he Device wit h M anager


This will download dat a ext ract rules and t he tiles.json t o device.

l open t he form and ent er e-mail address int o mapped field


l save and close t he form
l The email address from t he form will be displayed in t he t ile as below

Extract a Date Field and Format it


Dat e fields need special handling as t hey are encoded in XML in a fixed format . To display t hem in more user
friendly format follow t hese st eps:

Configure Form Tiles - 189 -


l Ext ract dat e field from Manager
l Name it Dat e by following t his inst ruct ion: Form > Dat a Config > Form Dat a Ext ract M apping

l Updat e t he tiles.json t o display t he new field on t he t ile, for example a Visit Dat e label, as shown below

[
{
"formCode" : "avoka-showcase-form5",
"views" : [{
"type" : "saved",
"fields" : [{
"label" : "My Email",
"value" : "formDataMap.email"
}, {
"label" : "Visit Date",
"value" : "formDataMap.date",
"dateFormat" : "EEE, d MMM yyyy"
}]
}]
}
]

l The dateFormat field specifies date format string, which is similar t o Java's SimpleDateFormat.

Cust om ize a Tit le of a Tile


Transact Field App shows a form name in t he t it le by default . You can change it wit h an expression in tiles.json
file by adding t he following line "title" : "Customer {{formDataMap.email}} visited on
{{formDataMap.date|date:'EEE, d MMM yyyy HH:mm:ss '}}".

Configure Form Tiles - 190 -


[
{
"formCode" : "avoka-showcase-form5",
"views" : [{
"type" : "saved",
"title" : "Customer {{formDataMap.email}} visited on {{formDataMap.date|date:'EE
MMM yyyy HH:mm:ss '}}",
"fields" : [{
"label" : "My Email",
"value" : "formDataMap.email"
}, {
"label" : "Visit Date",
"value" : "formDataMap.date",
"dateFormat" : "EEE, d MMM yyyy"
}]
}]
}
]

Hide Default Fields


l Default fields such as "St at us", "Organizat ion", "Last Modified" or all t ask relat ed fields can be hidden.
l This can be achieved by specifying hiddenFields in t he tiles.json, as shown below.

Configure the History Screen Tiles Differently to the Task List and Saved Form
Tiles
l Separat e t emplat es can be creat ed for saved forms, t asks, and hist ory it ems.
l These require a separat e view in t he tiles.json, as shown below.

Reference
l Default fields such as "St at us", "Organizat ion", "Last Modified" or all t ask relat ed fields can be hidden.
l This can be achieved by specifying hiddenFields in t he tiles.json.

Support ed Views
l In t he tiles.json file for each form, mult iple view t ypes can be specified. If a view wit hout t ype exist s, it will
be used as default for all views. Any subsequent views will override t he default .
l saved
l t ask
l hist ory

Configure Form Tiles - 191 -


Tem plat e Values
l Transact Field App allows access t o informat ion not only from submission xml but also from submission and
form met adat a:
l formDat aMap
l form
l submission

Special dat e value handling


l dat es are by default st ored as yyyy-MM-dd in submission xml
l t o allow for more friendly format s in form t iles, users can specify dateFormat for fields and also for t it les
(see t iles.json example)

l dat e format uses angular dat e filt er for format t ing which is very close t o Java SimpleDat eFormat format but
doesn't support few opt ions (era, long t ime zone name):
l https://docs.angularjs.org/api/ng/filter/dat
l https://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html

Det ailed Example of t he tiles.json file

Configure Form Tiles - 192 -


[
{
"formCode" : "transact-showcase-fm",
"views" : [{
"title" : "Saved title: Customer {{formDataMap.deliveryEmail}} visited
{{formDataMap.myDate|date:'EEE, d MMM yyyy HH:mm:ss Z'}}",
"type" : "saved",
"fields" : [{
"label" : "Delivery Email",
"value" : "formDataMap.deliveryEmail"
}, {
"label" : "Form Name",
"value" : "submission.formName"
}, {
"label" : "Visit Date",
"value" : "formDataMap.myDate",
"dateFormat" : "EEE, d MMM yyyy HH:mm:ss Z"
}, {
"label" : "Address",
"value" : "formDataMap.address"
}],
"hiddenFields" : ["Last Modified", "Status", "Attachments", "Submitted"]}, {
"title" : "Task title Customer visited {{formDataMap.myDate|date:'dd MM yyyy'}}"
"type" : "history",
"fields" : [{
"label" : "Delivery Email",
"value" : "formDataMap.deliveryEmail"
}, {
"label" : "Form Name",
"value" : "submission.formName"
}, {
"label" : "Visit Date",
"value" : "formDataMap.myDate",
"dateFormat" : "dd.MM.yyyy"
}, {
"label" : "Form Version",
"value" : "form.currentVersionNumber"
}
],
"hiddenFields" : ["Last Modified", "Status", "Attachments", "Submitted"]
}]
}
]

You can hide t he following fields:

Configure Form Tiles - 193 -


[
/**drafts*/
"Last Modified",
"Organization",
"Status",
/**tasks*/
"Scheduled",
"Complete By",
"Assigned To",
"Created",
"Address",
"Latitude/Longitude",
"Message",
/**history*/
"Processing Status",
"Status Updated",
"Reference number",
"Attachments",
"Total Payment",
"Submitted",
"Completed"
]

Next , learn how t o use TransactField App .

Configure Form Tiles - 194 -


Composer User Guide
Composer | Form Builder | v4.3 & Higher

This User Guide aims t o describe t he available Composer funct ionalit y in det ail. It is comprised of descript ions of
Composer funct ionalit y as well as "How To" art icles t hat st ep t hrough set up procedures. Links and references are
provided t hroughout t he guide t o ot her Avoka Knowledge Base Spaces t hat describe t he funct ionalit y in more
det ail.

Throughout t his administ rat ion guide, we use t he not at ion "->" t o indicat e a locat ion in t he int erface t o carry
out a t ask.; for example: "Access Cont rol -> Users -> New Syst em User"
Angle bracket s ("< >") indicat e t he general name, for example "<Account >" for "Foobar Account " or "My
Account " or what ever.

Next , learn how t o get started with Composer .

Composer User Guide - 195 -


Getting Started in Composer
Composer | Form Builder | v4.3 & Higher

Before you can st art using Composer, you must login in. There are various user roles and t here is a well defined
hierarchy of document s (or forms) int o Organizat ions and Project s t hat define user access. For more informat ion
on Access Cont rol, see Composer Administ rat ion Guide.

Login Page
The composer login page present s t he user wit h a st andard user name and password dialogue as well as several
links t o assist t he user in get t ing st art ed. One of t he link is t he request password reset t hat sends an email con-
t aining a link wit h a t oken t o an email address specified in t he User name field so a user can reset a password. This
is shown when t he user t ries t o reset t he password.

Welcome Page
The main area of t he Welcome page is divided int o sect ions described below. These are int ended t o make it easy
for users t o navigat e around t he product . This example is for an administ rat or and t hus may cont ain opt ions not
available t o ot her users.

Recent Form s
This sect ion ret ains a list of most recent ly used forms. These are kept across sessions. The default saves t he last 4
forms viewed but can be configured t o st ore up t o 10. The configurat ion can be changed from t he "Opt ion-
s=>General" link at t he t op of t he Composer Screen.

Get t ing St art ed in Composer - 196 -


Act ions
This is where you can change your password or search for a form.

Form Search allows a user t o search for a forms in Account s and Organizat ions t hey have permission t o access.

Get t ing St art ed in Composer - 197 -


Product Inform at ion
These are quick links t o document at ion, releases not es, Avoka Quest ions and t he Avoka Support Port al.

News
The Composer administ rat or can post news of releases, advisories or ot her import ant informat ion. This is done via
Syst em=>Deployment .

Hom e M enu Choices


Workspace
The heart of Composer's user int erface where all t he design work t akes place.

Get t ing St art ed in Composer - 198 -


Access Cont rol
Used t o cont rol Composer Securit y and is only visible t o users wit h t he appropriat e access levels.

Syst em
This is used t o configure Composer and is only visible t o users wit h t he appropriat e access levels.

Top of Page Links

Opt ions
The Opt ions dialog allows a user t o set t he default configurat ions for t heir Composer session. The following t able
list s t he opt ions:

Category Function Default Description

These are General Configurat ion


General
Opt ions
Render PDFs using Composer Options: Composer, Adobe LiveCycle, XDP
Setting that will ignore the form checkout
Allow Checkout Override Off status on Open/Preview only. Save/Publish
will honor the checkout state.
By default Composer pings the server to
Disable keep alive pings Off
avoid the session being closed.
The number of Recently Accessed Forms
Recent List Size 4
retained on the Welcome Screen
Clear Recently Used List - Clears the List
Occasionally the Cursor can remain as busy.
Force Reset Busy Cursor
- This will reset the cursor back to its original
state.
Opt ions t o Configure t he designer
Designer
screens
By default internal fields are hidden on form
Show Internal Fields Off
open. This will override that setting.
By default the field label is shown in the tree.
Show Names on Struc-
Off This setting will switch to showing the
ture Tree
Internal Name of the Field.
This will enable the Form Parts functionality
Enable Parts on Stand- in standard projects rather than requiring a
Off
ard Projects Parallel Development Project (version 4.2 or
later).
Expand Transparent Off This makes the contents of imported trans-

Get t ing St art ed in Composer - 199 -


parent parts visible in the structure tree (ver-
Parts
sion 4.2 or later).
Allows t he manipulat ion of t he local
Cache Cache size. This can assist wit h per-
formance of t he UI
Organization Cache Size 3 How many Organizations can be cached
Current Cache Contents - Show the Organizations that are in the Cache
Clear Cache - Clears the current organization cache
This setting will display a pop up with the
Show Load Times Off
form load time in milliseconds.
Configurat ion set t ings when t he edit or
Edit ors
dialogs are opened.
Show Advanced Prop- By selecting this option the advanced prop-
Off
erties erties of the field are shown
Form
Default Units Allows selection of default units in the editor
Units
Hide Script Editor Tree Forces the script editor tree to NOT be built
Off
at startup at startup.
Dat a
M odel
Link Data Model Trees On Links tree selection in data model view.
Cont rols how t he wireframe looks and
Wireframe
works.
Changes the default wireframe zoom. This
Default Zoom Factor 110%
can be adjusted when the form is open.
Show Measurement Shows approximate measurements of a field
Off
Tooltips dimensions as a tooltip in the wireframe
Freeze Wireframe Off Will set off wireframe redraws
Controls whether the wireframe will use its
Use embedded fonts On
embedded font
Auto Refresh Prob- When selected the wireframe will auto refresh
On
lems/Dependencies Problems and dependencies automatically
Check Errors Before Pre-
Off
view
This option can restrict the wireframe from
Show Wireframe on
On being shown at form open. This can assist
Form Open
with opening times on large forms.
Setting it on will show a border around an
Show Empty Block
On empty block. This makes it easy to drop in
Border
items.
Cont rols whet her Help Tips are dis-
Help Tips
played
Field Set t ings used wit h t he Field Import Func-

Get t ing St art ed in Composer - 200 -


Import t ion
Show Field Import Dia-
On
log
Create New Field
Instead of Updating On
Existing Field

Feedback
This link shows t he dialog t hat provides informat ion t hat includes form det ails, t he Composer build used, t he
search pat h det ails and t he browser det ails.
This informat ion can be copied and past ed int o support Jiras or emails.

Online Docum ent at ion


This links t o t his guide in HTML. It is also a dropdown menu (click on t he arrow t o t he right of "Online Docu-
ment at ion") and you have t he following choice:

l Online Document at ion - The link is set under Syst em=>Deployment propert ies
l Release Not es - Link t o Avoka knowledge base. The link is set under Syst em=>Deployment propert ies
l Javascript Document at ion (giving t he Composer Framework — see Scripting)

l About Avoka Transact Composer (Specifies, version number, build dat e and number and build environment )

Logout
Logs t he user out .

Get t ing St art ed in Composer - 201 -


Accessibility for Composer Developers
Composer | Form Builder | v4.3 & Higher

Accessibilit y can be considered t he degree t o which elect ronic services and product s can be accessed by t he largest
number of users possible. Alt hough, oft en focused on disabled people using assist ive t echnology including screen-
readers, t his is relevant t o all people, including t hose t hat are on slow broadband, using non mainst ream operat ing
syst ems, using a mobile device or speaking non-nat ive languages.

Since 1999 t he primary int ernat ional st andard for websit e accessibilit y has been t he Web Cont ent Accessibilit y
Guidelines (WCAG) developed by t he W3C. This has formed t he basis for accessibilit y legislat ion around t he world,
including Sect ion 508 in t he US and t he 2000 Government Online St rat egy in Aust ralia.

Many Avoka client s care about accessibilit y because it is good for societ y and, in some sect ors, compliance has
been legislat ed.

Avoka Composer provides as much of t he basic, field-level accessibilit y as possible aut omat ically. For inst ance, link-
ing a field’s capt ion t ext wit h it s input . This document provides a guide of t he addit ional t asks t hat a Composer
form developer must perform t o achieve maximum accessibilit y.

Checklist :
1. Use Sequential page navigation
2. Use Section headers
3. Mark-up lists
4. Add alternate text to images
5. Do not use Background Image
6. Use Fieldsets
7. Use Caption Placement Top
8. Use Described By
9. Check color contrast
10. Do not use Placeholder Text
11. Do not use a separate Text for field captions
12. Do not disable anything

1. Use sequent ial page navigat ion


St ruct ure > [Root ] > Edit Propert ies > Policies > Wizard Validat ion Mode

Accessibilit y for Composer Developers - 202 -


This policy propert y defines how validat ion and navigat ion operat es for t he form as a whole. Sequent ial page nav-
igat ion is bet t er for accessibilit y as it provides a simpler experience where users navigat e t hrough t he form sequen-
t ially, one page at a t ime, and does not allow t hem t o progress unt il t he current page passes validat ion.

Unconst rained page navigat ion allows t he user t o navigat e t o any page, in any order which can be confusing (par-
t icularly on mobile devices) and does not perform full form validat ion unt il t hey at t empt t o submit from t he final
page. Having t o t hen pot ent ially correct issues across mult iple pages can be a challenge.

2. Use sect ion headers


St ruct ure > Sect ion > Edit Propert ies > Propert ies > Sect ion Header > Sect ion Header Policy

Correct ly marked-up headings are provided aut omat ically by t he form header and sect ions at levels 1, 2 and 3. Use
sect ion headers and do not manually creat e t hem wit h t ext object s.

3. M ark-up list s
List s t hat are creat ed in t he rich t ext edit or are visually represent ed as a list but are not marked-up correct ly in t he
HTML. See t he example below t hat demonst rat es a t echnique for providing marked-up list s.

Example list st ruct ure:

Accessibilit y for Composer Developers - 203 -


a) Test List - Creat e a rich t ext placeholder for t he list wit h no cont ent

b) List Value - Creat e a dat a field wit h t he list HTML mark-up as t he init ial field value:

c) set List Cont ent - Creat e a general purpose business rule t hat t riggers on Init ializat ion and uses JQuery t o set t he
List Value HTML ont o t he Test List :

4. Add alt ernat e t ext t o im ages


Image > Edit Propert ies > Accessibilit y > Toolt ip

Accessibilit y for Composer Developers - 204 -


Images can be informat ive or decorat ive. The form developer must use t heir judgement on whet her an image
should be t reat ed as decorat ive or informat ive:

Decorat ive images do not convey informat ion t o t he user and are t ypically used t o make t he form more visually
at t ract ive by adding visual component s such as separat ors and t ext ured backgrounds. An image is also considered
decorat ive if it conveys informat ion t hat is also fully provided by surrounding t ext . Decorat ive images should not
have alt ernat e t ext .

Informat ive images do convey informat ion t o t he user t hat is not provided by surrounding t ext and should have
alt ernat e t ext t hat conveys t he meaning or cont ent of t he image. The alt ernat e t ext need not be a lit eral descrip-
t ion of t he image and should be as succinct as possible.

5. Do not use background im ages


Component > Edit Propert ies > Propert ies > Cust om St yling > Background Image [HTML]

Informat ive images should not be used as a background image as it is not possible t o provide t hem wit h alt ernat e
t ext and some browsers remove background images when put in high cont rast mode. It is fine t o use decorat ive
images as a background image.

See sect ion 4. Add alternate text to images, for a definit ion of informat ive and decorat ive images.

6. Use fieldset s
Fields t hat are not st and-alone and only make sense in t he cont ext of a group of fields should be cont ained wit hin
a fieldset . For inst ance radio but t ons, t elephone region code and number and address fields:

Accessibilit y for Composer Developers - 205 -


A meaningful descript ion of t he group should be provided in t he fieldset ’s Legend Text which is usually displayed
on-screen as a heading:

Fieldset > Edit Propert ies > Propert ies > Accessibilit y > Legend Text [HTML]

The legend t ext will be used by assist ive t echnology t o inform t he user of cont ext for fields wit hin t he group. For
inst ance, t abbing t o a radio but t on whilst a screen-reader is running might inform t he user t hat t hey are current ly
focused on a radio but t on wit h capt ion ‘Yes’ for t he fieldset ‘Would you like t o purchase insurance?’.

Wit hout t he fieldset , t he user would only be informed t hat t hey are focused on a radio but t on wit h capt ion ‘Yes’
which is clearly insufficient . To avoid repet it ion, t he majorit y of assist ive t echnology will only inform t he user of t he
fieldset legend for t he first field focused wit hin t he group, regardless of which field t hat is i.e. not necessarily t he
first field in t he group by posit ion.

7. Use capt ion placem ent t op


Field > Edit Propert ies > Propert ies > Capt ion > Capt ion Placement

Accessibilit y for Composer Developers - 206 -


‘Capt ion placement t op’ is best for accessibilit y as it keeps t he capt ion closest t o it s field. In part icular, t his makes it
easier for users of magnifier soft ware t o locat e t he field associat ed wit h a capt ion wit hout having t o move t he
cursor t oo far and reduces t he chances of finding t he wrong input by mist ake.

Top placement also provides t he best scan line bet ween capt ions and input s for fields. A scan line refers t o eye
movement along a st raight line as a sight ed user browses a form or searches for a specific field. Ot her capt ion place-
ment result s in addit ional, unnecessary movement as t he sight ed user’s eye jumps around bet ween capt ions and
input s t hat are less aligned.

8. Use described by
Field > Edit Propert ies > Propert ies > Accessibilit y > Described By [HTML]

Accessibilit y for Composer Developers - 207 -


Use t he ‘described by’ propert y on fields t o provide addit ional informat ion t o users of assist ive t echnology t hat is
not required t o be displayed on-screen for sight ed users. This is a useful t echnique for helping users of assist ive
t echnology work wit h non-st andard fields where t he behaviour is obvious t o sight ed users e.g. a field will aut o-for-
ward focus t o t he next field once it has been filled-out and so t he user need not t ab.

‘Described by’ cannot be used t o reference anot her visible component on t he form.

9. Check color cont rast


Colors used in a form must meet accessibilit y requirement s for cont rast of foreground and background object s for
part ially sight ed and color-blind users.

You can check your form using a cont rast t ool such as t he colour contrast analyser from Vision Aust ralia.

10. Do not use placeholder t ext


Field > Edit Propert ies > Propert ies > Accessibilit y > Placeholder Text [HTML]

Placeholder t ext is t he light grey t ext t hat is displayed in a field unt il dat a is ent ered at which point it is removed.

Placeholder t ext is not accessibilit y compliant due t o t he lack of consist ent support in assist ive t echnology. Some
assist ive t echnology ignore placeholder t ext ent irely. Some always not ify t he user of t he placeholder t ext regard-
less of whet her t here is dat a in t he field or not and makes no different iat ion bet ween t he placeholder t ext versus
t he ent ered dat a. Only a small proport ion of assist ive t echnology do t he correct t hing in only not ifying t he user of
t he placeholder t ext when it is visible on-screen.

11. Do not replace field capt ions wit h t ext


Field > Edit Propert ies > Propert ies > Capt ion > Capt ion Text

Accessibilit y for Composer Developers - 208 -


It can be t empt ing t o hide t he built -in field capt ion and creat e a replacement wit h a separat e t ext object in order t o
achieve layout s such as a capt ion t hat is wider t han it s field.

Alt hough, t his approach may look ident ical on-screen t o sight ed users, t his does not provide t he browser func-
t ionalit y where select ing a capt ion set s focus t o it s field.

To resolve t he specific case of long capt ions, it is bet t er for accessibilit y t o use a combinat ion of short ening t he cap-
t ion, widening t he field and moving non-crit ical informat ion from t he capt ion t o a popover t oolt ip or a message
box locat ed close t o t he field.

12. Do not disable anyt hing


Disabled form cont ent is problemat ic for accessibilit y and should be avoided.

Typically, disabled cont ent is visible on-screen for sight ed users but not act ive and visually indicat ed as disabled
wit h grey-out st yling. Disabled cont ent is not discoverable for uses of assist ive t echnology which result s in a mis-
mat ch of informat ion. For inst ance, in t he case of disabling t he cont inue but t on for a page unt il cert ain act ions are
performed a sight ed user can see t hat t he but t on is disabled and may be able t o deduce t hat t hey need t o per-
form an act ion before it will be enabled.

However, a user of assist ed t echnology will have no knowledge of t he exist ence of t he cont inue but t on at all which
is likely t o lead t o confusion of what is expect ed for t hem t o progress.

In t his case, it is bet t er for all users t o keep t he cont inue but t on enabled and inform t he user what is expect ed of
t hem wit h error messaging if t hey at t empt t o progress wit hout complet ing necessary act ions.

The ot her common alt ernat ive approach t o disabling component s is t o hide t hem.

Accessibilit y for Composer Developers - 209 -


The Composer Workspace
Composer | Form Builder | v4.3 & Higher

The Workspace in Composer is t he cont ainer for all forms and t heir environment s. Libraries are int egrat ed int o t he
workspace and t heir allocat ion and sharing across project s are now dynamic and efficient . The implement at ion of
compat ibilit y wit h older versions, of pat ching and of service pack inst allat ion is all available t o aut horized users.

The Hierarchy and Environment

Workspace Hierarchy

The Workspace divides int o "Account s". Account s can have several "Organizat ions". Each Organizat ion has several
"Project s". Each Project has it s set of forms. In t his model, forms are not dynamically shared bet ween project s but
can be bet ween Organizat ions.
When designers require personal workspaces, t hey do t his at t he Project level.
All forms can be saved t o version cont rol and can be rolled back t o a previously versioned revision, if required. If
designers delet e forms, t hey are act ually not delet ed from t he Composer dat abase and can be recovered.
If a form is open in Composer by one designer, ot her designers are locked out . There is a form lock override avail-
able however t his needs t o be used wit h caut ion t o ensure changes are not lost .
Each Account can have a number of Libraries which are dynamically shared at t he Organizat ion and Project levels.
Administ rat ors are free t o allocat e whole Libraries as t hey see fit , or t he component s of Libraries.

The Composer Workspace - 210 -


M erit s of t his St ruct ure
Composer caches Organizat ions allowing fast er navigat ion t imes around t he Workspace. By default , Composer
caches 3 organizat ions. This is configurable using t he Opt ions=>Cache.

Bot h Global Libraries and Access Cont rol sit above t he Account hierarchy. Global Libraries can be shared dynam-
ically across Account s, allowing — if desired — pat ching t o t hese Global element s wit hout int ervent ion by end
users or administ rat ors.
Users can be given access t o several Account s, and wit hin t hose be given access t o different funct ions. Libraries are
shared at t he Account level, and t he one Account can have several Libraries so t hat branding can be cont rolled
across t he Ent erprise in bot h similarit y and difference from depart ment t o depart ment .

The Composer Hierarchy


Account s
An Account is t he t op level of t he Composer t ree hierarchy. It holds one or more Organizat ions which in t urn can
cont ain one or more project s. Most users only belong t o one Account .

The screen below shows t he Account "Avoka RnD". It houses several Development Organizat ions.

Organizat ions
Organizat ions are a way of split t ing up t he account int o ent it ies t hat mat ch t he client 's business. For example t his
may be by depart ment or dist inct business unit s. Users can belong t o one or more organizat ions depending on
t he way t heir permission set . The following screen shot shows t he organizat ion "Development 42". It has expanded
t o display it s underlying project s.

There are several capabilit ies t hat are accessed at t he organizat ion level.

Asset Type Descript ion

A gr ouping for for ms. To cr eate a new pr oject, click on the Cr eate New Pr oject but-
Pr ojects
ton.

A list of style sheets available for your or ganization. Many of the standar d style
sheets will be inher ited fr om Composer default style sheets, and these cannot be
Style Sheets
modified. If you want to modify one of these style sheets, you must fir st make a copy
of it. For an explanation of style sheets, see this topic: Overview

The Composer Workspace - 211 -


Custom types ar e the widgets or blocks that have been cr eated for your or gan-
ization. You can modify or delete these types if you have the r equir ed pr ivileges.

Some types available to your or ganization ar e not modifiable. This ar e either types
that ar e inher ited fr om Composer defaults, or complex types that ar e not editable
using the standar d block editor . You can view these types by clicking the "Include non-
Custom Types
editable types" checkbox.

Warning: Be ver y car eful of modifying or deleting custom types, as they may be in
use by multiple for ms. Always per for m an impact analysis befor e modifying. If in
doubt, make a copy of the type r ather than modifying it. For mor e infor mation on
Impact analysis, see this topic: Im pact Analysis

A r esour ce can be any file used in your for ms. Typically these ar e images and
Resour ces
JavaScr ipt libr ar ies.

A template allows you to customize the for m-design exper ience and the for ms that
Templates
ar e pr oduced by Composer . This is for advanced user s only.

Administration This contains the next 3 sub-tabs

Assigned Users

A list of user s assigned to this or ganization. Administr ator s can cr eate new user s, add
and r emove user s fr om the or ganization, and change their r oles.
User s ar e global to the Composer instance.
Note : Depending on the way that your or ganization is set up, you may need to add
user s to individual pr ojects as well as to the or ganization.
Note : It is str ongly suggested to use a user 's email addr ess as their user -id. This
avoids possible name conflicts.

Property Sets

This is a list of the set of pr oper ties that can be used on the Bulk Editor page.

Settings

This tab displays sever al settings about the cur r ent user and or ganization, including:

l publish t arget s
l t he abilit y t o perform impact analysis on widget s, blocks, st yle sheet s, and t em-
plat es.
Problems This shows any issues in the organization.

The Composer Workspace - 212 -


Projects
A project is a convenient cont ainer of a number of forms - usually forms get creat ed in groups or bat ches, and a
project is a simple way t o group t hem. Rest rict ions can be placed on which users have access t o each project .
Click on t he Creat e New Project but t on at t he organizat ion level t o creat e a project , and follow t he wizard st eps.

There are several capabilit ies t hat are accessed t hrough project level t abs:

Asset Descript ion

A list of for ms in this pr oject. You could double-click on the for m in the list in or der to
open it.
You can per for m a number of actions on a for m:
Open For m: allows for m editing. You can do this by clicking the icon, or by double-click-
ing.

Open For m - No Wir efr ame: Opens a for m for editing with no wir efr ame shown. This is
especially useful for lar ge for ms that may take a long time to open.
Update For m Details: Modify a for m's pr oper ties, including its name and descr iption.
Save As: Make a copy of a for m.
Delete For m.
Pr eview For m. The r endition types and defaults ar e contr olled by the template being
used.
For ms Unlock for m. (Administr ator s only.) This allows a for m that has been opened by another
user to be unlocked. Use this with caution, as the cur r ent user will no longer be able to
save their changes.
Publish for m. Publish the for m to Tr ansaction Manager or as a zip file.
View For m Statistics. Var ious statistics about the for m such as how many fields, depend-
encies and so for th.
Manage For m Revisions: This can be used to cr eate new and use old for m r evisions, for
example, r ever t to a pr evious ver sion.
Gener ate For m Specification.

Note : You cannot open a for m that is cur r ently being edited (i.e. "checked out") by
another user , who is identified in the "Checkout by" column.
Note : if you open a for m in a Read-only or ganization, you will be able to modify the for m,
but not save it.

Assigned
The templates available to this pr oject. Advanced user s only.
Templates

The Composer Workspace - 213 -


Assigned The user s that ar e assigned to this pr oject. The user must fir st be assigned to the or gan-
User s ization.

Creat ing a Form


To creat e a new form, click on t he Creat e New Form but t on in t he project 's t oolbar, and follow t he wizard's inst ruc-
t ions. The wizard cont ent can change depending on t he t emplat e t hat has been select ed. The Avoka Maguire t em-
plat e adds a screen where t he form developer can choose various funct ions t hat can be included direct ly in t he
form.

Here are t he st eps t o t he New Form Wizard:

St ep Descript ion

Enter the name and descr iption of your for m. Choose the name car efully, as this will
1. Name
appear in the for m header by default (this can be changed if desir ed). The descr iption is
and
not used within the for m, and is used only to descr ibe the for m to other user s of Com-
Descr iption
poser .

2. Tem- Select a template. This will var y based on how your or ganization has been set up. Most
plate or ganizations will only have a single template.

Select additional values, such as the heading lines of your for m. These will var y depend-
ing on how your template has been configur ed. Some of the fields enter ed her e will
appear on the header or footer of your for m, and some options may contr ol they way
in which your for m is gener ated.
Ther e ar e a number of special values that may be used:

3. Addi- l $FORM{NAME} - t his is t he name of your form as you t yped it in t he first page of t he
tional Val- wizard, and as it appears in t he list of forms in your project . Using t his will ensure t hat
ues t he name of your form in Composer mat ches t he name at t he t op of your form.
However, t his may not always be what you want , so feel free t o delet e t his formula, or
change it lat er.
l $GENERATION{DATE} - t his is t he most recent dat e and t ime at which t he form has
been generat ed. This is used as t he default form ident ifier, because it will always
increase whenever a new version of t he form is generat ed. However, you may choose
t o set your own form ident ifier, such as "VA 22-1995".

Click Finish t o complet e t he wizard, and your form will open for edit ing.

The Composer Workspace - 214 -


Composer Form Revisions
Composer | Form Builder | v4.3 & Higher

The Composer Form Revision funct ionalit y allows an organizat ion t o creat e and manipulat e revisions of a form.

It offers t he abilit y t o:

l Act ivat e any revision belonging t o a form.


l Make a revision read only.
l View t he XML of any revision t hus eliminat ing t he need t o act ivat e a revision t emporarily t o view it .
l Assign a name t o a revision. This can be used for versioning revisions. The name assigned is also shown in t he
form list .
l Creat e a revision when t he form is published.

Manage Revisions Functionality


Accessing t he Form Revision Dialog
The Manage Form Revision funct ionalit y is accessed from t he form list screen by select ing a form in t he list and
choosing t he opt ion on t he right hand menu.

M enu
The screenshot shows t he "Revision List Form" wit h t he "Manage Form Revisions" opt ion circled.

Screen 1 - Form List Screen showing Form Menu items.

M anage Form Revisions Dialog


A newly creat ed form will only have one form revision, however a form can have mult iple revisions. The Manage
Revision dialog is shown in Screen 2

The dialog shows t he following columns (all columns can be sort ed):

Composer Form Revisions - 215 -


l Act ive - The indicat or will appear against t he form revision t hat is current ly act ive. When t he form is opened it
will be t his revision t hat will be used.
l ID - The ident ificat ion number of t he form revision. This is syst em generat ed.
l Revision name - This is a freet ext field, non-unique name t hat can be updat ed using t he Rename Opt ion on
t his screen.
l Creat ed by: User id t hat creat ed t he form revision
l Creat ion Dat e: Dat e and t ime when revision was creat ed
l Updat ed By: User id t hat updat ed t he form revision
l Last Modified Dat e: Dat e/ Time when form revision was last modified.
l Read Only: This column will show a lock symbol when t he revision has been made read only. This means t hat
if t he form is made act ive it can not be modified.

Sort ing: All columns can be sort ed in ascending or descending order.

Screen 2 - Revision Dialog

Form Revision Opt ions


When a revision is highlight ed several opt ions are available. Some opt ions are disabled depending on t he st at e of
t he part icular revision.

Composer Form Revisions - 216 -


Screen 3 - Revision Dialog: Options highlighted

Creat e

The creat e opt ion allows a user t o creat e a new form revision based on any of t he form revisions in t he list .

Opt ion allows:

l a user t o specify an exist ing revision ID t o copy t he newly creat ed revision from. The dropdown list will show
all available revision ids for t he form.
l Ent er a name for t he revision. This is a mandat ory freet ext field t hat can be used for versioning or inform-
at ional purposes.
l The newly creat ed revision is:
l aut omat ically made read only
l Is NOT made act ive. The act ivat ion of t he t he new copy is a separat e manual st ep.

Screen 4 - Create Revision Dialog

Composer Form Revisions - 217 -


Screen 5 - Create Revision Dialog with revision name entered. It is copied from the current active version ID 49524

Screen 6 - Revision Dialog with newly created revision name. The new revision is read-only and NOT active.

M ake Act ive

This allows a user t o make a revision act ive. The definit ion of an act ive revision is t he revision t hat is shown when
t he form is opened.

Opt ion Summary:

l Only one revision can be act ive for any form.


l The act ive revision is highlight ed by t he blue indicat or in t he act ive column.
l The "Make Act ive" opt ion is disabled when a revision is already act ive.

Composer Form Revisions - 218 -


Screen 7 - Revision Dialog showing make active option.

Screen 8 - Revision ID 49526 has now been made active denoted by the blue indicator. The newly activated revision
is now sorted to the top of the list.

Delet e

This opt ion will delet e a revision from t he list .

Act ive revisions can not be delet ed. The delet e but t on will be disabled.

Composer Form Revisions - 219 -


Screen 9 - This shows Revision 49566 being deleted. A confirmation is requested before the deletion takes place.

Rename

This opt ion allows you t o modify t he Revision Name t ext . The revision name is NOT unique and is simply free t ext .

Screen 10 - This shows Revision Name "Revision 1.2" renamed to "Revision 2.0".

View XM L

This opt ion allows you t o view t he XML of t he select ed revision in t he list . The revision does not have t o be act ive.
This eliminat es t he need t o make t he revision act ive and t hen open t he form in t he form edit or t o view t he xml.

Composer Form Revisions - 220 -


Screen 11 - A non-active revision is selected to view its XML.

Screen 12 - The XML is shown in a new window with the revision ID and name specified at the top.

Read-Only Opt ion

This opt ion allows a user t o t oggle a revision's set t ing from read-only t o edit able. If a revision is set t o "Read Only"
and is t he act ive revision, when t he form is opened it can not be saved. This preserves t he int egrit y of t he revision. A
read-only version is denot ed by a lock in t he read-only column.

Screen 13 - The selected revision ID can be made read-only by selecting the option.

Composer Form Revisions - 221 -


Screen 14 - The selected revision ID is already read-only. The option has now change to "Allow Editing".

Screen 15 - The form list screen shows whether the form is read-only by a lock symbol next to the form.

Screen 16 - A Read-only form when opened has the "Save" Button removed, a lock symbol next to the form name
and the Form editor header colored red.

Creat ing a Revision at Form Publish


An opt ion has been added t o t he publish dialog t hat will creat e a form revision at t he t ime of publish.

Paramet ers:

Composer Form Revisions - 222 -


l The opt ion is default ed t o off and needs t o be select ed by t he publisher.
l When select ed t he revision name field appears. The publisher can change t he default value of "Published Revi-
sion".

Screen 17-The publish screen showing the option to create a form revision. It is off by default.

Screen 18 - Showing screen showing the create form version option selected. The user can modify the default text of
"Published Revision".

Composer Form Revisions - 223 -


Form Designer
Composer | Form Builder | v4.3 & Higher

The Wireframe View

The Wireframe t ab of Form Designer is t he heart of Composer. Not only are forms built from element s from t he
Widget Palet t e, but t he whole logical st ruct ure and int eract ions of t he form are built up in t he designer.
Composer funct ions as an agile and capable t ool, where complex forms are built and deployed, on a range of
devices, in a mat t er of days or weeks.
This user guide emphasizes t he aut omat ed aspect s of form const ruct ion in t he early pages. Sect ions below t he
Advanced Topics sect ion of t he manual deal wit h more complex funct ionalit y. These come lat er in t he guide t o act
as a reference and not t o int errupt t he narrat ive.

Structure and Preview

Forms are represent ed in 2 ways in t he designer: t he StructurePanel and t he Wireframe (in t he cent ral panel of t he
designer). The St ruct ure Panel, a collapsible t ree st ruct ure, is t he t rue represent at ion of t he form. The Wireframe is
only a rough guide t o how t he form will look t o t he end user filling it in. (See Preview and Publishing on how t o
accurat ely view how t he form looks.)

Form Designer - 224 -


Dragging and Dropping on t he wirefram e.
The Wireframe is a represent at ion of t he visible element s. Because each element cont ains a st ruct ure, it is difficult
t o drop or move element s t o t he correct place on t he element 's st ruct ure t ree. For t his reason we recommend t hat
widget s are dropped ont ot he St ruct ure Panel.
The ot her t abs ("Bulk Edit or", et c.) are more t echnical, ext remely powerful and not of immediat e concern. See
FormDesignerAdvancedFeatures.

Widget Palette
Overview of Widget s
The "widget " is t he icon you drag from t his palet t e ont o t he form's St ruct ure Panel. (See below.)
The result ant object t hat appears on t he form is called t he "field". Ot her synonymous t erms are: "node", "form ele-
ment ", "element " and even "widget ". We may deplore t he lack of common t erminology, but in a t echnology t hat is
rapidly evolving, regional and corporat e difference in vocabulary are inevit able.
This has happened wit h browser and int ernet t erminology in general: look at t he various t erms employed by dif-
ferent ent erprises and t eams for what should be st andard t opics like "query strings" (also incorrect ly called "para-
met ers"), "value pairs" (also called "t okens", "at t ribut e-value pairs, "key-value pairs and so fort h).
We will t ry t o be consist ent and use "widget " in t he Palet t e and "field" on t he form.

Organizat ion of t he Palet t e


The palet t e has 3 major classificat ions:

Assist ant s
Assist s designers t o build complex st ruct ures t hrough wizard-st yle dialogs.

Field Types
collect ions of widget s organized int o convenient groupings

Favorit es
which you, t he designer, can populat e wit h your own choice of widget s
The Field Types cont ain a mixt ure of simple widget s — like Text Fields — and of compound widget s, made up of a
set of widget s organized int o some sort of funct ional st ruct ure.
The classificat ion scheme used in Field Types is arbit rary and subject t o change. Please spend a few minut es t o
look t hrough t he t hese t ypes t o get a bit of a feeling as t o what t hey cont ain. The "Search" field at t he t op of t he
palet t e assist s you t o locat e a widget wit hout having t o hunt and peck t hrough t he Field Types. Suggest ions will
appear in t he palet t e as you t ype in your search it em.

Form Designer - 225 -


How t o Use Widget s t o Creat e Fields on Form s
You simply drag and drop a widget int o t he St ruct ure Panel. You can also drop widget s int o t he Wireframe, but
Avoka Technologies st rongly recommends t hat you do not drop widget s ont o t he Wireframe. The reason for t his
is: t he form's st ruct ure act ually has many hidden fields and st ruct ural element s which can only be seen in t he St ruc-
t ure Panel in its Advanced Mode.
Somet imes t he new field will appear in t he Wireframe; somet imes it complet ely disappears. And even when it does
appear, all may not be well int ernally.

Widget Types
There are, broadly speaking, 4 kinds of widget s. This sect ion of t he manual will only t ouch on t hese briefly. All t he
Field Types in t he Palet t e mix t he 4 t ypes freely, so t here is lit t le point in covering t he widget t ypes in much det ail.
There is some value in ment ioning t hese. In pract ice, t hough, you are will not concern yourself as t o t he t ype of wid-
get you are about t o drag and drop ont o t he form.

Sim ple Widget s


These creat e simple fields like a single checkbox, t ext field or a dat e field.

Blocks
Block are cont ainers of mult iple fields. Blocks serve 2 main funct ions:
To group fields t oget her visually in a colored panel, wit h a common label and so on To group fields t oget her logic-
ally int o funct ional unit s.
Cont ainers can cont ain ot her cont ainers in a hierarchical st ruct ure. There is no pract ical limit t o t he levels of nest -
ing support ed.
For your convenience, t here are a number of PredefinedBlocks in t he palet t e. They are invaluable for building com-
plex funct ions on your forms wit h lit t le more effort t han drag and drop.

Sect ions
All forms have at least one Sect ion (which is named "Inst ruct ions" by default ). The cont ent area of t he St ruct ure
Palet t e is organized int o Sect ions. Wizard forms display t heir sect ions as separat e pages. Use t he Sect ion widget s
t o be able t o creat e up t o 3 levels of sect ions.

For M ore on Widget s


Please see:
FieldTypes
t he t echnical reference t o t he many t ypes of fields, Assistants
PredefinedBlocks

Structure Panel

Form Designer - 226 -


St andard M ode
The default mode of t he St ruct ure Panel is called t he "St andard Mode". This does not expose t he full st ruct ure of
t he form, but does expose t he visible element s and t hose invisible element s most relevant for day-t o-day work.

Showing t he relat ionship bet ween t he St ruct ure Panel and t he Wirefram e

The St andard Mode is part icularly recommended for when you place new widget s ont o t he st ruct ure. This is
because, in t he St andard Mode, you can see enough of t he underlying st ruct ure of t he form t o place t he widget
correct ly — and not int o some invisible and inaccessible part of t he underlying st ruct ure — so t hat t he new res-
ult ing field on t he form works more or less correct ly.

Form Designer - 227 -


Advanced M ode

Form Designer - 228 -


St andard M ode vs Advanced
The Advanced St ruct ure exposes all t he underlying st ruct ure of t he form. (You can see t his by comparison wit h t he
Advanced Mode panel wit h t he XML code in t he XMLSourceTab .) Such cont rol is obviously useful t o power users of
Composer, but t his level of cont rol is beyond t he scope of t his sect ion of t he guide.

Nut s & Bolt s vs Cont ent


The "Nut s & Bolt s" part of t he St ruct ure has bot h read-only and edit able it ems. Read-only it ems show t he set t ings
for t he form made in Transact ion Manager; in t heir EditProperties dialog, t he Propert ies t ab is blank. Usually t he
first level it ems of Nut s & Bolt s are read only and t heir children are edit able.
You alt er t he set t ings of t he edit able it ems t hrough t he EditProperties dialog. More Nut s & Bolt s it ems are
exposed in t he AdvancedMode.

Com poser Fram ework (Advanced M ode Only)


This is a new sect ion of t he Composer 4 St ruct ure Panel. This framework exposes t he deepest workings of t he
form, such as t he connect ion wit h t he Transact Field App or t he HTML generat ion engine. You should leave t his
alone except in t he rarest or rare circumst ances

How t o Place a New Field int o t he St ruct ure

Drag and Drop


The met hod is t o drag a widget over from t he Palet t e (on t he right ) and drop it ont o an object on t he Panel (on t he
left ). Eit her t he widget will

1. drop int o t he object ont o a cont ainer like a block or section and it t akes up it s posit ion as t he last it em in t he
cont ainer

Form Designer - 229 -


1. drop below t he object ont o a simple field (one t hat does not expand) and it goes below t he field at t he same
level in t he st ruct ure

Form Designer - 230 -


1. or refuse t o go int o t he st ruct ure when dropped ont o an illegal posit ion in t he st ruct ure.

Form Designer - 231 -


N ot e: you can force t he widget t o behave as item 2 , by holding down t he <ct rl> key as you move t he widget int o
t he st ruct ure.

Short cut for Power Users


Select a posit ion in t he St ruct ure Panel and, while t he posit ion is st ill highlight ed, double click on a widget in t he
Palet t e. The new it em will go aft er t he st ill-highlight ed field in t he st ruct ure.

M enu Bar

The menu sit s at t he t op of t he St ruct ure Panel. It s funct ions are (from left t o right ):
Blue arrows t o move a highlight ed it em in t he st ruct ure up or down or promot e (left ) or demot e (right ) Delet e t he
it em
Search for t he it em in t he Search field below (t he recycle bin clears t he search field) St andard vs Advanced Mode
Refresh t he panel Expand all Collapse all

Form Designer - 232 -


Layout
So far, we have shown how t o add fields t o t he st ruct ure, but said not hing on layout : where fields will sit in relat ion
t o each ot her, eit her vert ically or horizont ally, what will be t he dist ance bet ween fields and how t hey posit ion on
t he form.
This omission is deliberat e. Layout is dealt wit h hereinthis guide and layout is aut omat ed in Composer as much as
possible.
Why? Wouldn't forms look bet t er if t he designer sweat s over posit ioning each element and nudging fields on t he
web page t o get it s posit ion perfect ? Well, t he answer is t hat forms in a web-browser cannot have all t heir element s
as t ight ly cont rolled as wit h t radit ional hard-copy forms, as t he web page runs t he gamut of t he ranks of t he many
web browsers now in common use. Also, t hese forms will be viewed on different devices: on Android phones and
t ablet s; on iPhones, iPads, iPod Touches, on Windows mobile devices and deskt ops, on
deskt op monit ors of a range of sizes, via mobile apps, via HTML and PDF.
In such a babble of viewing environment s, what was painfully adjust ed for one circumst ance will look lousy in
anot her. And you cannot dict at e which modern browsers or devices you would prefer your cust omers not t o use.
Gone are t he days of wagging t he st ern finger and st at ing "Best viewed in such and such an ancient browser and
not t he modern one you are using." If users have migrat ed over t o modern browsers so as t o be able t o engage in
social media, do not t ry t o st em t he t ide wit h your web forms.
So, t hese considerat ions dict at e t hat layout is held in reserve for lat er discussion. For t he present , we encourage
you t o experiment wit h widget s in t he Palet t e, and t o see what happens when you drop t hese ont o a form.

Form Designer - 233 -


Assistants
Composer | Form Builder | v4.3 & Higher

Assist ant s are locat ed at t he t op of t he Widget Palet t e and t his is t he reason t hey are discussed first . The Field
Types in t he palet t e are a mixt ure of many different t ypes, see Field Types, placing any of t hem on t he form is t he
same process already covered above. This is also t rue of Assist ant s, and t hey make a good st art ing point as t he res-
ult ant fields on t he form are so useful, and even rewarding, for t he beginner
Assist ant s are widget s t hat facilit at e t he creat ion of complex st ruct ures. Anot her import ant set of widget s, t hat
also simplifies complex form st ruct ures, is PredefinedBlocks.
We will discuss individual widgets inmoredetaillaterinthis manual. But because Assist ant s and Predefined Blocks
are so powerful, we will now be building examples using t hese t wo t ypes. Designing complex forms using individual
widget s is more t he domain of Composer's power users.

Adding Assist ant s t o a Form


When assist ant s are first droppedintotheformstructure, t hey pop up a wizard t o add mult iple widget s t o t he form
(radio but t ons for example). Each of t he Assist ant s feat ures a t able t o add a component widget t o t he group, and
Composer will bot h creat e t he group and maint ain t he overall st ruct ure of t he group.

Assist ant s
Checkboxes
A checkbox is t he simplest select or: it can be eit her checked or unchecked. In a group of checkboxes, more t han
one can be select ed.

Assist ant s - 234 -


Using t he Checkbox Assist ant

Assist ant s - 235 -


The Checkbox assist ant will creat e, in a single operat ion, a set of checkboxes and t heir t it le. If you're creat ing mul-
t iple checkboxes, it 's generally a much quicker and easier way t o creat e t hem t han creat ing individual checkboxes.

Assist ant s - 236 -


The result ant st rut ure

See below for more on t he Content Block.


In Composer, t he underlying raw value of t he checkbox can be set t o any st ring values (see EditProperties).
By default , t he values are checked = "t rue", and unchecked = "false". However, you can set t he checked and
unchecked values t o what ever you want , such as checked = "Y" and unchecked = "N". This can be useful when
checkbox values get export ed t o legacy syst ems t hat do not suppport Boolean values ("t rue" or "false").
Layout Managers get t heir own t opic below.
See belowforanexplanationoftheContentBlock.

Assist ant s - 237 -


Radio But t ons
Radio but t ons are similar t o checkboxes, except t hat only one of t hem can be select ed from a group.
For example, if we add a Radio But t on Assist ant t o t he form, t he result ing popup wizard dialog looks as follows:

Assist ant s - 238 -


The "Add a Radio But t on Group" wizard dialog

The "Bound Value" for a radio but t on is t he value ret urned by t he form when t hat but t on is select ed. In t he
example above, t he "Bound Value" is t he same as t he "Label"; you can change t his t o ret urn a more convenient
value, "1" inst ead of "But t on 1" for example.
If you want t o reference t he value of t he but t on group (i.e. which but t on was select ed), point t o t he But t on Group
widget .
If you check "Make But t on Group Mandat ory", users must click on one of t he radio but t ons. Ot herwise t hey will be
prompt ed t o do so. See Validation .
The "Init ially Select ed Radio But t on" dropdown is for specifying which of t he radio but t ons is select ed by default
when t he form is first loaded. But t ons need not be select ed by default (t hough many useabilit y expert s advise
against t his). But once any of t he but t ons has been clicked on, t he group cannot be ret urned t o t he unselect ed
st at e. This is a propert y of HTML.
Layout Managers have t heir own t opic here.
Filling in t he wizard creat es t he following st ruct ure in t he form:

The st ruct ure t he "Radio But t on Assist ant " adds t o t he form

The but t ons now render on t he form (as seen in Preview) as graphics wit h a more cont emporary look t han t he
st andard deskt op browser widget s.
N ot e: t he but t on group now appears in t he st ruct ure below t he but t ons. This done t o allow t he inline validation
message t o appear correct ly on t he form.

Assist ant s - 239 -


Dynam ic Dat a
Dynamic Dat a means t hat t he form's display can change before submission, wit hout t he form having t o be
reloaded. A common use case for dynamic dat a is t o have suggest ions appear t o assist t he user t o supply dat a, an
address for example.
Using t he assist ant is more or less a mat t er of filling out t he wizard, but such a sophist icat ed concept is best deal
wit h under its owntopic.

Sect ions
Manually dropping t he t hree levels of Sect ion widget s ont o a form is not difficult , but you should avail yourself of
t he convenience of panning all t he sect ions of a form in t he one wizard.

The Sect ion Assist ant wizard

The wizard is easy enough t o use, but Sect ions now have great er significance t han just bold headings on t he form:
t hey now cont rol the user's very navigation through the form , and t he mobile slider menu in responsive layout .

Assist ant s - 240 -


Tables
In forms, t ables are oft en dynamic st ruct ures where rows can be added or delet ed by t he end user; t hey are not ,
t herefore, simple st at ic HTML t ables. In Composer 4, you can use t he assist ant t o creat e eit her st at ic or dynamic
t ables.

Assist ant s - 241 -


Cont ent Blocks
The following applies t o t he older st yle of forms.
As you add each element t o t he group t hrough t he "Add..." but t on in t he wizard, t he result ing dialog gives you t he
opt ion of creat ing a cont ent block for t he element . You can drop widget s int o t his block, t he Plain Text object for
example. The block is normally invisible, unless t hat group element is act ivat ed, such as on t he select ion of t he
checkbox.

You can reverse t his behavior by going t o t he Edit Propert ies dialog, "Rules -> Visibilit y Rule -> Edit " and changing
t he script from
ret urn {But t on1};
to
ret urn !{But t on1};

You can also manipulat e ot her behaviors by edit ing widget s in t he group, but t ake care: you do not want t o break
t he st ruct ure.

N ot e: in Maguire t emplat e forms, cont ent blocks now appear at t he bot t om of but t on groups, not bet ween but -
t ons.

Assist ant s - 242 -


Predefined Blocks
Composer | Form Builder | v4.3 & Higher

Many of t he st andard Composer widget s are implement ed as prefabricat ed blocks. You ut ilize t hem as you would
assist ant s: drop one int o t he form's st ruct ure and t ake advant age of t he result ing complex st ruct ure t hat adds
funct ionalit y t o your form.
These include various Address blocks, a block t o display errors, t he st andard form header, Sect ions, t he Signat ure
block, and various blocks for use in Transact ion Manager.
You cannot modify t he predefined blocks in t he pallet , only t he predefined blocks t hat you yourself creat ed in t he
Pallet . But once a predifined block has been added t o t he form, you can modify t hat inst ance and t hat inst ance
alone.
Here is t he current range of predefined blocks generally made available for most organizat ions in t he pallet . You

may not see all of t hese, due t o t he Composer configurat ion of your Organizat ion.

Pr edefined
Descr iption and Wir efr ame
Block

Predefined Blocks - 243 -


Common
field type

Used to impr ove accessibility for for ms that have a number of scatter ed r adio buttons,
wher e these do not fall into one convenient block nor have the one contr oller . Poor ly
Fieldset str uctur ed collections of r adio buttons can confuse scr een r eading softwar e, making
these for ms unuseable for end user s r eliant on r eader s.
See Useability andAccessability

In the event of an er r or , this block pr esents a multi-line message to end user s (explain-
Er r or List
ing what action they should be taking), a display ar ea to list the er r or s and two action
Block
buttons.

Er r or Selec- Makes a complicated str uctur e, with an Er r or List Block above an Er r or and War ning
tion Block Block.

Advanced
field type

Pr edefined
Descr iption and Wir efr ame
Block

Predefined Blocks - 244 -


This block does not place visible objects on the for m. You must put Cascading Dr opdown
List widgets on the for m which point to the manager .
See Cascading Dr opdowns.

Cascading
Dr opdown
Manager

Er r or and
The user can scr oll, via left and r ight navigation buttons, thr ough the war nings and
War ning
er r or s.
Block

Block containing the elements that make up the header of the for m's template: the logo
and the text of thr ee levels of headings. (The visibility of of these headings and other ele-
ments depends on the template.)The block can be dr opped into the str uctur e. Nor mally
For m ther e is no need to add an extr a heading block to the str uctur e, so this block is for spe-
Header cialized customization only.

In the Wizar d, set the "Region" to "Nor th" and the header will appear at the top of all
navigation pages.

Pr edefined
Descr iption and Wir efr ame
Block

Predefined Blocks - 245 -


Block with the footer elements of the for m, in this case, an Er r or List Block.

For m
Footer

Business
field type

Predefined Blocks - 246 -


Addr ess Pr oduces a block with plain text fields "Addr ess Line1", "Addr esses Line 2", and an inline
[Austr alia] of "Subur b", a dr opdown for "State" and 4-digit numer ic for "Postcode".

Pr edefined
Descr iption and Wir efr ame
Block

Addr ess
Cr eates an Addr ess [Austr alia] block and a second block of identical for mat which
[Billing & Mail-
becomes wr itable if the linking checkbox is made inactive.
ing]

Addr ess
Same as the Addr ess block above, except that the "State" dr opdown is populated
[United
accor dingly and the "ZipCode" numer ic field accomodates mor e digits.
States]

Radio Button
This str uctur e is cr eated by dr opping this assistant block onto the for m. Takes car e of
Assistant
the manual configur ation tasks of the whole str uctur e, as explained here.
Block

Predefined Blocks - 247 -


Pr edefined
Descr iption and Wir efr ame
Block

Radio But-
A block of two r adio buttons, a "Yes" and
ton List
a "No".
[Yes/No]

Radio But-
ton Button or der r ever sed fr om the above.
[No/Yes]

Predefined Blocks - 248 -


Invokes a Tr ansaction Manager ser vice
to pr ovide the DocuSign signing wor kflow
befor e deliver ing the submission to
another TM ser vice.

Signatur e
[DocuSign]

"Other ")
and a text
Title Block Pr oduces an in-line dr opdown ("Mr " "Mr s" "Miss" "Ms" field to
specify
"Other ".

Pr edefined
Descr iption and Wir efr ame
Block

Business
Rulesfield
type

Predefined Blocks - 249 -


These ar e invisible on the for m, but contr ol the behaviour for the for m. See the
Business Rules section of this manual. These field types cover sever al widgets or
Business Rule -
widget gr oups, or even the whole for m in some behaviour s. Some aspects of these
Er r or
r esemble the "Rules" tab of the "Edit Properties" dialog of individual widgets, but
the r ules tab applies only to the one widget.

Business Rule -
Gener al Pur -
pose

Business Rule -
War ning

Mandator y
Block

Mandator y
Checkbox Block

Collaboration

Please see Col-


laboration .

M obile App
(Field
Worker)
fieldtype

Also wor ks on the desktop.


Geolocation
When the button is tapped or clicked, it loads two floating fields for latitude and lon-
Block
gitude.

Take a pictur e of a bar code with a mobile device's inter nal camer a using the "Scan"
Bar code Block button on the for m. The bar code is decoded, and its value populates the field below
the cam erabutton .

PDF field
type

Predefined Blocks - 250 -


Pr ocess Man-
agement Field See the section on FieldTypes.
Block

Smar t Attach-
Adds a table to a PDF for m for the user to upload an attachment. HTML for ms
ment Field
handle attachments differ ently, see Subm issions andAttachm ents.
Block

Transaction
M anager
fieldtype

TM Payment Cr eates a display table of payments, including GST (Austr alia's Goods & Ser vices
Table Tax) and Pr ice.

Pr edefined Block Descr iption and Wir efr ame

Cr eates two r adio buttons and adds content and logos. (The choices ar e
TM Payment Type Selector
for Austr alian conditions,)

TM Refer ence Data Block Cr eates an Auto-suggest field for some pr edefined list.

Predefined Blocks - 251 -


Cr eates thr ee buttons and associated content for Submitting, saving to
TM Submission Block
TM natively, or saving in PDF locally.

Cr eates a block of two text displays for the r eceipt and a r eceipt bar -
code gr aphic.

TM Submission Receipt

Cr eates a pr edefined dynamic data block made up of a tr igger field and


TM Veda Addr ess Lookup
an addr ess block.
Block [Austr alia]
See the VedaAutoSuggestpredefinedwidgetandservices section.

Pr edefined Block Descr iption and Wir efr ame

Predefined Blocks - 252 -


Tables & Repeats
Composer | Form Builder | v4.3 & Higher

Tables & Repeat s - 253 -


St at ic vs Dynam ic

Tables & Repeat s - 254 -


When you include a t able or repeat ing block int o your form, you only design one row of st ruct ure, and specify as
many rows as you want t o display init ially.
Tables usually have a heading row (or rows). Tables also can be st at ic (i.e. a fixed array of fields for users t o fill in) or
dynamic, where users can add or delet e rows as t hey go.
A repeat is similar t o a t able, but inst ead of being limit ed t o t he height of a row, you can make t he repeat ing unit as
large as you want , wit h no rest rict ions on how t he fields lay out — unlike t he single line limit at ion of a t able.
Use t he Table Assist ant t o creat e t he t able. Creat ing a st at ic t able wit h headings in each row on t he LH side involves
a few more st eps. Use t he Tables Assist ant Wizard as follows:

Tables & Repeat s - 255 -


Tables & Repeat s - 256 -
The Table Assist ant produces t his form st ruct ure, alt hough t he LH capt ions for each row have t o be alt ered — by
right -clicking on each of t he Plain Text fields in each of t he st at ic rows and select ing "Rename Field...".

Aft er you have used t he Table Assist ant t i creat e a dynamic t able, you cannot convert t he t able int o a st at ic one.
N ot e : Tables implicit ly require a lot of screen space. In t he case of t he small screens of mobile devices, you t ake
advant age of Composer's ResponsiveLayout feat ure which is on by default and requires no furt her work on your
part .

Tables & Repeat s - 257 -


Edit ing Table St ruct ure
Adding and removing columns from a t able requires making several manual changes t o t he St ruct ure Panel.
You should alt er t he t able element in t he st ruct ure. This is t he cont ainer t hat holds t he Header and Row blocks (i.e.
"DemoSt at icTableTable" in t he example immediat ely above). Double-click on t he element and in Edit Properties, go
t o "Propert ies -> Layout -> Layout Manager" and alt er t he "Column Count " or "Init ial Row Count " t o your require-
ment s.
The St ruct ure Panel makes it easy t o change t he element s in a row. For example, in t he above t able creat ed using
t he Table Assist ant , all t he row element s are Plain Text fields. Say we want t o have t he second column t o be a cur-
rency field and t he t hird int o a dat e field. We just delet e t hese element s from t he Row element and drop a Cur-
rency Widget and a Dat e Widget int o t hat Row icon in St ruct ure Panel, name t hem accordingly (t hough t hey need
not have t he same names as t he former element s) and move t hem int o t he correct posit ions

in t he st ruct ure using t he blue arrows at t he t op of t he panel. The result looks as follows:
This flexibilit y ext ends across t he ent ire t able st ruct ure, t hough be careful t o preserve t he st ruct ural int egrit y of t he
t able.

Tables & Repeat s - 258 -


Adding a Foot er

Tables & Repeat s - 259 -


You add foot ers t o t ables t hrough t he St ruct ure Panel.
We can use t he Table Assist ant t o creat e a 3-column t able wit h Plain Text Column, a Currency column and a t hird
column, which we will re-cofigure t o hold a Dat e field.

We t hen manipulat e t he St ruct ure Panel t o delet e t he t ext field (by right -clicking on it in t he St ruct ure) and drop in
a Dat e widget int o t he Row cont ainer int o t he correct posit ion (using t he <ct rl> key or by using the blue up/
downbuttons).

Drop a "Table Foot er" widget from t he palet t e ont o t he t able field in t he St ruct ure Panel and add appropriat e ele-
ment s from t he palet t e. Here we add only t wo element s: a Plain t ext and a Currency. Because t he t able has four
columns per row, we adjust t he column widt hs of t hese t wo for t he sake of neat ness: use "Edit Propert ies -
> Propert ies -> Layout -> Layout Const raint s -> Column Span". The "Second Column Tot al" has a column span of
"1" and t he "Tot al", "3".

The new st ruct ure looks like t his:

Tables & Repeat s - 260 -


All t hat needs doing now, is get t ing "Second Column Tot al" t o sum t he second column. See Scripting and Depend-
encies on how t o do t his; it is done simply enough by t he Edit Propert ies dialog for t he "Tot al" currency field. In
"Edit Propert ies -> Rules -> Calculat ion -> Calculat ion Rule -> Script Based -> Edit " and fill in t he following:

Tables & Repeat s - 261 -


The result ing t able as viewed in "Preview HTML", looks like t his (wit h some t est values added):

Hint : you should make t he t able cell t ot al read-only ("Edit Propert ies -> Rules -> Edit abilit y -> Edit abilit y Rules ->
Never Edit iable").

Repeat s
There is no Assist ant for repeat s. This means t hat t he you have t o build up t he st ruct ure in t he St ruct ure Panel
yourself by dropping in t he appropriat e widget s and blocks and using t he Edit Propert ies of t he fields t o script
t hem. See Repeats in AdvancedTopics.
Hint : a good way t o st art building repeat s is t o mimic t he st ruct ure of t ables, wit h blocks for headers, for rows and
foot ers.

Radio But t ons


Composer support s copying and past ing groups of radio but t ons from one part of a form int o anot her wit hout
t he need t o alt er t he script ing of t he groups or t heir component fields..

Tables & Repeat s - 262 -


Templates
Composer | Form Builder | v4.3 & Higher

Overview
We are all now familiar wit h t he concept of t emplat es, be it in word processing, corporat e document s, branding or
web blogging. In Transact Composer, t he t emplat e concept goes much furt her, embodying t he look and layout of
t he form.

l color schemes
l headers

l graphics
l t ypography and layout managers
l menus and form navigat ion
l The widget s are made available t o form designers underlying script s
l The dat a st ruct ure of t he payload delivered t o your business on form submission behavior of t he form on
mobile devices and in mobile apps ("responsive layout ") design element s t hat accommodat e
l accessibilit y
l privacy
l securit y
l usabilit y

l hooks for supplement ary dat a passed on t o Transact ion Manager for analyt ics:
l geolocat ion dat a
l form abandonment

Ot her chrome in Form Designer, such as t he St yle Choosers inherit ed element s in t he form's st ruct ure panel
This is not a complet e list .
If you or your organizat ion are new t o Avoka Transact , it would be a good idea t o make use of Avoka's support
t eams t o creat e t emplat es suit ed t o your corporat e needs and branding. Composer it self has t he t ools for main-
t aining your t emplat es and even for creat ing new t emplat es (wit h different script s and element s), but if your busi-
ness needs go beyond t he st andard t emplat es, samples and t ut orials (given t he name of "cook books"), as is so
oft en t he case in real-world business sit uat ions, you will save t ime and money by t urning t o Avoka's professional
services t o get at least a set of init ial t emplat es t o begin producing useable forms.
This guide's Advanced Topics t ries t o cover, as far as is pract icable, t he issues involved in t emplat e const ruct ion and
t uning, in script ing, business rules and so fort h. The perspect ive required t o digest all t his informat ion, t hough, is
best gained by using Composer t o produce product ion forms, gaining real-world experience and seeing Composer
add t o your bot t om line.

Templat es - 263 -
Out of the Box
That said, at t his st age of your experience wit h Transact Composer you will eit her have:
The st andard set of t emplat es t hat come wit h t he release (such as t he Maguire t emplat es) or a set of corporat e
t emplat es conforming t o your ent erprise's branding and requirement s.
So, t he assumpt ion is t hat you have t emplat es t o go on wit h for t he t ime being. You can even begin t o design
forms t hat will end up in product ion, aft er changing t he t emplat es of t he form t o t hose suit able for publicat ion on
your port al. Composer accommodat es t his it erat ive approach. We also assume t hat you have an Organizat ion and
Project set up for you. You can work t hrough t he Hierarchy and creat e your own, providing t hat you have been
assigned t he right s t o do so, but t hese Organizat ions and Project s may lack sufficient resources and t emplat es, as
configurat ion of t hese is complex for beginners and best avoided at t his st age if you can.
So, let us begin at t he beginning.

Templat es - 264 -
Creating a New Form
At t he ProjectLevel, click on "Creat e a new form..." and fill in t he Wizard:
Give t he new form a name, and an opt ion descript ion Pick a t emplat e from t he dropdown list
(See here for a gallery of different t emplat es t o give just a t ast e of t he variet y of t emplat es.)
The next several st eps and t heir choices are det ermined by t he t emplat e
o Could be choices about navigation types or styling
wit h possible st yle choosers such as: Sect ions, Headers, Color Themes, Menus, NavBar, But t on, Color.
You can experiment wit h t hese choices, via t he Wireframe preview under t he St yle Choosers.

Choosing and previewing templates in wireframes withint the New Form wiz-
ard.

Templat es - 265 -
Basic Navigation Types
Composer 4 int roduces a number ways for users t o navigat e t hrough forms, and now t he one form can have sev-
eral navigat ion modes on different mobile devices depending on t he responsive layout set t ings of t he form.
But for t he moment , let us discuss basic navigat ion concept s, and leave t he complicat ions for lat er, aft er we have
covered t he ot her concept s needed t o underst and t he rich navigat ion possibilit ies now afforded by Composer. The
basic unit of navigat ion is t he Section , and t he 3 basic navigat ion t ypes t reat t hem different ly.

Standard Navigation
The whole form is on t he one web page. Each sect ion has it s own heading, usually a colored bar t hat runs across
t he widt h of t he page.
The user moves t hrough t he page by scrolling down by mouse, scroll wheel, finger swipe, t wo-finger t rackpad ges-
t ure, and so fort h.
There may be element s t hat st ick t o t he viewing area, for example down t he left side, but t hese do not change how
t he user moves t hrough t he form.

Accordion Navigation
The form is t he one web page, but sect ions collapse or expand as a convenience t o t he user. Navigat ion is essen-
t ially t he same as St andard.

Wizard Navigation
Here, each sect ion get s a new page. The user moves t hrough each page, usually one at a t ime via "Next " and "Pre-
vious" links.
Act ually, t he form designer can lat er incorporat e a number of navigat ion choices int o t he form:

st rict ly in sequence

t he only way t o navigat e is t hrough "Next " and "Previous".

LH List s

useful for showing users where t hey are now and how many wizard pages t hey have ahead of t hem. The it ems are
not select able

menu select ion

where t he L:H LIst is select able. Users can select anot her page out of order.

Templat es - 266 -
rest rict ed menu select ion

where users must complet e cert ain sect ions of t he form before being allowed t o select some of t he menu it ems.
For example, it is common t hat users be allowed t o go back t o any already-complet ed page via t he LH Menu. but
can only progress t o new pages t hrough "Next " and "Previous".
How you implement t hese are advanced t opics.

Combinations of the Above


Composer 4 allows different part s of t he form t o make use of t he different Basic Navigat ion Types. Now, some sec-
t ions can have Wizard-st yle behavior while several ot her sect ions can be on one web page.

Styling
Inst ead of a select ion of navigat ion t ypes for forms having a similar design look, t he one t emplat e may offer forms
t hat have quit e different designs or st yles.

How to Change the Template


You can easily change t he t emplat e of a form. Just right -click on t he t op element of t he St ruct ure Panel's t ree and
select "Swit ch from Templat e...." The only coices are t emplat es t hat have been assigned t o t he organizat ion (see
LibraryAdvancedFeatures).
Be aware t hat some layout element s of t he form may have t o be alt ered as well, as required.

Right-clicking on the top of the Structure Panel tree

Templat es - 267 -
Samples of Templates and Styles
Here, we give a few examples of how t emplat es and st yle choosers affect t he one form's color or t heme, it s st yling
and it s localizat ion. The st yle choosers can also be configured (see Templates in Library Advanced Features).
The form below is a simple one wit h four sect ions for ent ering addresses. Some simple choices on t he look of sec-
t ions, of t he header block (t he colored rect angle wit h t he logo), t he wizard form Menu, t he NavBar (which holds
"Next " and "Previous"), t he st yle of but t ons (rounded, square, and t he like) and Color or Theme. In t hese basic t em-
plat es, "Color" and "Theme" are int erchangeable.
Experiment wit h t he various combinat ions of St yle Choosers.

Templat es - 268 -
A basic template, and how choice of color or theme changes the appearance.

For example, changing t he color or t heme alt ers t he color scheme of t he form, but does not effect a radical change.

Templat es - 269 -
Same form, different color scheme

Some t emplat es t hat go beyond t he basics do produce radical changes t o t he form. Here is t he same form wit h t he
"Maguire" t emplat e. The wireframe view here is only an approximat ion of how t he form will appear t o t he user.
Even basic navigation t hrough t he form has quit e different feat ures, such as t he chevron-st yle menu at t he t op of
t he form, and t his is only visible in Preview, or a Mobileslidermenu .

Templat es - 270 -
Same form, but with a more elaborate template. Note the Preview gives a
more accurate reprentation of the form's appearance.

Templat es - 271 -
Some t emplat es support localizat ion. See here on how t o configure and tweak this feature for a range of Locales.
Once done, changing t he Locale for a form in Composer is a simple mat t er of using t he select or. Not e t hat t he fol-
lowing examples were aut omat ically generat ed using Composer's leveraging of Google Translat e, and were not
checked by nat ive speakers — usually a good idea in a product ion set t ing.

Templat es - 272 -
Edit Properties
Composer | Form Builder | v4.3 & Higher

The Edit Propert ies dialog is t he cont rol for every element and field in t he form's st ruct ure. It has many para-
met ers, which in t urn are grouped int o t abs, sub menus and even sub t abs.
Though t he dialog is very powerful, but it s set t ings do not need alt ering in most cases. That said, Composer's abil-
it y t o do script ing and t o fine t une t he dat a model of t he form t hrough Edit Propert ies — and have t hese
debugged and quickly up and running — is vit al for successful form design. The improved layout of t he Edit Prop-
ert ies dialog also facilit at es making t hese adjust ment s t o t he form.
Composer Version 4's redesigned Edit Propert ies has a number of new feat ures, including a layout t ab for con-
figuring t he layout managers of a block, wit h a small wireframe for viewing t he effect s of changes on t he block. Also,
for t he first t ime in Composer, you can view a field's dependencies and t riggers.

Invoking the Edit Properties Dialog


Double click on an it em in t he St ruct ure Panel. The different t ypes of st ruct ural element s have different it ems in
t heir Edit Propert ies dialog. Broadly, here are t he different t ypes of element s:
The form it self (at t he t op of t he St ruct ure Panel t ree)
Sect ions (a special kind of cont ainer t hat cont rols navigation t hrough t he form) Cont ainers and blocks (which can
be expanded by clicking on t he "+")
Simple Widget s (which do not expand)

Edit Propert ies - 273 -


St ruct ure
Version 4's Edit Propert ies dialog has a new layout for bet t er grouping of t he many set t ings of t he propert ies for
fields and cont ainers on t he form. The dialog now feat ures a row of t abs along it s t op. Which of t hese are visible
depends on which of t he various st ruct ural element s was chosen for t he "Edit Propert ies" dialog.
Propert ies Overview St yling Dat a Model
Layout Assist ant (for blocks and cont ainers only) Dependencies
Rules
There are a few special t abs t hat appear for t he Edit Propert ies dialog for t he form it self at t he t op of t he St ruct ural
Panel t ree:
Palet t e (for t he form element only at t he t op of t he St ruct ure Panel) Theme (for t he form element only)
Policies (for t he form element only) Set t ings (for t he form element only) Localizat ion (for t he form element only)
However t he propert ies displayed in t hese special t abs can be accessed elsewhere in t he t ree, usually in t he Nut s
and Bolt s. There, t he propert ies appear under t he "Propert ies" t ab in t he same panels t hat appear under t hese spe-
cial t abs.
"Propert ies" and "Rules" have Left Hand menus. Each menu it em displays a different set of panels t o it s right . Each
of t hese panels cont ain t heir own set of edit able propert ies.

Edit Propert ies - 274 -


Edit Propert ies dialog for a t ab wit h a Left Hand m enu

"Overview", "St yling", "Dat a Model" and "Dependencies" have just panels cont aining propert ies.

Most of t hese propert ies are read only. "Dat a Model" has edit able propert ies. Two of t he panels in t he "St yling"
t ab are edit able: "St yleset s" (which gives access t o st ylesheet preset opt ions) and "Named St yles" (where you can
explicit ly associat e st ylesheet s wit h t he object ).
The "Layout Cont rol" t ab, which is visible for blocks and sect ions only, has it s own unique layout , see Field
LayoutControl.
See ScriptingandDependencies on how t o add script s t o t he form — which is done t hrough Edit Propert ies.

Not at ion Convent ion Used


In t he rest of t his guide, we will use t he following not at ion t o show where a propert y, script or configurat ion is loc-
at ed in "Edit Propert ies":
Tab -> LH Menu item -> Panel -> Property -> value
So, in t he Overview t ab shown above, for example:
Overview -> Basic Informat ion -> Field Name -> cust omerDet ails

Edit Propert ies - 275 -


The Filt er and View But t ons
The "Edit Propert ies" dialog has a similar dualmodeastheStructurePanel: St andard and Advanced. The cog icon t o
swit ch bet ween t he t wo modes is in t he t op right -hand corner in t he "Filt er" mini panel. "Advanced" displays more
propert ies, LH Menu it ems and t abs.
The ot her t wo icons t oggle on or off t he display of PDF-only or HTML-only propert ies.
The "Hamburger" View icon t oggles bet ween t he normal Edit Propert ies view of t abs, menus and panels and t he
"Propert y Grid": a combined list of all propert ies list ed in alphabet ical order . Use t he Propert y Grid t o find a
propert y if you cannot locat e it in any of t he panels, or t o inspect t he raw and displayed values of propert ies.

The Properties Tab


The Propert ies t ab for any st ruct ural element usually has a LH Menu. The it ems displayed, t hough vary from ele-
ment t o element . The it ems will be list ed and defined in t he ReferenceSection near t he end of t his guide.
These LH Menu it ems are only groupings of propert y panels (see The New Dialog t opic). The same propert y panels
may also appear elsewhere in t he same Edit Propert ies dialog for t he same element , for example t he panels in
Propert ies -> Layout will also be found at Layout Assist ant -> Propert ies in t he same dialog.
So, t he Propert ies t ab's LH Menu usually has many possible ent ries. The following is int ended t o be a broad guide
so t hat you can find your way around t his t ab — and, by implicat ion, t he rest of t he Edit Propert ies st ruct ure.
Here, we exclude Nut s & Bolt s. Indeed, some of t he "Nut s & Bolt s" it ems have Propert y t abs wit h empt y LH Menus

The following t able is a rule of t humb only, and we include it here for general guidance. Advanced Mode it ems are
so marked.

Str uctur al Ele-


LH Menu Item Panels (an indication only)
ment Type

For m Panel (Holds the settings enter ed in


Form For m
theoriginalwizardwhentheform was created .)

Widget Bor der


Section
(Advanced) Pr esentation (Bor der s, backgr ound color s and gr adient)

Custom Styling HTML Custom Styling (HTML for ms only. Backgr ound image, its
(Advanced) r epetition, custom HTML classes)

Layout Manager Layout Constr aints


Layout
Sizing (i.e. the layout fill: "Hor izontal" or "None")

Localizatio n
Localization Pr oper ties
(Advanced)

Edit Propert ies - 276 -


Pagination
Pagination contr ol (PDF only)
(Advanced)

Pr esentatio n
Pr esentation (Alignment, Dr op Shadow, etc.)
(Advanced)

Pr inting
Pr inting (PDF only. Pr inting pr oper ties)
(Advanced)

Section Header Header

Section Help Help

Section Number Number ing

Wizar d (does this section belong to the for m's wizar d navigation
Wizar d
scheme)

Block Gener al Gener al (Labels)

Widget Bor der


(Advanced) Pr esentation (Bor der s, backgr ound color s and gr adient)

HTML Custom Styling (HTML for ms only. Backgr ound image, its
Custom
r epetition, custom

Str uctur al Ele-


LH Menu Item Panels (an indication only)
ment Type

Styling
HTML classes)
(Advanced)

Layout Manager Layout Constr aints


Layout
Sizing (i.e. the layout fill: "Hor izontal" or "None")

Localizatio n
Localization Pr oper ties
(Advanced)

Pagination
Pagination contr ol (PDF only)
(Advanced)

Pr esentatio n
Pr esentation (Alignment, Dr op Shadow, etc.)
(Advanced)

Edit Propert ies - 277 -


Pr inting
Pr inting (PDF only. Pr inting Pr oper ties)
(Advanced)

Simple Wid-
Caption Caption Content Caption Pr esentation
get

Field Bor der


Field Field Pr esentation
(Advanced) (These give the bor der , backgr ound and so for th of the ar ea
into which user s type their data)

Widget Widget Bor der Widget Pr esentation


(Advanced) (The bor der , backgr ound and so for th for the widget)

Accessibility (Tool tip, custom scr een r eader text, pr ecedence


Accessibilit y
and so for th)

Custom Styling HTML Custom Styling (Custom HTML Classes and whether
(Advanced) Boostr ap styling applies) PDF Comb Styling

Data (var ious pr oper ties, many of them Advanced Mode only,
Data
including display for mat, etc.)

Layout Layout Constr aints Sizing

Localizatio n
Localization
(Advanced)

Pr inting
Pr inting (PDF only)
(Advanced)

The Other Tabs


In TheProperties Tab , we gave 4 t ypes of st ruct ural element s in t he panel. There are act ually 5 main t ypes:
The form it self (at t he t op of t he st ruct ural panel's t ree)
Read onlyelement s (mainly found in Nut s & Bolt s element s)

Edit Propert ies - 278 -


Sect ions Blocks
Simple Widget s
The New Dialog list s t he range of ot her t abs. The current t opic briefly deals wit h t wo t abs associat ed wit h all t he ele-
ment s:
Overview
St yling
Neit her has a LH Menu.

Tab Panels Editable? Pr oper ties

Field Name Display Name


Field UID (the unique identifier
Basic
Over view No of the element) Sour ce (Whether
Infor mation
cr eated dir ectly in the for m or
not)

Type
No Type Name Display Name Sour ce
Infor mation

Can have childr en? ("yes" or "no")

Restr ictions No
Can be moved? Can be deleted?
Can be embeded?

Styling
(Not available in the for m ele-
ment at the top of the tr ee)
Stylesets Lists any stylesets associated
(see Stylesheets) No
(qv) with the element
Note : None of these pr oper ties
ar e cover ed in Pr oper ties -> Cus-
tom Styling (HTML only)

Typed Lists stylesheets assigned to the


No
Styles element accor ding to its type.

Can explicitly add or r emove


Named
Yes stylesheets to the element and
Styles
set the or der of pr ecedence.

Edit Propert ies - 279 -


Field Layout Control
This t opic covers t he mechanics of layout . See here, for a discussion on t he aest het ics and design of form layout
from. Also see anot her discussion on UsabilityandAccessibility.

Problem s wit h explicit posit ion layout s


When designers build a form using simple t ools, t hey t end t o drag a widget int o a specific posit ion on t he form
— known as absolut e or x-y posit ioning — t hen re-posit ion and re-size it using t heir mouse. This works for simple
forms only, not when dealing wit h mult iple device t ypes, nor wit h maint aining exist ing forms. Explicit posit ioning:
Cannot ensure t hat forms flow correct ly on different t echnologies, for example on t he deskt op, t ablet s or smart -
phones.
Cannot ensure all fields have t he same st yling and sizing. Cannot ensure t hat all fields line up nicely.
Cannot ensure proper placement on t he high resolut ion devices. Doing t his manually is very t ime consuming and
t he result s are inconsist ent .
Cannot save designers from filling in paramet ers manually int o dialogs. For example, "all st andard t ext fields are
1.5in wide, a capt ion of 1.2in, and placed 0.7in in from t he left margin". The designer t hen needs t o know t hese
magic numbers, and apply t hem consist ent ly and ent er t hem for every single field on t he form.
Makes a big job out of insert ing a new field vert ically bet ween t wo exist ing fields.
Cannot aut omat e changing all t he fields on t he form t o have, for example, all t he field capt ions left or t op- aligned,
or changing all t he font s or background colors.
Cannot aut omat e changing t he widt h of t he form, or it s margins and so fort h. Inst ead, every field has t o be reposi-
t ioned.

Layout M anagers and Hint s


For t hese reasons, Composer aut omat es t he det ailed layout of fields. All you do is specify t he order of t he fields
and, opt ionally, a few ext ra "hint s" and let Composer do t he rest .
Hint s may be such t hings as:
Keep t his field on t he same line as t he previous one
Make t his field as wide as possible (wit hin t he bounds of t he space t hat it has available on t he page) Spread t hese
t wo fields across t he page, in t he rat io 40% t o 60%.
Lay out t hese 12 fields equally spaced in a 4 column grid

Edit Propert ies - 280 -


The Layout Panels
The default set t ings for t he Composer layout managers are set in t he template for t he form. The following doc-
ument s how t o t weak t he layout of element s on t he form when t he default posit ioning of an element needs it .
You make layout adjust ment t hrough 3 panels in Edit Propert ies. They are:
The Layout M anager panel

Edit Propert ies - 281 -


Layout Const raint s

Edit Propert ies - 282 -


Sizing

You access t hese panels in "Edit Propert ies" t hrough "Propert ies -> Layout " or in t he "Layout Assist ant " t ab. (That
t ab, t hough, does not cont ain t he "Sizing" panel.)

Edit Propert ies - 283 -


Not e t he mini St ruct ure Panel (marked "Fields") in t he LH Menu of t he t ab. And, t here is also a mini wireframe avail-
able on t he RH side of t he t ab in which you can t est t he effect of t weaking t he values in t he "Layout Manager" and
"Sizing" panels.

Edit Propert ies - 284 -


The Effect of t he Different Layout M anagers

Flow — Top t o Bot t om


A lot of forms are very simple - t hey just cont ain a series of fields going down t he page. This is also t he best layout
for t he narrower screens on mobile devices.
To achieved t his t ype of layout , you can use t he Top t o Bot t om flow. Fields in a Vert ical Flow simply go below each
ot her down t he page. The Vert ical Flow is always t he default manager on all sect ions and blocks.
There are a few opt ions or "layout hint s" t hat you can specify wit h t he Vert ical Flow layout manager t o achieve
higher levels of usabilit y. These include:

Pr oper ty Descr iption

Edit Propert ies - 285 -


Keep on
Same If "Keep on Same Line" is checked, this field will be kept on the same line as the pr evious
Line field. You can set this on as many fields as will fit on the line. This technique is mostly
(Layout used to gr oup r elated field together , such as Fir st Name and Family Name, or State and
Constr aints Zip Code.
Panel)

If Layout Fill is set to "Hor izontal", then this par ticular field will expand to fit all the avail-
Layout
able space on the line. This can be used to give your user s as much space as possible to
Fill
fill out longer fields, without having to give your fields explicit widths. If you have multiple
(Sizing
fields on the same line with Layout Fill set as "Hor izontal", each of them will then shar e
Panel)
the extr a available space equally.

The Top t o Bot t om flow does not change t he widt h of any of your fields (unless you select Layout Fill). Your field
widt h will be:
The "nat ural" widt h of t he field as defined in your organizat ion st ylesheet ; or
The st yle-set t hat you associat ed wit h t his field whenyoudraggeditintotheform . Typical st yle-set s include
widt hs like "Tiny", "Small", "Medium" and "Large", but t his will vary depending on how your organizat ion's
st ylesheet s have been set up. If you want t o change t he st yle set aft er you've creat ed t he field, you can change it in
"St yling -> St yleset s -> Field Size".
If you select Layout Fill, t he layout manager will t ry t o use as much of t he line's space as possible and t ake int o
account t he size of t he screen or page, margins, borders and gut t er areas, space allocat ed t o menus, and t he ot her
fields on t he same line.
N ot e : If you specify t oo many fields on t he same line, t his can creat e layout problems, part icularly on smaller
screens. The behavior of a line wit h t oo many fields will depend on t he ResponsiveLayout rules.

Flow — Left t o Right


The Top t o Bot t om Flow is suit able for many simple t ypes of forms; you oft en need, however, more fine-grained
cont rol over how fields spread out across t he page. This is where t he Left t o Right Flow layout manager, comes in.
Horizont al Layout allows you t o lay out several fields across t he page wit h very fine-grained cont rol over t he size of
each field by specifying t he percent widt h of each field.
N ot e : While we generally t alk about percent ages, t hose percent ages need not t o add up t o 100: Composer will
adjust accordingly.
The beaut y of using percent ages is: should you need t o add anot her field ont o t he same line, move a field, re- size
a field, or swit ch from port rait t o landscape, all t he ot her fields will aut omat ically adjust t o accommodat e t he
changes. Form maint enance t hen becomes easy. The fields will also ret ain t heir proport ions on t he range of mobile
devices.
Left t o Right Flows are always used in conjunct ion wit h Top t o Bot t om. The Top t o Bot t om cont rols each line of
fields; and Left t o Right wit hin each line.

Edit Propert ies - 286 -


M ult iple fields per line
The simplest way t o get mult iple fields on t he same line is t o use a Top t o Bot t om Flow and t he "Keep on Same
Line" propert y ("Propert ies -> Layout -> Layout Const raint s"). This, however, gives you lit t le cont rol over t he sizing
of t he fields.
For more cont rol, use a Left t o Right flow inside a Top t o Bot t om t o finely cont rol t he widt hs of each of t he fields in
t he single line. Using even mult iples of a base size will result in fields on subsequent lines being lined up t o each
ot her. This is shown in t he screenshot below.

Horizont al Layout

Horizont al Layout in t he Hierarchy

Two-colum n form s

You can creat e a t wo column layout by using t wo blocks laid out wit hin a horizont al flow layout , wit h fields inside
t hem laid out horizont ally.
This is shown in t he screen-shot below:

Edit Propert ies - 287 -


Two Column Layout

Two Column Layout in t he Hierarchy


N ot e : You can use t he Margin propert y t o provide ext ra spacing bet ween t he t wo columns, or use anot her smaller
block bet ween t he t wo.

Grid Layout
Oft en, you have t o lay out a large number of fields and, for an elegant layout , all t hese have t o align correct ly. The
Grid layout manager, which is specified on blocks or sect ions, can achieve t his.
By default , each column in t he grid has equal size, but you can also specify t he widt h of each column by defining a
percent age of t he space available, or a fixed size in mm or inches. For example, in a 3 column grid, you may specify
t he column widt hs as "100% 60mm 100%". As in t he example, t hese percent ages need not add up t o 100.

Edit Propert ies - 288 -


Grid layout wit h 3 radio but t ons respect ively 100%, 60mm and 100%

Grid layout wit h 4 columnseach one set t o 100%

Grid layout havinga t ext fieldset t o 150%and each checkboxset t o 100%


Grids can also be used as part of a hybrid layout . For example, a grid could cont ain one or more blocks which in
t urn could cont ain widget s, or grids could be arranged wit hin a vert ical or horizont al flow layout .
Each of t he object s added inside t he grid can specify hint s t hat provide addit ional cont rol over how t hey are laid
out .
Go t o next line Span

Propert y edit or for t he parent block

In t he example below, I begin by using as I have 5 checkboxes.


Because 'More t han once a week' is such as long capt ion, I select t he 'Force a row break aft er' t hat checkbox and
make it "span 2 columns".

Edit Propert ies - 289 -


Tweaking t he element wit h "Edit Propert ies -> Layout -> Layout Dat a"

Result :

Grid layout where 3rdcolumn spans 2columns and t he4t h column isforced ont o t henext line
Tip: Grid layout is part icularly useful for laying out mult iple checkboxes and radio but t ons. Even if your radio but -
t ons all appear on one line, it 's st ill advisable t o place t hem in a grid layout . Decide on a st andard grid size for all
radio but t ons, and always use t hat grid size for all radio but t on groups, regardless of how many radio but t ons you
have. If you do t his, all your radio but t ons in your ent ire form will all line up nicely.
Tip: If you have a radio but t on wit h a longer t han usual capt ion, simply set t he span t o 2 so t hat it uses up t wo grid
cells.

Grid layout where each of 5 columns set t o 100% (N ot e: t he capt ion on t he 4t h column)

Propert y edit or for 'M ore t han 2 t imesa mont h'

Grid layout where4t h column spans2 columns t oprevent capt ion wrapping

Fillers, Springs and Page Breaks


There are a few special object s in Composer t hat deal specifically wit h laying forms out .

Object Descr iption

Edit Propert ies - 290 -


A filler is a simple invisible object that simply takes up space, cr eating "white-space" in your
for m. White-space is gener ally consider ed a good thing by for m designer s, since it cr eates
visual separ ation and gr ouping between objects, and makes a for m easier to r ead and com-
plete. You can use a filler to separ ate two other objects either ver tically or hor izontally. For
Filler example, you can put a filler after a heading to cr eate some space between the heading and
the fir st field.
Filler s can sometimes be useful, but they ar e difficult to style - if you want to be able to con-
tr ol the look and feel of your for m by changing the stylesheets, you'r e gener ally better off
using pr oper ties on the individual objects that can be mor e easily styled, such as mar gins.

A spr ing is exactly what it sounds — it's an object that tr ies to expand as big as it can. For
example, if you want a layout with one field on the left of the page, and another field on the
Spr ing r ight of the page, simply use two fields in a hor izontal layout and place a spr ing between
them. Under the cover s, a spr ing is r eally just a simple invisible object with its width set to
100%. Spr ings only wor k with other objects on a single line.

Page Br eaks only apply to page-or iented for mats such as PDF. By default, Composer builds
for ms that just flow down the page. Fields will automatically "r oll over " to the next page when
Page
ther e is not enough r oom on the cur r ent page. Usually, this wor ks fine, but occasionally, you
Br eak
may want to explicitly star t on a new page. In or der to do this, simply dr ag a Page Br eak
object into the tr ee, and your for m will immediately skip to the next page.

There are t hree ot her propert ies in Composer t hat affect page breaks in PDF forms, in t he "Propert ies -> Pagin-
at ion -> Paginat ion Cont rol" panel:

Pr oper t
Descr iption
y

Container s such as blocks and sections allow you to specify whether they should allow page
br eaks within themselves or not. If you tur n "Allow Page Br eaks" off, then the entir e section
will always stay on the same page - if even one field of the section would flow over to the
next page, the entir e section will be moved to the following page. If you tur n "Allow Page
Br eaks" on, then if one of the fields in the section exceeds the cur r ent page, just that field
and the ones that follow it will move to the next page.
Allow
Page
Most stylesheets have Allow Page Br eaks tur ned on for two r easons. Fir stly, disallowing
Br eaks
page br eaks can cr eate lar ge blocks of white space at the end of pages, confusing the user .
Secondly, in dynamic for ms (for ms that gr ow and shr ink), making a ver y simple change on
one page could cause a following section to exceed the cur r ent page, and when the entir e
section is moved to the next page, it will seem to "disappear ". User s find this ver y confusing.
You should also be ver y car eful to ensur e that any section that disallows page br eaks is no
bigger than a single page, other wise Reader will not know how to lay it out.

Edit Propert ies - 291 -


For ce
This pr oper ty is associated with a block, and will for ce this section or block to star t on a new
Page
page. This is equivalent to inser ting an explicit Page Br eak object into your for m.
Br eak

Block
Choice between: "None", "Pr evious" or "Next". In other wor ds, do you want to keep this
Keep
block on the same PDF with the next block or the pr evious block, or or you don't car e either
With
way.
Policy

Field Styling
The form's t emplat e set s t he st yle default s for it s fields, and so any globalchangesshouldbemadetothe template
itself. That is an advanced t opic, not covered here.
Local changes can affect only a single field or whole cont ainers or sect ions. There are 2 t ypes of t hese changes:
Changes t hrough st ylesheet s Manual overrides t o st ylesheet s
Manual overrides are easy t o underst and but are t ime consuming and as clumsy as explicit posit ion layout s.

Using St ylesheet s
In t he WorkspaceHierarchy, St ylesheet s live in Libraries. Libraries are associat ed wit h Project s or t he higher levels
of t he hierarchy. See LibraryAdvancedFeatures.
You can also creat e ad hoc st ylesheet s (t hat is, t hose not cont ained in a library) at t he Organizationlevel t hrough
t he St ylesheet t ab. See Stylesheets for more.
To do eit her, you need t o have t he necessary access levels.
Given t hat you now have suit ably modified st ylesheet s, you can make use of t hese t hrough t he "St yling" t ab of
"Edit Propert ies" of t he element . This t ab is available for all element s except t he form element at t he t op of t he
St ruct ure Panel t ree.
The t abs has 3 panels:

St yleset s
where designers can choose a st yle from a set of t hem as defined in t he st ylesheet , The most commonest example
is "Field Size", which oft en appears in t he wizard when a widget is dropped ont o a form's St ruct ure Panel.

Typed St yles
a read-only field t hat displays t he st yle t ypes associat ed wit h t he field. These t ypes are defined and assigned in t he
st ylesheet . See Stylesheets.

Edit Propert ies - 292 -


Nam ed St yles.

These 2 kinds of st yles are explained in det ail lat er, For now, suffice it t o say t hat :
t yped st yles are based on field hierarchy or field funct ion, Their allocat ion is aut omat ic and based on t he field's
place in t he form's st ruct ure
Named st yles are allocat ed manually, and t heir funct ions are more local, such as for set t ing a background color or
making a field t ransparent , and so on.

Edit Propert ies - 293 -


M anual Overrides

Edit Propert ies - 294 -


These should be one-off overrides. (If you find t hat you are cont inually applying manuals t hroughout t he form,
you should be changing t he t emplat e inst ead.)
The relevant panels are t he "Present at ion" and "Border" panels:
"Propert ies -> Capt ion -> Capt ion Present at ion" "Propert ies -> Field -> Field Border" "Propert ies -> Field -> Field
Present at ion" "Propert ies -> Widget -> Widget Border" "Propert ies -> Widget -> Widget Present at ion"

Edit Propert ies - 295 -


Edit Propert ies - 296 -
Cust om St yling
This t echnique st ands apart from t he ot her st yling adjust ment s.There is a panel for HTML-only set t ings, and
anot her for PDF-only comb-fields.

2 sam ple "HTM L Cust om St yling" panels

Cust om Classes means CSS Classes from a CSS st ylesheet (a quit e different ent it y form a Composer st ylesheet )
t hat is not under Composer's environment or cont rol. One scenario is: t he Cust om Classes belong t o a corporat e
CSS st ylesheet . If so, adding t hese CSS classes via t his panel can result in issues at rendering t ime, and are not an
ideal solut ion.
"Boot st rap border st yling" refers t o Twit t er's Boot st rap, a popular framework for implement ing responsive layout
behavior. The effect of having t his border st yling t urned on is rat her subt le:

A select ed t ext field in preview

The Background Image paramet ers use a bit map image file, .png, .jpg and so on, as "wallpaper" inside t he object .
The "Repeat " dropdown menu can be set t o "Default ", "Horizont al", "Vert ical", "Bot h" or "None".

Edit Propert ies - 297 -


Field Data
Overview
A writ able field's dat a is dealt wit h in 2 ways in Composer:

Dat a propert ies


which is about t he dat a cont ent s of t he field, but considered in isolat ion from t he rest of t he form, wit h t he excep-
t ion of radio but t ons t hat form part of t he one group (as t hey are, aft er all, just t he one dat a object wit h several
form fields working t oget her)

Dat a M odel
which is how t he relat ionship of t he field t o t he dat a st ruct ures of t he form's out put s

Dat a Propert ies


These are cont ained in "Edit Propert ies" in "Propert ies -> Dat a". There are a number of panels, depending on t he
t ype of field:
Dat a (always present in writ able fields)
Dropdown Dat a (in addit ion t o t he above for a dropdown menu field) Decimal Opt ions (when t he field is a decimal
number)

Edit Propert ies - 298 -


Dat a Panel

Edit Propert ies - 299 -


The propert ies shown in bot h t he Advanced and St andard Modes of t he panel vary wit h t he nat ure of t he field.
Here are some t ypical examples:

Edit Propert ies - 300 -


Edit Propert ies - 301 -
Some brief not es on t he panel's fields (Advanced Mode):

Init ial Field Value


Use t his as an ad hoc way of repopulat ing t he field. If you need t o repopulat e a number of fields from a dat abase
lookup or as a general configurat ion of t he form, see hereforanexampleofhowthis is done. M aximum Dat a
Lengt h
This prevent s t he user from ent ering more charact ers int o t he field. If you want t o do more t han merely having t he
field st op working once t he charact er limit is reached — such as warnings, in-line messages and ot her helpful cues
t o asssist users t o get t o submission — please see Validation .

Dat a Form at
This is t he raw dat a sent from t he form and as st ored in Transact ion Manager. This propert y is oft en specified for
PDF (in XFA dat a descript ion specificat ion).
The "${dat a.format }" is explained in ScriptingandDependencies.

Dat a Display Form at


This can be different from t he raw format , especially so wit h dat es. See DataTypes.

Dat a Clearing Policy


An import ant fact or in Privacy.

Values
Appears wit h fields t hat have several st at es, such as Boolean fields (see Field Types). These st at es can be named
and given an order of precedence. The "Blulk Edit " but t on enables you t o import a list of st at e names from a t ext
file.

Edit Propert ies - 302 -


Dropdown Dat a Panel
You use t his panel t o edit a dropdown menu field's values and displayed values. The displayed values appear in t he
menu on t he form. For example, t he form could, say, display "Nort hern Territ ories" in t he dropdown; but when
users select t hat value, t he form passes t he value "NT" t o t he TM server. The "${values}" ent ry means t hat all t he val-
ues equal t he displayed values. See ScriptingandDependencies.

Dropdown Dat a Panel (Advanced M ode)

Edit Propert ies - 303 -


Decim al Opt ions Panel
This panel appears for writ able numeric fields and are self-explanat ory. In t he example below, t he field is a currency
field and so t he posit ive and negat ive prefixes have a dollar sign.
The t wo fields for leading and t railing digit s have t wo propert ies each for HTML forms and unspecified form
t ypes. The leading and t railing values should be t he same for bot h form t ypes.

Edit Propert ies - 304 -


The Dat a M odel Tab

Scripting
Overview of Script ing
A major advant age of using t he Avoka Transact environment — rat her t han writ ing your forms from scrat ch in
HTML, Javascript and ot her script ing languages and writ ing t he server-side process — is t hat t he bulk of t he form's
implement at ion is t aken care of for you.
But t his means t hat you st ill have enormous scope t o specify how t he form behaves and t o inject script s int o t he
form. In t his t opic, we will discuss t he general principals for script ing.
These are t he ways t o script in Composer:

l Where available t here is a Rule Edit or

This performs simple logic operat ions. This edit or is rat her limit ed.

l A point -and-click Script Edit or window.

This is for Javascript script s. The edit or is far more capable, but requires a knowledge of Javascript .

Edit Propert ies - 305 -


l Writ ing a script yourself in a t ext edit or

The covered in t he advanced t opic Scripting. These script s can be complex.

The Com poser Script ing Language


In eit her case, t he language used is JavaScript , but wit h slight ly modified funct ion calls, documentedhere.

The Rules Tab


Script s and Rules go in t he Rules Tab. This has LH Menu it ems and depending, on t he nat ure of t he field, can have
from none t o 7. Here is an example of a Rules t ab wit h a full LH Menu:

Wit hin each panel t here are several t ypes of propert ies:
"Rule" propert ies "Policies" "Messages" "Act ions"
and some checkboxes in, for example, "Mandat ory" rules
and "Responsive Ruleset s" which are exclusive t o t he Responsive Rules.

"Rule" Propert ies


This t ype of propert y has a dropdown menu:
Script Based (always available in all "Rules" propert ies) Rule Based (available in only some "Rules" propert ies
Always (available in "Edit able Rules" and "Mandat ory Rules") Never (available in "Edit able Rules" and "Mandat ory
Rules") No Validat ion (only for "Validat ion Rules")
Regular Expression Pat t ern (only for "Validat ion Rules") for past ing in a regular expression for validat ion Fixed
Lengt h (only for "Validat ion Rules")
The "...based" it ems bring up an "Edit ..." but t on, which t akes you t o t he ruleseditor or script edit or..

"Policies"
These are always dropdown menus and t he choices are rest rict ed t o only t hose t hat appear in t he menus.
The t ypes of policy are:

Edit able Policy

i.e. whet her t he field (or fields) and it s children are writ able or read-only
Det ermines what happens when t he field is not edit able according t o t he rule in t he Edibilit y panel. Opt ions:

Edit Propert ies - 306 -


l l Disable and gray out t ext
l Disable
l Gray out

Edit able Clearing Policy

for more, see Privacy.

Visibilit y Policy

l When hidden exclude from layout

(i.e. t he hidden fields disappear ent irely)

l When hidden don't exclude from layout (i.e. leave space for t he hidden fields)
l When hidden gray out Init ial Visibilit y(Policy){}* seebelow.

l Visible
l Invisible

(i.e. t he invisible fields are not excluded from t he layout )

l Hidden

(i.e. t he invisible fields do not appear and t heir allocat ed space in t he form does not appear as a blank area)

Validat ion Policy

(see Validation as t here is rat her more t o t his t han just t he following 2 opt ions)

l Show error dialog


l Not show error dialog

N ot e: The int ent Init ial Visibilit y set t ings is meant t o speed up t he init ial rendering of t he form. If t he form is t aking
a long t ime t o render, visibilit y rules and visibilit y policies may be t he issues. You can sidest ep t hese by set t ing t he
Init ial Visibilit y policy for t he relevant fields so t hat t he form will render first up wit hout having t o t est t hese rules
and policies.

M essages
These are t ext fields, whose cont ent s are displayed when t he rule t ype — usually "Mandat ory" or "Validat ion"
— fails (t hough you also have t he opt ion of displaying t he message if t he rule passes inst ead).

Act ions
These are exclusive t o "Click" LH Menu it em. The Click panel only has t he "Edit ..." but t on for providing a script . The
Rules edit or is not available. The script will run only when t he field (eit her a but t on or a link) is clicked on.

Edit Propert ies - 307 -


Checkboxes
The checkboxes in t he Rules t ab panels are for simple eit her-or opt ions, such as whet her t he mandat ory ast erisk
will display for mandat ory fields.

Responsive Ruleset s
These apply only t o Responsive Layout set t ings for t he field. See ResponsiveLayout for more on t his.

Edit Propert ies - 308 -


The Rule Edit or

You build up a rule wit h t he Rule Edit or a "t erm" (or line in t he edit or) at a t ime wit h a maximum of 10 t erms. Each
t erm compares 2 fields on t he form, which you select using t he t wo magnifying icons, each of which brings up a
"Select a field" dialog cont aining a mini St ruct ure Panel, as shown.
On t he left -most column of each t erm, t here is a dropdown in which you select whet her t he t wo fields in t he t erm
are st rings, numerical or Boolean. Bet ween t he t wo fields is t he relat ionship bet ween t he t wo: "Equals", "Not
Equals", "<", "<=", ">" or ">=".
Add more t erms as required and t hen select t he relat ionship bet ween all t he t erms. You can only nominat e one
relat ionship for all t he t erms. They are:
"AND", meaning t hat t he rule is t rue only if all t he t erms are t rue "OR" where t he rule is t rue only if all t he t erms are
false.
The Specificat ion t ab is a t ext area where, if you
If you know somet hing of Javascript , you can do far more wit h t he Script Edit or.

Edit Propert ies - 309 -


The Script Edit or

Edit Propert ies - 310 -


Using t his edit or requires some knowledge of JavaScript . In t his sect ion of t he guide, we will only be using very
simple sample script s. The script edit or facilit at es int egrat ion of your JavaScript code wit h t he fields on t he form.
The script edit or can accomplish much more t han t he Rule Edit or;
Calculat ions such as summing t he values of fields t oget her, or mult iplicat ions, averages and so on Writ e more com-
plex script s involving "if" st at ement s, loops and so on
In fact , virt ually anyt hing t he JavaScript is capable of.

Just t o be clear, t hough t he script ing language of Composer is JavaScript wit h some minor differences. One of t hese
allows Composer's JavaScript t o use t he fields in t he form as variables. This makes Composer's script ing capabilit ies
very powerful indeed.
More ground on t his will be covered in Scripting in t he Advanced Topics. For now, we will be cont ent t o just demon-
st rat e how you use t he edit or t o int egrat e a script int o t he form.
To make t he edit or work, you need some working knowledge of JavaScript . We have already given an example of a
t ot al in t he foot er of a t able. That example is a sum of repeat ing element s. The following is a simple mult iplicat ion
of t wo non-repeat ing fields, just t o illust rat e how script ing works in Composer on a simple level.
Here is a very simple form where we t ake t he first writ able field "Amount 1" (a dollar value currency field) and mul-
t iply it by t he second writ eable field "Amount 2" and display it in "t ot al" a read-only currency field t o t he right .
We made a few t weaks t o "Amount 2" and "t ot al" and t he "t imes" and "equals" t ext s t o get t he layout as shown
below in Edit Propert ies for each of t hese fields:
For all, "Propert ies -> Layout -> Layout Const raint s -> Keep on same line (checked)"
For "t ot al", we made it read-only by "Rules -> Edit abilit y -> Edit ablit y Rule -> Never Edit able"
We could have saved ourselves t he t rouble of changing each widget by creat ing a cont aining block of t he 3 widget s
and t he plain t ext object s "t imes" and "equals" and t hen set t ing t he Layout Const raint s.

Edit Propert ies - 311 -


So, t o see t he calculat ion in act ion, we need t o preview t he form. Here is what it looks like aft er input t ing a couple
of arbit rary values int o Amount 1 and Amount 2

The JavaScript in t he example is only one line, which is t he reason t he line doesn't end in a semi-colon (";").

The Specificat ion Tab


If want someone else on your t eam t o do t he script ing or work t he Rules Edit or, use t he Specificat ion t ab t o
describe t he behavior you require. That descript ion will t hen at t ach t o t he field or block.

Edit Propert ies - 312 -


Dependencies
Overview
When a user loads a form, fills in it s various sect ions, uploads any at t achment s and event ually submit s it , t he form
has t riggered many event s, which Composer groups int o "phases", covered in more det ail in Business Rules and
AdvancedScripting.
Some of t hese t riggers are t he dependencies bet ween fields creat ed by script ing. In t he above simple example, t he
"t ot al" field list ens t o "Amount 1" and "Amount 2" and when "t ot al" sees t hat t he ot her 2 now have values, it will cal-
culat e and display t he value of t he calculat ion. The user does not have t o click on a special but t on t o get t he t ot al,
t he form does not have t o be reloaded, nor does t he user's browser (in t his case) have t o send anyt hing t o t he
server in t his phase. The calculat ion happens aut onomously.
When a form is complex, t hough, having very many dependencies can creat e performance issues. Composer has
many st rat egies t o t une such forms. One of t hem is t o t une t he t riggering in t he form so t hat it does not grind t o a
halt every t ime t he user changes a value in any of t he fields. In Composer 4, for t he first t ime, you can inspect t rig-
gers and dependencies on t he form.
When you past e script int o t he t ext area of t he Script Edit or, remember t hat you st ill have t o associat e t he fields
on t he form, using t he same point -and-click met hod shown above and set t ing t he field references.

Edit Propert ies - 313 -


Inspect ing Triggers

The t riggering condit ions of t he above simple demo script are list ed in t he "Triggering Condit ions" t ab of t he Script
Edit or. We will discuss t he advanced set t ings of t he radio but t ons in t he lower half of t he t ab lat er in
AdvancedScripting.

Addit ional event s will be covered in t he BusinessRules widget discussion.

Edit Propert ies - 314 -


Inspect ing Dependencies

Use "Edit Propert ies -> Dependencies" t o inspect t he dependencies feeding int o t he script (in t he "My Rule
Dependencies: panel) and t he out goingt riggers in t he "Triggered Rules" panel.

Edit Propert ies - 315 -


Preview & Publishing
Composer | Form Builder | v4.3 & Higher

Already we have seen, wit h t he simple examples above, t hat t he wireframe's represent at ion of t he form does not
image all t he feat ures of t he form as it will appear t o t he end user, for example here,
So, while you are designing t he form, you can do a preflight of it using Composer's Preview funct ion.
And as wit h t he appearance of t he form, t he Preview funct ion does not fully reflect t he behavior of t he form in t he
real world wit h regards t o at t achment s or in t he Mobile App or in ot her part s of t he form's workflow. To see t hese,
you publish t he form t o Avoka Transact ion Manager (or "TM").

Renditions
In Composer you define a form — a dat a collect ion experience once, if you will — and have it rendered t o look and
funct ion different ly on different devices and environment s.
Composer current ly support s t wo core t ypes of form t echnology (somet imes called "flavors"):
HTML forms using t he HTML5 and CSS st andards PDF forms using t he Adobe XFA st andard.
Thus t he form oft en can be rendered in HTML5 and PDF. These days, t he general pract ice is t o have users fill out
t he form in HTML5 and, aft er submission, get a PDF rendering of t he form in t he email receipt . The Preview func-
t ion in Composer has several rendit ion modes:
HTM L Responsive . which uses HTML5 t o render how t he form will appear in t he web browsers of mobile and
deskt op syst em.
PDF Receipt , uses t he XFA st andard and is non-int eract ive.
The Preview dropdown menu is at t he t op left of t he FormDesigner .

(Some older t emplat es give five choices, but now in Composer 4 all t he HTML choices have responsive behavior .
This is configurable on t he form object in t he st ruct ure panel, "Edit Propert ies -> Policies -> HTML Generat ion ->
Responsive -> Form Generat ion (HTML)" dropdown.)
To preview in HTML5, just select HTM LResponsive . In modernbrowsers, t he preview will render in a new t ab. If
t he form does not render at all, you may have t o change t he your browser's opup behavior. For example, in
Chrome, you can make t he Composer host name URL an except ion t o popups.
If you need t o resize t he preview t o simulat e mobile devices, just pull t he t ab out from t he t ab bar and, if neces-
sary, t ake t he result ing new window out of t he full size mode. (Do t his wit h t he middle but t on on t he t op right of
t he frame in Windows; or wit h t he green candy but t on on t he t op left of t he Window in Mac OS X.) See t he
ResponsiveLayout sect ion of t his guide for more on mobile device simulat ion.
For PDF preview, you must set t he browser's preferences t o use Adobe Acrobat or it s plugin. The reason for t his is:
all modern browsers have t heir own PDF renderers and t hese do not work wit h XFA.

Preview & Publishing - 316 -


Publishing to TM
There are good reasons t o publish your form t o TM while t he form is st ill in pre-product ion:
The behavior of t he form in preview does not accommodat e at t achment s Preview does not show t he look of t he
form in t he cont ext of t he port al Preview only simulat es how t he form will look on a mobile device
And t he same applies for how t he form will look in t he MobileApp
You cannot t est t he behavior of Camera widget s and ot her use of t he sensors of mobile devices
GPS locat ing is not available in Preview. GPS is available only in t hose mobile devices t hat support it . Wit hout GPS,
geolocat ion funct ions work only from IP address mapping, which is approximat e only.
Publishing t o TM is simple, and t he wizard is accessed t hrough t he "Publish" but t on in t he FormDesigner or at the
Forms Level of theUI.

You have t he choice of publishing t he form direct ly t o TM (via t he URL shown below) or of generat ing a zip file and
import ing t hat manually t o TM. Publishing direct ly is t he more convenient .
The layout of a t ablet form may also change based on t he size of t he t ablet , and whet her it 's in landscape or por-
t rait mode. This is not cont rolled direct ly by t he skin, but is cont rolled wit hin t he form it self. Please see
ResponsiveLayout .
Please consult t he Transact ion Manager Administ rat ion Guide on how t o t hen publish t he form t o a web port al (or
have a colleague wit h t he required access do it for you). You t hen will be able t o access t he t est form:
t hrough a nominat ed port al, or
via t he Mobile App, configured t o point t o a nominat ed mobile port al (see t he Transact Mobile App Guide on how
t o point your inst ance of t he Mobile App t o t hat port al), or
t hrough a URL creat ed by TM in an approved mobile device web browser (see DeliverytoMobileDevices).

Preview & Publishing - 317 -


Navigation
Composer | Form Builder | v4.3 & Higher

The navigat ion met hods t o guide users t hrough a form are of t he ut most import ance and deserve much t hought
when designing new business processes and t he web forms t hat embody t hese.

In an ideal world, navigat ion t hrough a form should be as convenient , int uit ive and frict ionless as possible. Achiev-
ing t his is goal will always be a balance bet ween t he needs of t he business and t rying t o provide t he user as enjoy-
able an experience as possible.

So here, "Navigat ion" means more in int eract ive forms t han providing "Previous" and "Next " but t ons at t he bot t om
of t he page. It means more t han providing menus and breadcrumbs. It means more t han rest rict ing t he user's
access t o t he form's pages t o a fixed sequence. It means more t han allowing t he user t o roam t hrough t he form at
random. It means more t han t ailoring t he form's layout t o t he range of devices t hat will be used t o access it . It
means more t han providing menus, be t hey down t he left hand side, along t he t op or, in a t ouch environment ,
brought up by swiping t o t he side.

What ever t he business funct ion of a form, all forms ult imat ely must aim at having t he user complet e t hem t hrough
t o submission. If t he user abandons t he form, t hat means a lost opport unit y. And we can now see how many users
access t he form and how many of t hem advance t o t he submission st age and how many abandon t he form (see
Analytics).

The Chrome of Navigation


" Chrome is t he visual design element s t hat give users informat ion about or commands t o operat e on t he screen's
cont ent (as opposed t o being part of t hat cont ent ). These design element s are provided by t he underlying syst em
— whet her it be an operat ing syst em, a websit e, or an applicat ion — and surround t he user's dat a."
— JakobNielsen
So, chrome informs users wit h clues about how t o use t he form. It is also not part of t he form's dat a — t he point
of creat ing t he form in t he first place — and t akes up valuable screen real est at e. The smaller t he screen, t he
great er t he cost of chrome in t erms of space.
But having only minimal chrome, adds frict ion t o t he form in t hat t he user will have fewer opt ions t o do such use-
ful act ions as going back several sect ions t o correct some ent ry.

Navigat ion - 318 -


The Sim plest Chrom e: None
At least by t his we mean t hat t he form does not int roduce it s own chrome. However, t he usual chrome t hat comes
wit h t he operat ing syst em and browser combinat ion is present , and t his chrome will not be perfect , even in such a
mat ure use case as web browsing.
So, t his means t he designer is limit ed a single-page form, and t he only way t o navigat e t he form is t o scroll t he
form in t he browser's window. While t hat does not sound so bad at first , it is very limit ing and, where t here is a lot
of informat ion t o be ent ered ont o t he form, leads t o vert ical clut t er. It also leads t o users get t ing confused if t hey
have t o make revisions. In order t o find where t o make t he revision, users have t o remember how far up or down
t hey have t o scroll t o find t he fields subject for change, or — even worse, use t he browser's "Find" funct ion. Thus,
even wit h t his, t he simplest navigat ion scheme, t here is frict ion, especially if t he form is long and det ailed.
And t he designer cannot cont rol how users move t hrough t he form. Some form element s, Sect ions for example,
can collapse and expand. Ot her element s on t he form can swit ch from being invisible t o visible. But users can st ill
skip t o t he end of t he form, in ant icipat ion of t he "Submit " but t on being t here, only t o be disappoint ed when t hat
but t on does not work because t hey have failed t o fill in all t he mandat ory fields, or have ent ered invalid inform-
at ion somewhere up t he form. See Validation for more.

Navigat ion - 319 -


But t on Navigat ion
This is slight ly more helpful. But users can only st ep forward and back. This simple chrome uses up t he bot t om of
t he page (and may also be duplicat ed at t he t op, t hough many designers resist doing t his). This does not amount
t o much space on t he deskt op, but in mobile — and especially on narrow smart phones in port rait orient at ion —
t hat space becomes a large part of t he available viewing area. And even more so, when t he form is responsive and
t he t wo but t ons spread out t o accommodat e t he t arget areas needed for t he t ouch int erfaces.

Such a simple concept , t hough, can suddenly become fraught . The above example has a simple color scheme:
orange t o move forward and whit e t o go back. But what if users move back and t hen forget where t hey have been?
Do we indicat e whet her users have viewed a page t hrough a wider select ion of colors? Probably not , because more
t han t wo colors have no int rinsic meaning. Users cannot experiment t o discover t he meanings assigned t o colors
(such as "already viewed", "yet t o be viewed", "not allowed t o view", "t he last page" and "t he first page") except by
moving t hrough t he pages wit h t he t wo but t ons.
On t he deskt op, where t he viewing area is t he largest of any viewing environment . t he vert ical space occupied by
t he t wo but t ons is small. But on a narrow mobile device (such as a smart phone in port rait mode), t he responsive
layout funct ion of t he form spreads t he but t ons out so t hat t heir t ap area is large enough t o be useful and st acks
t he 2 on t op of each ot her. Bot h are done t o minimize user frust rat ion — a vit al considerat ion in mobile.
N ot e: in t he following examples, all mobile screen shot s are eit her from Preview or in t he mobiledevice's browser ,
not in t he TransactFieldmobileapp .

Navigat ion - 320 -


Left Hand M enus

Navigat ion - 321 -


These are a t ried-and-t rue web design element .

The left hand menu shown above has 3 st at es (indicat ed by 3 combinat ions of t ext color and background color):
Current it em, here "Loan Informat ion" Ot her it ems, access allowed
Ot her it ems, access not yet allowed
The color coding scheme becomes obvious t o users t hrough t heir int eract ions wit h t he menu. It does not need t o
be spelled out .
In t erms of navigat ion and user experience, t he left hand menu is a vast improvement on 2 but t on navigat ion:
Users get clues as t o how much more work t hey have t o do before t hey get t o t heir goal: being able t o submit t he
form.
They can see what is in st ore, from t he labels of t he menu it ems. They get t o see where t hey have been.
If allowed (see NavigationChoices below), t hey can skip several pages.
They can move several pages back in t he form, wit hout get t ing confused or forget t ing where t hey were. So what
are t he down sides, given t he menu's superiorit y over t he 2 but t on scheme?
The space below t he left hand menu is dead space. There are a few reasons why t his dead space exist s, mainly due
t o past limit at ions of HTML, and such reasons do not mat t er much any more. But t he convent ion st ill exist s and
some usabilit y gurus advocat e it . The dead space is hardly an issue on t he deskt op. In fact , in t he above example,
t he deskt op has anot her level of deadspace (under t he subheading "Funds Required"). The rendering on t ablet -
sized screens eliminat es t his second level of whit espace.
The menu but t ons on mobile have t o be large enough t o prevent user frust rat ion. But t his makes t he left hand
menu unsuit able for very narrow devices such as smart phones in port rait orient at ion. In t he above example, t he
left hand menu disappears ent irely, replaced by a t ypical mobile piece of chrome: t he mobile menu icon, familiarly
called "t he hamburger icon".
Anot her variat ion on t he left hand menu chrome:

Navigat ion - 322 -


This example has anot her st at e added t o t he 3 already encount ered in t he previous example: t he hover st at e (as
seen in "Propert y Det ails" where t he user's mouse cursor is hovering over t he menu it em). Here, "hovering" means
t hat users move t heir mouse cursor over an object but do not click on t heir mouse's but t on t o select t he object .

LH M enu Variant s (Unrecom m ended)


The left hand menu can have variant s, but most of t hese have, in t he light of experience, led down blind alleys.
Right -just ified capt ions. Notrecommended.

Fly out sub-menus. These have died a quiet deat h on t he web as t hey demand t oo much manual dext erit y from
users.

Navigat ion - 323 -


Top M enus

Top menus are now fashionable and wit h good reason. They work well on t he deskt op and wit h t ablet s and ot her
wide mobile devices. They also eliminat e t he dead space of Left Hand menus. This example shows a 5- st at e t op
menu: not e t he differences backgrounds bet ween "Get t ing St art ed" (i.e. already visit ed) and "Loan Informat ion"
(available but not yet visit ed). "Propert y Det ails" shows t he hover st at e.
Hover does not exist in a mobile and t ouch environment . For mobile, hovering is no longer an opt ion.
However, t hey do not work for narrow mobile devices. And you should keep t he capt ions brief, as t he capt ions
begin t o wrap for narrower screens. The solut ion is t he same as t he above example: t he hamburger icon.

2-Level M enus

Avoka Technologies has given much t hought t o providing second-level menus t o t heir forms. But we have reject ed
a large number of t he exist ing solut ions,
MegaMenus, i.e. big 2-dimensional dropdown menus. These worked well on t he deskt op, but do not work in
mobile due t o t heir dependency on hovering (see TopMenus above).
Flyout s. Again, t hese are hover-dependent and t herefore not an opt ion for mobile.
The example above shows our current pract ise: "Shipping & Billing" has t wo subdivisions, shown in t he chevrons
below t he main, t opmost menu. Our t est s show t hat t hese work well, bot h on t he deskt op and in mobile.

Navigat ion - 324 -


M obile M enu Chrom e
This is t he mobile solut ion t o all t he above navigat ion chrome, aside from t he 2-but t on convent ion. The Mobile
Menu But t on is also known among developers as "t he hamburger" icon.

Here on an iPhone 5s, t he t op menu appears in landscape; t he Mobile Menu But t on in port rait . Tapping on t he
Mobile Menu Icon causes t he menu t o slide out from t he left . The menu has only 4 st at es because it lacks hover.

Navigation Choices
Chrome is only part of t he st ory. There are several more degrees of freedom t o form navigat ion.

Navigat ion - 325 -


Unconst rained vs Const rained
Unconst rained here means t hat users can select any it em on t he menu at t heir merest whim. This cert ainly
removes frict ion but t here is a possible down side: t he lack of discipline imposed upon users could be a fact or in
t heir abandoning t he form.
Const rained here means t hat users can only make a rest rict ed set of menu choices at any one t ime in filling-in pro-
cess. To encourage users t o underst and what is happening and where t hey st and in t heir dat a ent ry, t he subt le col-
oring of t he menu it ems is t acit ly employed — wit hout any t edious explanat ion. Users who "get it "
will be happy; users who don't will also be happy in t hat t hey have not been burdened wit h t he t ask of ploughing
t hrough some ma-rigmarole t hat is of absolut ely no int erest t o t hem.

Visible vs Hidden Navigat ion Choices


Hiding part s of t he form is best done t o convenience users, not t o conceal aspect s of t he form because t hey are
"unwort hy" for what ever arbit rary reason.
So, you may have already not ed t hat t he headers of Sections in Composer forms have much t hat is hidden: t he
help t ext , for example. These hidden passages of t he form are t here t o help users who may be st ruggling and need
some assist ance. Confident users do not want t o see t hese, as wading t hrough long, unneeded hand- holding t ext
is off-put t ing and adds for t hem frict ion. But not having help for ot hers will add frict ion for t hem .
Anot her use case of hiding part s of t he form as wit h accordion wizards, where t he sect ions of t he form can expand
or collapse (inst ead of being rendered as new pages). However, do bare in mind t hat users may not fill in some sec-
t ions due t o inat t ent ion — for example not realizing t hat t hey should expand some sect ion.
Applying validat ion will cat ch t his mist ake, but you as a designer forfeit t he t rust of users for let t ing t hem down
and leading t heir navigat ion t hrough t he form ast ray.
Hiding some part s of t he form as a result of users choosing some opt ion or anot her could also be somet hing t hat
eliminat es frict ion for some users and t herefore be a good t hing.

Validat ion, Errors and Navigat ion


There are good reasons for having validation and not allowing users t o submit unt il one or more crit eria are met .
There are also good reasons why users get fed up wit h it . Remember: t he more users successfully submit a form,
t he bet t er. In t hat respect , t he web is a popularit y cont est . The t ension bet ween creat ing frict ion or gaining t he
t rust of users is not a paradox (a problem t o be solved); it is a t ype of dilemma, where t here several opt ions, all cor-
rect in t hemselves, but where you as a designer have t o decide what solut ion t o adopt as a judgment call.
Error blocks and validat ion messages are good t o have, but remember t he frict ion t hey creat e and t hat t hey will
win you no popularit y.

Abandonment
Abandoned forms are a fact of life in online int eract ions. We have done our best t o give you t he t ools t o achieve
reasonable user navigat ion and hopefully t o reduce t he percent age of abandoned forms.
To t hat end, we have int roduced t o Composer 4 t emplat es capable of det ect ing where abandonment occurs in t he
form filling process. This dat a is t hen accessed t hrough TM. Not e t hough t hat t here are privacy implicat ions.

Navigat ion - 326 -


Portal Chrome
Avoka Technologies st rongly recommends t hat forms do not appear embedded in t he port al page of your ent er-
prise. One common problem is t hat t he port al it self is not responsive and t hus t he form cont ained wit hin it will not
display properly on a mobile device. Inst ead, we recommend t hat :
t he form t ake up t he whole browser window (similar in effect t o t he a href t ag's paramet er
t arget ="_parent " in ht ml)
is not be rendered in a separat e window or t ab (as seen, for example, wit h t arget ="_blank")
so, as a corollary, t here should not be breadcrumbs on t he form, especially t hose t hat lead back t o t he port al's
home landi

Sections
Int roduct ion
In previous versions of Composer, navigat ion was implement ed in forms t hrough t he wizard set t ings of t he form
and t he sect ion fields in t he St ruct ure Panel. Sect ions could be organized int o t hree levels. Each sect ion had an elab-
orat e header which included collapsible Help, and various ot her user aids; sect ions also had foot ers.
The cont ent was bet ween t he t wo.

So, using Sect ions t o divide t he form brings t he following advant ages:
Sect ions have chrome associat ed wit h t hem, such as headers, foot ers, collapsible help and inclusion in t he nav-
igat ion menus.
So, all t his associat ed chrome will be consist ent t hroughout t he form. Changes t o t he chrome can also be (if
desired) applied globally
Const rained and Unconst rained menu navigat ion is cont rolled t hrough Sect ions
Sect ion st yling is professionally designed, including margins, font s, and colors, t o provide an at t ract ive form Sec-
t ion st yling is cont rolled via st ylesheet s. Change t he st ylesheet t o subt ly or radically change t he look of your form.

In Composer 4, t he navigat ion menus (shown above) are more powerful t han in older version. To accomodat e t he
new menu funct ions, t here is a break from t he older way of set t ing sect ion levels (as embodied in t he Sect ion Assist -
ant shown below) and t he new way. Also, now t here are many more "Edit Propert ies" set t ings for sect ions t hat con-
t rol t hese new menus. The older sect ion levels and t he older st yle of menus are st ill present in t he product t o
ret ain compat ibilit y wit h legacy designs.
So, we will first discuss t he older navigat ion funct ions t hrough Wizard set t ings. Then, we will move on t o t he new
ways of configuring navigat ion.
The headersandfooters of sect ions cont ain many import ant element s of sect ions, such as t he numbering of sec-
t ions, t he help and more.

M aguire Tem plat e


Some of t he sect ion navigat ion behaviors are embodied in t he t emplat e. This advanced t opic is covered in Tem-
plates below.
The mobile menu is a feat ure of MaGuire (see Templates for an example of t his t emplat e).

Navigat ion - 327 -


Adding a Sect ion
The following applies equally t o all t emplat es, including Maguire.
A Sect ion is really a specialized t ype of block, which uses feat ures of blocks, including having children and hiding
sub-blocks wit hin it .
A convenient way of creat ing sect ions is t o use t he Sect ion Assist ant and it s wizard.

The Sect ion Assist ant wizard.

Sect ion Levels


In t he older versions of Composer, t here are t hree levels of sect ions provided in t he Palet t e: Levels 1, 2 and 3. This
scheme is ret ained in Composer 4 for compat ibilit y, but we will discuss below t he newer way of organising Sec-
t ions.
The st yle of each level can be cont rolled independent ly.
These older st yle of Sect ions Levels must always be correct ly nest ed wit hin each ot her — Level 1 at t he t op, wit h
Level 2 indent ed one level below, and Level 3 indent ed inside Level 2. If you nest your sect ions incorrect ly, t hen
your form may look st range. If t his happens, simply nest t he sect ions correct ly. There is no requirement t o use Sec-
t ions or all t he available sect ion levels, alt hough most forms use at least one Sect ion Level 1.
In previous versions of Composer, Level 1 sect ions are t he main wizard pages. This has changed wit h Composer 4.

M aguire's Use of Sect ions


Inst ead of using Sect ion Levels, Composer 4 now uses Sect ion Groups t o organize t he menu it ems int o a 2- level
navigat ion scheme.

M aguire Tem plat e use of Level 2 Sect ions


We recommend t hat each Level 1 sect ion in t he Maguire t emplat e have at least 1 Level 2 sect ion. This is not for
inclusion in t he navigat ion menu; t he Maguire t emplat e makes use of Level 2 sect ions for opt imum layout . The con-
t ent of each Level 1 sect ion should be dist ribut ed among several Level 2 sect ions. T

Wizards
In older Composer versions, t he whole form was set t o be a Wizard, a Wizard wit h a menu, or not a Wizard at
all,
Now, individual sect ions can set t o act as Wizard pages in t he Wizard Panel. And, independent ly, a sect ion can also
be set t o become a menu it em or not .
"Edit Propert ies -> Propert ies -> Wizard -> Wizard -> Act as wizard page (checkbox)"
"Edit Propert ies -> Propert ies -> Wizard -> Wizard -> Creat e Wizard Menu Ent ry (checkbox)" "Propert ies -> Wizard ->
Wizard -> Add t o Navigat ion Menu (checkbox)"
So, if you opt for having a page not act as a wizard page, it will be appended under t he previous page; if you st ill
make it creat e a wizard ent ry and add t o t he navigat ion menu, t he sect ion will st ill appear in t he menu, despit e not
being a separat e page.

Navigat ion - 328 -


2-Level Navigat ion

M aGuire t emplat e t op 2-level menu

Now, all Sect ions in t he form menu are Sect ion Level 1 (see Adding a Sectiom ), irrespect ive of whet her t hey are t op
level it ems or second level it ems in t he navigat ion menu. A sect ion's menu level is now det ermined by t he propert y
"Propert ies -> Wizard -> Wizard -> Sect ion Group Name"
Top Level menuit ems now belong t o t heir default group (i.e. "${sect ion.heading}")
Second Level It ems now are grouped according t o t heir t op level menu it em's name. Wit h t he menu shown
above:
"Cust omer Det ails" belongs t o t he sect ion group "${sect ion.heading}"
"Personal Det ails" & "Addit ional Det ails" bot h are made t o belong t o sect ion group "Cust omer Det ails".
Also, t hey are bot h have t he set t ing "Propert ies -> Wizard -> Wizard -> Add t o Navigat ion Menu (checkbox)" as
checked.
N ot e: Though 2-level navigat ion is not exclusive t o Maguire, t he Chevron format of t he t op menu (shown imme-
diat ely above) and t he slider ,mobile menu are Maguire feat ures.

The Navigat ion M enu in Com poser

Feat ures com m on t o all t em plat es


Propert ies t o configure t he appearance of navigat ion menu st at es (discussed in LHMenus above)
On t he form object at t he t op of t he st ruct ure panel t ree, "Edit Propert ies -> Theme -> Menu ->" and t hen t hese
panels:

Navigat ion - 329 -


l "Menu Ent ry"
l "Menu Ent ry - Act ive"
l "Menu Ent ry - Disabled"
l "Menu Ent ry - Enabled"
l "Menu Ent ry - Hover"
l "Menu Ent ry - Visit ed"

Navigat ion - 330 -


M aguire Exclusive Feat ures
Mobile menu navigat ion for narrow mobile devices
Illust rat ion of t he st ruct ure behind themobilemenuseeninNavigation .

The Maguire navigat ion menu does not render in wireframe


To view it , you must preview t he form, where you can also see t he different responsivelayouts of t he menu.

Navigat ion - 331 -


Headers and Footers

Navigat ion - 332 -


The Sim ple Approach

Navigat ion - 333 -


Composer 4, and t he older versions of Composer, use t he "Edit Propert ies" of t he sect ion object s in t he st ruct ure
panel t o configure t he sect ions. This approach is useful for prot ot yping and proof and concept . It will even work for
mobile devices, despit e it s limit at ions.
You use 4 panels t o cont rol t he sect ion object s wit h t he simple approach:
Propert ies -> Sect ion Header -> Header Propert ies -> Sect ion Help -> Help
Propert ies -> Sect ion Numbering -> Numbering
N ot e: t hese numbers only appear in form menus cont rolled by t he Wizard panel. They do not appear in Maguire-
st yle navigat ion menus.
Propert ies -> Wizard -> Wizard
N ot e: t his panel cont rols whet her t he sect ion appears in t he (Maguire-st yle) navigat ion menu and whet her it
behaves as a wizard page. In Composer 4, forms can now have some Level 1 sect ions behaving as wizard pages,
while ot her Level 1 sect ions may not . In earlier versions of Composer, t he whole form eit her was a wizard or not .

Navigat ion - 334 -


The 2 propert ies highlight ed in t he above image of t he Wizard Panel support t he Maguire-st yle Navigat ion. Make
sure t hey are checked when you creat e a new sect ion in a Maguire-st yle t emplat e.

Navigat ion - 335 -


The M odern Approach

Navigat ion - 336 -


M aguire-st yle Navigat ion

Navigat ion - 337 -


The whole approach in Composer 4 and t he Maguire st yle of t emplat e is diffewrent from t hat of t he earlier versions
of Composer.
The earlier approach was t o have t he help passages of t he form associat ed wit h each sect ion of t he form. Now, t he
Maguire st yle has an overall form header wit h global help cont ent across t he whole form, as part of Composer's
responsive layout navigat ion st rat egy.

All t hese feat ures are cont rolled in t he St ruct ure Panel t hrough t he following blocks and t heir cont ained object s,
most of which are visible only in t he Advanced Mode of t he St ruct ure Panel..

Navigat ion - 338 -


These blocks expand int o a large number of cont ained element s and it is beyond t he scope of t he t his guide t o doc-
ument every aspect of t his st ruct ure. By all means, explore t hese blocks t o see how t he Maguire navigat ion st ruc-
t ure is built up and edit ed.

Foot ers
Here, we ment ion foot ers only in passing. In t he St ruct ure of t he form, foot er blocks come under t he Advanced
Mode. There is a global foot er block for t he form, which is defined in t he block's "Edit Propert ies -> Layout -> Lay-
out Const raint s -> Layout Dat a -> Sout h". Also, each Sect ion has a foot er block defined in t he Advanced Mode St ruc-
t ure as Some Section -> Out er Area -> Foot er Area.
In t he abovescreengrab , t he global foot er of t he Maguire-st yle sample is "Transact Foot er".

Navigat ion - 339 -


Recolor and Hide on Print
Re-color is a separat e facilit y t o t he concept of a separat e Receipt rendit ions (see PreviewandPublishing) for print -
ing. In general, we recommend t he use of Receipt rendit ions rat her t han Re-color on Print .
Most of Avoka's st andard Sect ion st yles make use of colored backgrounds, wit h fields having whit e backgrounds.
St udies show t hat t his is best pract ice in t erms of look and usabilit y. (It is also possible t o creat e st yle-sheet s wit h a
more "plain" appearance - please cont act Avoka if you would like t o explore t his opt ion for your organizat ion's
forms.)
However; many organizat ions and individuals st ill ut ilize black and whit e print ers, or wish t o conserve t he amount
of ink used for print ing forms. Large "swashes" of color do not sat isfy t his goal, and also do not fax very well. There-
fore, most of our sect ions have t he abilit y t o "Re-color on Print ", found in "Edit Propert ies -> Propert ies -> Print ing".
"Re-color on Print " means t hat when t he user clicks t he print but t on in Adobe Reader, t he form will "morph" t o a
more print er-friendly black-on-whit e look, and t hen morph back again once print ing is complet e. This behavior can
be cont rolled via a propert y on t he sect ions. Not e t hat some widget s (such as Images) will not observe re- color on
print , and will print in color if available.
Re-color on print only applies t o PDF forms and PDF receipt s.
A relat ed propert y allows part icular object s t o be hidden when t he form is print ed, "Edit Propert ies ->:Propert ies
-> Print ing -> Visibilit y on Print [PDF]". You can explicit ly set t his propert y on blocks if you want t heir cont ent s t o
be hidden on print .

Navigat ion - 340 -


Layout
Composer | Form Builder | v4.3 & Higher

Just as t he concept of form navigat ion has changed now t hat users will be int eract ing wit h your forms on a variet y
of devices, where formerly you could have been cert ain t hat t hey would only be using a deskt op comput er or
lapt op. Indeed, we now group lapt ops wit h desk-bound comput ers and call t hem collect ively "t he deskt op". The
import ant dist inct ion is t hat "t he deskt op" is now charact erized by a large monit or and a point ing device (eit her a
mouse or a t rackpad).
Mobile devices have rest rict ed screen space and t he user int eract s wit h t hem t hrough a t ouch int erface. See
Devices vs Desktop for more.
As a result , LegacyLayouts now are a t hing of t he past . What worked in hard copy will probably no longer work on
a smart phone.
This early part s of t his sect ion of t he Composer 4 Guide explores t hese issues a lit t le. The sect ion ends wit h
ResponsiveLayout .
Also, forms t hese days will be consumed more in HTML rat her t han as PDF. User expect t his. In fact wait ing for a
PDF form t o load, which oft en t ake much longer t han t he HTML version of a form, is more unwant ed frict ion for
t he user.

Legacy Layouts
Overview
There are several different fact ors t o consider when laying out a form. We encourage you t o t hink carefully about
your goals, rat her t han t rying t o lay out a form t o mat ch an exist ing paper form.

Goal Suggestions

Cor r ect for m layout on multiple devices, Keep your layout as simple as possible. Avoid fixed
with differ ing widths and scr een r eal estate, width fields
or switching fr om por tr ait to landscape Use ver tical layout manager s. Use Layout-Fill.
mode. Avoid fixed width fields.

Use ver tical layout manager s, with keep-on-same-line


Useability, as much as possible, with gr oup- to keep r elated fields on the same line.
ing of r elated fields together . For mor e contr ol, use hor izontal layout manager s for
each line, within an over all ver tical layout.

In gener al, design fir st for HTML, and then pr eview in


Both PDF and HTML.
PDF and adjust as necessar y.

Layout - 341 -
Composer is not designed to make use of ever y bit of
whitespace.
Usability studies show that whitespace in a for m
gr eatly impr oves r eadablity and usability.
Disable all inter active featur es, including hide/show
logic. Expand multi-line text fields, section help, expand-
Fitting the for m onto a single page (no mat-
able tables and r epeats.
ter how big the for m is).
Ther e is no cost for an electr onic for ms to have mul-
tiple pages. In fact, multiple pages save money by
incr easing usability.
If a for m is ultimately going to pr ess, consider having
two differ ent for m designs: one optimized for inter -
activity, the other for r eceipt or pr int.

Use hor izontal layouts, gr id layouts, and fixed width


fields as necessar y. Use caption left wher e necessar y.
Make the desktop HTML a fixed page width. (This is
Mimicking an existing paper for m. the default for desktop HTML.)
Don't tr y to make your for m identical to the paper
for m. Remember , you want a better user exper ience
for your user s, and that means having design changes.

Goal Suggestions

You cannot cr eate pixel-per fect copies of existing for ms with Composer . If
you r equir e pixel-per fect for ms, you should consider cr eating a separ ate
Replicating an existing r eceipt for m.
paper for m as a "pixel o
per fect" copy.
Note: Tr ansaction Manager can be configur ed to suppor t a separ ate
for m for the r eceipt and for the inter active for m.

Keep it sim ple


Keep your layout as simple as possible. More complex layout s become ext remely challenging. Keep it simple,
unless you have very specific requirement s.

Layout - 342 -
Let Com poser do t he work
Composer's Layout Managers do t he fields alignment and uniform sizing, based on your organizat ional t emplat e
and st yle-sheet s. Bet t er t o let Composer do t he work, rat her t han st ruggling wit h Composer for t he sake of a par-
t icular look.

Use Percent ages, not Fixed Widt h layout s


You don't know how big your user's screen will be. Try not t o make t oo many assumpt ions about widt hs, and let
Composer do t he work of layout out your form.

Use Field St yling


You can use Advanced mode in t he propert y edit or t o explicit ly set field widt hs in pixels, mm, or inches, known as
"magic numbers". Somet imes t his may be necessary, but t his int roduces t wo problems:
Every form designer needs t o remember t hese "magic numbers" t o achieve consist ency.
If you need t o change some aspect of t he layout , you need t o modify each field independent ly.
Composer allows you t o define st andard fixed widt h field sizes such as Small, Medium and Large in your
st ylesheet s (see FieldStyling). The advant age of t hese named sizes is t hat t here is not hing t o remember, and if you
need t o change t hem, you can simply adjust t he st yle-sheet . A good rule of t humb is t hat t hese sizes should all be
mult iples of each ot her so t hat combinat ions of smaller and larger fields all line up.

Checkboxes and Radio But t ons


It can be very useful t o use a Grid Layout for groups of checkboxes and radio but t ons. Use t he same number of
grid cells for every set of radio but t ons or checkboxes on your form, so t hat t hey all line up correct ly. Use spans for
capt ions t hat are very long. We recommend 4 t o simplify responsive layout , alt hough t his is your preference.
Please see t he Grid Layout t opic on t his for det ails.
Please not e t hat t he grid layout is not ideal if you want your form t o lay out correct ly on narrow screens like smart -
phones.

Unit s and usage t ips


Somet imes it is necessary t o put unit s or ot her t ips on a form. For example "miles" for a measurement of dist ance,
or "MM/ DD/ YY" as a t ip for t he format for a dat e field. You can use a Plain Text or Rich Text field for t his purpose,
but oft en it s difficult t o get t he t ext t o line up correct ly wit h t he field it self, part icularly wit h Capt ion Top fields.
Composer has a special Label Field t hat always ensures t hat t he label is aligned wit h t he Text Field t hat can be
used for t his purpose.

Capt ion Top or Capt ion Left


We generally recommend Capt ion Top, for a number of reasons. This is summarized here: {+}http://+ www.a-
voka.com/composerblog/2011/10/form-design-tip-caption-top/

Layout - 343 -
M ixing Checkboxes or Radio But t ons wit h Text fields on a line
If you mix Text Fields wit h Radio But t ons or Checkboxes on t he same line, you oft en get result s where t he res-
ult ing layout looks bad. This is because Radio But t ons and Checkboxes, by default , have t heir capt ion on t he same
line, while Text Fields (for most Composer st ylesheet s) have Capt ion Top.

There are a number of simple ways of solving t his problem.


Remove t he capt ion by clearing t he Label value, or by checking t he advanced propert y Propert ies -> Capt ion
-> Capt ion Cont ent -> Never Show Capt ion. This effect ively associat es t he capt ion on t he Ot her radio but t on as t he
implicit capt ion for t he t ext field.
Set t he "Propert ies -> Capt ion -> Capt ion Present at ion -> Capt ion Placement " on t he Text Field t o "Left ". Place t he
Ot her Text Field on t he next line.

Boxy Layout
Many paper forms designed for t he US Government use a st yle known as "Boxy". Here is an example of t his st yle:

Layout - 344 -
An exam ple of a Boxy layout

Layout - 345 -
This layout was designed around half a cent ury ago, when it had some advant ages for form-designers who creat ed
t hese forms using simple t ypographic t ools, and t he print ers who print ed t hem. It has serious disadvant ages in t he
modern world, which include:
The layout is oft en very cramped, and is designed t o cram as many fields on t he form as possible t o reduce print -
ing and handling cost s. There is no need for elect ronic forms t o have t his rest rict ion, and t he value of whit e space
wit hin a form t o aid in usabilit y are well document ed. Usabilit y st udies have shown t hat t his approach creat es a
large number of problems, including cust omers having difficult y underst anding t he form, missing dat a, and dif-
ficult y for t hose reviewing t he form t o find t he informat ion t hey need.
Inline help needs t o be very concise, and so help is oft en eit her t erse and difficult t o underst and, or provided in a
separat e document . Elect ronic forms do not suffer from t his rest rict ion.
The layout is ext remely difficult t o maint ain. The addit ion of a single field or changing of even a single word on t he
form can result in large port ions of t he form needing t o be re-designed and re-posit ioned.

The fields t hemselves are difficult t o locat e on t he form, as t hey don't really st and out from t he surrounding t ext .
Even for handwrit t en forms, t he capt ion t ext get s in t he way of t he area for writ ing, and oft en leads t o cramped
writ ing which is more difficult t o read.
There is no possibilit y of using hide/ show logic or repeat ing sect ions in t he form, because t he ent ire form is so
t ight ly st ruct ured. The 1040 form only allows for four dependent s, and has special inst ruct ions for applicant s wit h
more t han four dependent s.
Get t ing fields t o line up correct ly can be very challenging, part icularly in t he presence of column-spans and row-
spans.
This format is oft en unsuit able for capt uring elect ronically and feeding int o backend syst ems, because oft en mul-
t iple logical fields are compressed int o a single line. For example, in t he above example t he "cit y, t own or post
office, st at e and zip code" are all combined int o a single field. This is easy for a human t o read, but quit e difficult t o
split int o separat e fields t o upload int o a back-end dat abase.
This st yle is part icularly unsuit able for re-flowing ont o different screen sizes, because t he fields have very fixed
widt hs and posit ions, and any at t empt t o reflow t hem causes t he ent ire form t o loose it s visual int egrit y.
There is generally lit t le consist ency wit hin t hese forms, because t hey are complet ely hand creat ed, and oft en
t weaked many t imes over a long period. The sample above uses t ext of various different font s, different t echniques
for displaying help t ext , and different st yles of heading.
The result of t rying t o maint ain elect ronic forms in t he Boxy st yle is:
Confused and unhappy users due t o low usabilit y
Unsat isfact ory forms on t ablet s or smart phones
Frust rat ed form developers and high maint enance cost s.
It is possible t o creat e Boxy st yle forms in Composer by creat ing fields wit h out er borders, and ensuring t hat at
least one field on each line is set t o Horizont al Fill (or ot her t echniques), but , t his is a challenge. We generally recom-
mend t hat it be avoided.
We suggest t he following approach:
Use one of Composer's exist ing st ylesheet s as t he basis for your own organizat ional st ylesheet . This ensures t hat
your forms look and funct ion well on all t ypes of devices including t ablet s, and on mult iple screen sizes, as well as
allowing you t o make use of advanced feat ures such as hide/ show logic, repeat ing sect ions, and int uit ively laid out
forms.
If t here is a need t o produce a print ed or elect ronic form t hat is exact ly t he same as an exist ing paper form, import

Layout - 346 -
t he exist ing form int o LiveCycle Designer as art work, add overlay fields, and use t his form as t he receipt in Trans-
act ion Manager. You will need t o bind t he fields in t he art work form t o t he same XML Schema t hat is used and pro-
duced by Composer, and t hen all t he fields will simply flow across from t he int eract ive form t o t he receipt . The
art work form is generally quit e easy and quick t o implement , because t he layout already exist s, and t here is no
need t o add any int eract ive feat ures since it will only be used for out put . You may need t o make cert ain rest ric-
t ions in your int eract ive form such as limit ing t he number of rows in cert ain cases.

Layout Issues
M easurem ent s
There are several different ways t o specify measurement s in Composer. There is also some "t ension" bet ween t he
different ways t o specify measurement s:
PDF is primarily a physical page-orient ed t echnology, and t he most nat ural way t o specify measurement s is in
physical unit s, such as inches or mm.
HTML is primarily a screen-orient ed t echnology, and t he most nat ural way t o specify measurement s is in screen
unit s, such as pixels for deskt op devices.
Mobile devices (part icularly iOS) prefer t o measure in point s (pt ).
In responsive layout , theunit ofmeasurement isthepx, but t his no longer means "pixels" as it did on t he deskt op.
Composer's Deskt op st yle HTML rendering does at t empt t o mimic t he page-orient ed layout of PDF, whereas t ab-
let and mobile rendering largely dispense wit h t he page-orient at ion.
Composer allows you t o ent er measurement s in any one of t hese unit s, and will convert t hese unit s on your
behalf. Conversion from screen unit s t o page unit s assumes a part icular DPI, and mixing t hese unit s may result in
slight discrepancies.
Measurement s can be changed wit hin a form for field widt hs and for margins. Most ot her measurement s should
be left alone, as t hey are balanced for use wit hin t he st ylesheet .
Composer also allows you t o specify measurement s in percent ages or weight s if a layout manager is being used —
in t his case, t he act ual measurement will be calculat ed by Composer based on t he relat ive sizes of several different
component s.
Images height and widt h are usually specified in pixels, based on t he act ual pixel size of t he image. If you resize an
image, best result s are oft en obt ained by using int egral fract ions of t he original image size.

Layout - 347 -
Recom m endat ions
In general, you should avoid using explicit widt hs as far as possible. The main reasons for t his are:
Oft en you don't know what size screen your users are going t o be viewing your form on, and you should let Com-
poser t ake care of sizing your fields t o fit t he screen. Use a layout manager rat her t han explicit widt hs. Widt hs
should be specified in t he st ylesheet , not in t he form. This way, if you need t o change anyt hing, you can do it in a
single place (t he st ylesheet ) rat her t han having t o do it in every single field.
If you do use explicit widt hs, we recommend:
Most of Composer's in-built st ylesheet s use page unit s in mm. Unless you have a specific reason t o do ot herwise,
it 's generally recommended t o use mm.
If you are building forms primarily for HTML, and require very explicit cont rol over sizes, specify pixels (px). Not e
t hat t he meaning of "px" has changed wit h t he advent of high resolut ion mobile devices. See the
relevantpassageinResponsiveLayout .
If you do need t o apply part icular sizes (e.g. widt hs) t o your fields, consider using a named st yle-sheet ent ry, or a
layout manager — t his is more maint ainable and flexible.

Devices vs Desktop
The paramet ers t hat define mobile, t ouch and deskt op are changing rapidly as t he comput ing environment is in a
st at e of flux. Time was when "mobile" was synonymous wit h "t ouch". Then Apple int roduced "Mult i-t ouch" t rack-
pads t o it s full range of lapt ops, wit h t he result t hat classic t ouch gest ures, such as spreading t wo fingers t o zoom
in, moved t o t he deskt op. Next , Windows 8 came along and lapt ops began t o have t ouch screens for an even more
direct experience of manipulat ing object s wit h t he fingers. It is now commonplace for users t o int eract wit h com-
merce sit es wit h t heir fingers on t ablet s.

Though we have already (in Navigation ) made t he point t hat mobile devices have different requirement s from t he
deskt op, t hose dist inct ions are becoming more of a spect rum rat her t han discret e st eps.
For t hat reason, we would like t o show you following video present at ion. It last s about an hour, and is wort h your
t ime.
http://vimeo.com/64202295
Video from Luke Wrobelewski http://www.lukew.com/presos/preso.asp?31

Layout - 348 -
Delivery to Mobile Devices
Two M odes of Delivery
M ode 1: The Web Browser
As we have already said, t he comput ing environment is now in a st at e of flux. In t he past , when all web browsing
t ook place on t he deskt op, t here was a period — right ly or wrongly referred t o as "browser wars" — when web
design was complicat ed by t he different and undocument ed ways t hat t he various browser of t he t ime would
render t he same web page in quit e drast ically different ways. This came at t he worst possible t ime for t he web,
when HTML st andards were also in t ransit ion t o t he adopt ion of Cascading St ylesheet s (CSS), an at t empt t o sep-
arat e st yle from cont ent .
The end result was t he concept of t he so-called "modern browser", which means one t hat support s t he lat est it er-
at ions of t he CSS st andard.
However a new skirmish has broken out , now on mobile. The current st at e of play is t hat t here are 3 broad t ypes
of operat ing syst ems in play:
Apple's iOS operat ing syst em, which runs iPhones, iPad and iPod t ouches,
iOS usually updat es annually and, because t here is lit t le frict ion impeding t his, most iOS devices rapidly upgrade t o
t he lat est version of t he operat ing syst em
Android, originally developed by Android Inc, which was bought out by Google.
There are a number of manufact urers who produce Android phones, most not ably Samsung.
Generally, few Android phones updat e aft er purchase t o t he lat est Android release, t he reasons for which are
many and t oo complex t o discuss here.
Also t here are a number of manufact urers in China who have "forked " Android and whose devices run no longer
on a Google-sanct ioned version of Android.
Microsoft 's Windows Phone operat ing syst em.
This operat es on mobile-devices only. It does not have t he market share of t he above t wo. Microsoft 's Windows 8.
Microsoft has been pursuing a "Windows everywhere" policy and has, wit h it s lat est it erat ion of Windows, int en-
ded t hat Windows 8 runs on bot h t he deskt op and on larger mobile devices such as t ablet s.
To furt her complicat e t his, t here are t wo flavors of Windows 8 on Microsoft 's own brand of t ablet s: t he Surface.
One runs on Int el cent ral processors; t he ot her (t he Surface RT) runs on complet ely different cent ral processors.
The t wo flavors are not compat ible or int erchangeable and t he Surface RT requires a different version of Windows.
And if t hat were not enough, every copy of Windows 8 ships wit h t wo different browsers: Int ernet Explorer for t he
familiar user int erface of Windows and Int ernet Explorer running on theModernuserinterface.
This is only t he beginning. The different mobile operat ing syst ems also have different browsers, usually a default
browser t hat ships wit h t he phone and ot hers t hat on some or all of t he phone models and manufact urers run-
ning t hat operat ing syst em

Oper ating System Common ver sions Default Br owser Other Br owser s

iOS 7, 6 Safar i Fir efox, Chr ome

Andr oid 4.4 (KitKat) Chr ome Fir efox

4.1 to 4,3 (Jelly Bean) "Andr oid Stock Br owser " Fir efox, Chr ome

Layout - 349 -
Oper ating
Common ver sions Default Br owser Other Br owser s
System

Pr evious ver sions

Windows Inter net Explor er


8, 7 ?
Phone Mobile

Fir efox, Chr ome on the


standar d Windows
Windows 8.0, and soon to be r eleased IE and Moder n Inter -
desktop.
8 8.1 (64- and 32- bit ver sions) face IE
IE only on the Moder n
desktop

IE for RT and
Windows IE only for the two types of
8.0 (32-bit) Moder n Inter face IE
8 RT desktop.
for RT

It is no surprise t hat all of t hese have t heir quirks and incompat ibilit ies. And, t he mobile hardware has also evolved
rapidly, so t hat web pages t hat failed on many of t he older mobiles in t he past now run quit e comfort ably on t he
newer.

M ode 2: Via Nat ive App


As mobile users know all t oo well, t he ot her means of delivery is t hrough mobile apps, as t hese generally offer
speed and st abilit y in a given mobile operat ing syst em. At least , t hat is t he t heory.
Avoka offers t he TransactFieldApp , where you can publish your forms t o t he mobile app wit hout having t o
redesign t he form t o run in t he app. There are even some widget s t hat work solely in t he app and not t he browser.
This mobile app is available for iOS, Android and Windows Mobile Phone.

Which M ode is Superior?


The answer is: it depends. If you need t o make use of an app-only funct ion, t he choice is obvious. If users are com-
ing t o t he form from a websit e, t he choice is equally obvious.
Just remember, t oo, t hat inst alling an app (which is usually done t hrough an online st ore, for inst ance t he Apple
St ore) is a furt her source of frict ion for users.

Responsive Layout
N ot e : Int ernet Explorer 8 doesnot support responsive behavior because IE 8 does not support modern CSS
frameworks. Responsive Design as a pract ice only began in 2010.

Layout - 350 -
Int roduct ion
Responsive Web Design is a t echnique for web pages t o render properly bot h on t he deskt op and mobile
devices. A responsive page can be served t o deskt op browsers or t o mobile device browsers, such as smart phones
or t ablet s, and will render opt imally on all of t hem wit hout t he need t o det ect ("sniff") on what device t he form is
being rendered, nor t he need t o serve different versions of t he page.
It follows t hat all forms should now incorporat e responsive element s and you should now assume t hat many
users will be accessing all forms from mobile devices.
As we have already said, there are 2 modes of delivery tomobile.
The responsive behavior of a form is cont rolled by t he t emplat e associat ed wit h t he page. There are a number of
set t ings in Nut s & Bolt s under "Nut s & Bolt s -> Responsive Rules" and t hese are t uned t o t he Maguire-st yle of t em-
plat e.
The Maguire Responsive Behavior depends on 3 t hresholds values of t he widt h of t he device measured in "px".
This no longer means a number of physical pixels on t he device's screen, because many modern devices now have
higher resolut ions t han t he monit ors of t he previous cent ury, yet t he expect at ion is t hat pages should
display t he same way as t hey did before. Also t here are devices t hat have high resolut ion models, "Retinadisplays"
and t he like. Again, t he expect at ion is t hat object s should be rendered t he same size on t hese different device mod-
els. Object s cannot be rendered smaller on t he higher resolut ion models because of t he t ouch-based int eract ion
wit h t he user: smaller object s frust rat e users as t hey at t empt t o accurat ely hit t ouch t arget s.
So t he port rait mode widt h of an iPad (for bot h Ret ina and st andard resolut ion models) has been st andardized as
768 px and an iPhone as 400 px.
An Operat or in a Ruleset det ermines when t he responsive rule set kicks in. The det ermining fact or is t he widt h of
t he device's browser, measured in "px" (also called "css px" in ot her document at ion), which no longer means a
number of physical pixels on t he device's screen, because a number of modern devices now have higher res-
olut ions t han t he monit ors of t he previous cent ury, yet t he expect at ion is t hat pages should display t he same way
as t hey did before. Also t here are devices t hat have high resolut ion models, "Ret ina displays" and t he like. Again,
t he expect at ion is t hat object s should be rendered t he same size on t hese different device models. Object s cannot
be rendered smaller on t he higher resolut ion models because of t he t ouch-based int eract ion wit h t he user: smaller
object s present difficult ies for t he fingers of users t o accurat ely hit t ouch t arget s.
So, t he value of t he widt h of any device in px is t he value t hat t he device it self report s back t o t he engine handling
CSS rendering in it s browser and in apps running on t he device.
So, here, for comparison, are t he widt hs t hat apply t o Apple mobile devices:

Device Por tr ait width in px Landscape width in px

iPhone 4, 4s 320 480

iPhone 5, 5c, 5s, late model iPod Touches 320 568

iPads(both Retina and non- retinadisplays) 768 1024

Layout - 351 -
Com poser use of Thresholds
To manage t he complex set s of responsive behaviors shown in Navigation above, Composer 4 and t he Maguire-
st yle of t emplat e have 3 levels of t hresholds, set in "Form Opt ions -> Generat ion Opt ions -> Edit Propert ies -> Prop-
ert ies -> HTML Generat ion" in t he Responsive panel. The default values are:

Thr eshold Level Tr igger ing width (in px)

1 768

2 560

3 400

Layout - 352 -
Previewing Responsive Behavior

Layout - 353 -
This explained in Renditions. The default set t ing for Composer is t o have only 2 preview set t ings, "HTML [Respons-
ive]" and "PDF". If you want , you can separat e out t he HTML preview modes int o Deskt op and Responsive t hrough
"Form Opt ions -> Generat ion Opt ions -> Edit Propert ies -> Propert ies -> HTML Generat ion
-> Responsive -> Responsive Mode [HTML]". There is really no need t o do t his in Composer 4; bet t er adjust t he
widt h of t he browser windowing displaying t he HTML Preview and wat ch t he effect s as you move t hrough t he
t hresholds.
To t est responsive behavior, select HTML preview in t he dropdown menu, t op left of t he Form Designer:

The preview will usually show in a new t ab on your browser. To t est responsive behavior, pull t he t ab out of it s con-
t aining browser window, and make t he new window re-sizable (done using t he window cont rol icons on t he t op
right of t he window in Microsoft Windows, or t he t op left candy-colored icons in OS X). As you narrow t he window,
you pass t hrough t he t hresholds and doing so t riggers t he next st age of responsive layout where t he layout of t he
form changes accordingly. The changes are quit e dramat ic:

Hint : Firefox has a convenient feat ure for viewing responsive behaviors. Ot her browsers do not have such a ready-
made facilit y. You access it
in Windows from t he orange dropdown menu on t he t op left of t he browser window. in OS X from "Tools -> Web
Developer -> Responsive Design View" in t he t op menu.

Layout - 354 -
This result s in a read-out of t he widt h of t he rendered page:

Layout - 355 -
Grid Layout Caveat s
Many grid layout s do work in Responsive forms, but not all.
Grids wit h more t han 4 columns may look unsat isfact ory above t hreshold 3. You must preview your form above
and below t he various t hreshold widt hs.
All grid layout s are fine below t hreshold 3.
Adjust t he "Size" set t ings or t he number of columns in t he grid for a workable solut ion.

Layout - 356 -
Act ions
In Composer, t he Nut s & Bolt s Responsive Rules (which, unlike previous versions of Composer, now depend on t he
t hreshold levels) are now read only. You cannot alt er t he Responsive Rules in t he St ruct ure Panel.
You can, t hough, point various element s in your form t o whichever of t hese rules is appropriat e for t hat form ele-
ment (t hrough t he "Edit Propert ies -> Rules -> Responsive -> Responsive Ruleset [HTML]" dropdown menu).

Wrap
The "wrap" act ion t akes inline fields and, when responsive behavior kicks in, places each of t hese on separat e lines.

Wrap and fill


Inline fields are placed on separat e lines and all fields st ret ch across t he widt h of t he display.
N ot e: t ables must be set t o "wrap and fill" or t hey will not lay out properly in t he narrower t hresholds.

Fill
The "fill" act ion should only be used in Wizards wit h left -hand menus. For t he effect , see the iPad rendering
oftheexampleWizard above. Ot herwise, t he "fill" act ion only has meaning for responsive behavior for object s t hat
require special script ing.

Hide
Some element s should not be shown on mobile devices as t heir presence is inappropriat e for t he layout on t hat
device.

Hide (no m edia support )


Some element s should not be shown on mobile devices, due t o t heir fixed space requirement s or t heir relevancy.

Show
The opposit e of "hide". In ot her words, t he visibilit y of t he form object s allocat ed t o t he show responsive ruleset s is
det ermined by t he device's posit ion among t he 3 t hresholds.

In Line Validat ion M et hods


See Validation . "In-line validat ion" means t hat users receive messages as t hey proceed filling out t he form, rat her
t han receiving a message when t hey reach t he end of t he page or form. In-line validat ion is of t he ut most import -
ance on mobile devices, as t hey reduce user frict ion if t heir ent ry in a field does not pass validat ion. The last t hing
t hey would want is t o be t old at t he end of filling in a mult ipage form t hat t hey have t o reverse back t hrough t he
form, especially in a t ouch environment where doing so can be difficult and frust rat ing.

Layout - 357 -
Tool t ips
Touch int erfaces have a few differences wit h t he deskt op mouse-dependent user environment . In t ouch t here is no
concept for hovering over an object or t ext . Inst ead, users can hold t heir fingers over some t ext or object , and
ot her funct ions of t he user int erface come int o play, such as t he "magnifying glass" cursor cont rol for moving
t hrough t ext , or act ivat ing t he copy and past e cont rols. Tool t ips have no meaning at all in t he t ouch- driven world
of mobile. You must t herefore not rely on t ool t ips t o guide users t hrough t he filling process.

Layout - 358 -
Submissions & Attachments
Composer | Form Builder | v4.3 & Higher

So far, we have discussed how to use the Form Designer , Navigation , and Layout , all of which are meant t o lead t o
submission. When users fail t o complet e submission of t he form, t he form is said t o be abandoned. This is a most
unwant ed result and a wast e of t ime for everyone.
Users are oft en asked t o upload files, called at t achment s, as support ing document at ion. Most at t achment s are
generat ed out side of t he form, and can be scans, Word document s, PDFs, JPEGs, PNGs and so fort h.
However, t here are form element s capable of generat ing at t achment s from wit hin t he form, for example: scribble
pads for users t o make t heir signat ure
camera widget s for uses t o t ake pict ures wit h a mobile device's in-built camera barcode-reading widget s for use
wit h a device's camera.
Defining at t achment s (i.e. files uploaded wit h t he form) used t o done exclusively in Transact ion Manager. Now
t hese can also be defined in Composer.
The Preview funct ion of Composer does not include user int eract ions when t hey upload at t achment s; for t hat ,
you will have t o publishtoTransactionManager .

File Uploading
Defining At t achm ent s in Com poser
There are t wo at t achment widget t ypes. You add all of t hese t o t he one sect ion on t he form, here called "At t ach-
ment s". It makes sense t o have t hese in t he last sect ion of t he form which usually cont ains t he "Submit " but t on.

TM At t achm ent Table


Add one only of t hese, and it s rows will aut omat ically be populat ed wit h t he det ails of t he at t achment s.

TM At t achm ent Rule


Add one of t hese per at t achment at t he same st ruct ural level as t he TM At t achment Table. Use t he "Creat e a New
Field" wizard, which pops up on adding t he rule t o t he form, t o give it an "Int ernal Name". You can also furt her spe-
cify each at t achment 's propert ies in t he rule's "Edit Propert ies" dialog.

Submissions & At t achment s - 359 -


TM Subm ission Block
You also need submit but t ons, so we have added a TM Submssion Block (as "MySubmit Block") t o t he sect ion. This
block adds several submission but t ons t o t he form, which give users t he opt ions t o "Submit Now", "Save Online" or
"Save t o My Comput er:"
Here is t he result ing st ruct ure of adding a "TM At t achment Table" and t wo "TM At t achment Rule" widget s t o a sec-
t ion cont aining a "TM Submission Block".

You can t hen preview t he rendit ion of t he form, where t he At t achment Table get s populat ed according t he t he
At t achment Rules:

Submissions & At t achment s - 360 -


How t his st ruct ure renders in preview.

The t able informs users t hat t hey will be request ed t o supply t hese at t achment aft er clicking on t he "Submit " but -
t on. This behaviour cannot be previewed in Composer: t o see t his, t he form must be published t o Transact ion Man-
ager. In our example, t he form was published wit hout furt her modificat ion in Composer; all t hat was done in TM
was t o assign t he form t o a port al and t o t urn off it s "Test " mode. The result ing screen aft er t he "Submit " is:

Resuling "Subm ission At t achm ent s" page.

Delivery of At t achm ent s


The "I will deliver t his document manually" but t ons appear on t he "Submission At t achment s" by default for each
at t achment . To remove t hem, set in Composer t he "Edit Propert ies -> Dat a -> Submit Met hod" for each rule t o
"Elect ronic".

Submissions & At t achment s - 361 -


Email Acknowledgements
If you require an email t o be sent t o t he user as an acknowledgment , receipt or any ot her business reason, t his
must be set -up in Transact ion Manager.
There is current ly no way t o specify emails t hrough Composer. Transact ion Manager, t hough, has a great deal of
funct ionalit y and cont rol of email messages, Please refer t o t he Transact ion Manager Administ rat ion Guide.

Signatures
There is a range of signat ure widget s:
Signat ure [Wet ] and TM Signat ure [Wet ]
Dropping t hese on t o t he form has t he same effect . Pre-submission, t he form present s t he user t he message, con-
t ained in "Edit Propert ies -> General -> Inst ruct ion Set ". The default is:

"Signat ures are not required at t his t im e. Aft er you have subm it t ed t his form ,
print t he receipt , sign it and send it in."
Aft er users have clicked "Submit " t hey are present ed wit h:

Submissions & At t achment s - 362 -


Wet signat ure form aft er subm ission.

DocuSign Signat ure


Creat es a block t o handle the DocuSign eSignature process. The users fill in t heir names and email addresses and
DocuSign verifies t he users via a t wo-st ep process. N ot e: use of t he service incurs a service charge.

Signat ure Pad Widget [HTM L]


The widget 's "Edit Propert ies -> Propert ies -> General -> General -> Signat ure Type" can be set t o "Draw It ", "Type
It ", and "Choose at Runt ime". "Draw It " gives users a signat ure canvas t o sign wit h t heir finger or mouse (see
below). "Type It " present s users wit h a t ext field.

Submissions & At t achment s - 363 -


The signat ure canvas.
Signat ure Pad Popup [HTM L]
Similar t o t he signat ure pad above, except t hat t he pad appears in a separat e lightbox superimposed over t he
form. On "Save", t he light box vanishes and t he signat ure shows as a t humbnail.

Not es
Use a t rue Digit al Signat ure if users have a cert ificat e or smart card available.
Allow t he end-user t o click a "Sign" but t on, and specify t heir username (and t he dat e) if t hey don't have a digit al sig-
nat ure.
In HTML, just use t heir username and t he dat e.
If in Adobe Reader, and t he form is not "reader ext ended", just use t heir username and dat e.
The name and dat e from a t rue digit al signat ure will also populat e t he form's username and dat e, so in HTML even
if users re-use t he form, we st ill have a record of t he signer.
When eit her t he t rue Digit al Signat ure or t he Signat ure field is signed, an invisible checkbox is checked. This will
allow st andard edit abilit y rules t o be defined so t hat t he form can be locked down aft er signing.

Submissions & At t achment s - 364 -


Dynamic Data
Composer | Form Builder | v4.3 & Higher

Overview
In Composer, Dynamic Dat a has t wo meanings:
Dynamically changing t he informat ion displayed on a form wit hout reloading t he page

Accessing a t hird part y web service for dat a for t his dynamic display

What is Dynam ic Dat a?


Dynamic Dat a is an Avoka Transact capabilit y t hat allows a form t o communicat e back t o t he Transact ion Manager
Server while t he form is st ill being filled in and even display new dat a on t he fly, wit hout t he page being reloaded or
t he form being submit t ed. This allows an addit ional level of funct ionalit y t o be built int o forms.
Dynamic Dat a is a general purpose communicat ion mechanism and can be used for many reasons. Common use
cases are:
Sending some dat a from t he form t o t he server (such as a user id) and ret rieving some informat ion t o populat e
fields in t he form (such as t heir address).
Sending some dat a from t he form t o t he server (such as a user id) and ret rieving some informat ion t o populat e a
pick-list in t he form (such as a list of t he subject s t hat t he user is enrolled in). The pick-list can be in t he form of a
drop-down list , t able, or ot her visual element .
Sending some dat a from t he form t o t he server t o perform a server-side calculat ion. Sending some dat a from t he
form t o t he server t o perform a server-side validat ion.
Dynamic Dat a requires collaborat ion bet ween t he form developer, and a server-side developer who defines a
Dynamic Dat a service in Transact ion Manager. Please refer t o t he Transact ion Manager document for more inform-
at ion on t his.
Composer provides a number of different facilit ies for using Dynamic Dat a:
Widget s t hat have pre-built Dynamic Dat a support , such as t he "Lookup" But t on. An assistantthatbuildslookup-
styleDynamicDatacapabilities.

Dynam ic Dat a in Act ion


We recommended you init iat e Dynamic Dat a invocat ions by a direct user act ions, like a but t on click, not from impli-
cit act ions, such as exit ing a field. Direct act ions set user expect at ions t hat "somet hing t ime-consuming should
now happen, and may even fail." Int ernet performance and reliabilit y is beyond our cont rol, so using a but t on set s
end user expect at ions t hat some act ion is about t o occur.
However, it is also possible t o use Dynamic Dat a t o perform "predict ive" lookups, such as t he list of complet ion
hint s seen while t yping in a Google search . The AutoSuggest example below shows t hese predict ive lookups using
t he Veda Geolocat ion service.

Dynamic Dat a - 365 -


The Dynamic Data Assistant
By dropping t he Dyanmic Dat a Assist ant ont o t he form, and filling in a few det ails, you can populat e your form
wit h a dynamic dat a fields in a few st eps by merely filling in t he "Add A Dynamic Dat a" dialog.
In t his example, t he Transact ion Manager service definit ion is "ACMEPOST", which in real life would access some
webservice from a t hird part y provider. Here, t here is only one input field, "Suburb" and t he TM service ret urns mul-
t iple set s of 3 fields each.
The "Result Block Type" select or t oward t he bot t om of t he dialog gives 3 opt ions:

St andard Block
which will display only one set of ret urned dat a

Repeat able Block


which will display mult iple set s of dat a in t he more flexible format t han a t able st ruct ure

Dynamic Dat a - 366 -


Table
as select ed in t his example. Each set of ret urned dat a will populat e a row of t he t able.
We have also act ivat ed t he "Test Mode" checkbox. The assist ant will t hen provide a set of fake dat a aut omat ically.
You can also provide your own fake dat a, as explained below. Of course, for t he form t o work from real dat a, t he
service must already be defined in TM.

Dynamic Dat a - 367 -


The Dynam ic Dat a Assist ant wizard dialog.

This dialog result s in t his wireframe and st ruct ure:

Dynamic Dat a - 368 -


Dynam ic Dat a Assist ant creat es t he following st rut cure and wirefram e.

Previewing t he form in HTML and clicking on t he "Lookup" but t on result s in t he following display of t he default
fake dat a generat ed by t he assist ant .

Dynamic Dat a - 369 -


Preview of t he form wit h fake dat a generat ed by t he Dynam ic Dat a Assist ant ,
deskt op vs narrow m obile

The fake dat a belongs t o t he st ruct ure's but t on, here called "Lookup". Going t o t he but t on's "Edit Propert ies ->
Propert ies -> Dat a -> Dynamic Dat a Test ing" exposes a t ext field called "Test Dat a (Fake Result JSON Object )". If you
wish, past e your own JSON dat a here. If t he "Result Block Type" is eit her "Repeat able Block" or "Table", all t he JSON
fake dat a will display; if not , only t he first set of t he fake dat a will display.

When t he service is ret urning an unmanageable number of hit s, consider using pagination .

Dynamic Dat a - 370 -


AutoSuggest

Dynamic Dat a - 371 -


Overview

Dynamic Dat a - 372 -


An aut o-suggest field is a t ext field (and it s associat ed cont rol widget ) where t he rest of cont ent s of t he field are sug-
gest ed t o t he user in a popup below t he field, and t he user select s t he correct informat ion. The suggest ions are
obt ained from a dynamic dat a service (DDS). A common use case for aut o-suggest is ent ering a household address
wit h suggest ions coming from a geodat a DDS.
Here is how t he field looks and behaves:

For t he aut oSuggest widget t o work, t he widget configurat ion has t o correspond t o t he Groovy script s of t he

Dynamic Dat a - 373 -


service in t he "Service Definit ions" page of Avoka Transact ion Manager. In ot her words, unlike most widget s in Com-
poser, t he necessary service creat ion and script ing must already exist in Transact ion Manager before t he widget
can be added t o t he form.
The following discusses:
Building an aut oSuggest form element from scrat ch, wit h a service we have defined as ACME POST in Transact ion
Manager
Using predefined widget s and script s t hat ship wit h bot h Composer and Transact ion Manager for t he VEDA
GeoCoder webservice
For furt her det ail on t he configurat ion paramet ers, refer t o thenotesbelow.

Dynamic Dat a - 374 -


Reference Dat a Lookup Block

Dynamic Dat a - 375 -


CSV Dat a Wit h Headings

Dynamic Dat a - 376 -


Anot her widget , t he TM Reference Dat a Lookup Block, also provides lookup dat a. The aim of t his widget is t o give a
convenient way t o provide an aut o suggest funct ion wit h no programming. The reference dat a can be an Avoka
Transact dynamic dat a service defined in TM (see t he Transact ion Manager Administ rat ion Guide), or from pre-
populat ed dat a (see hereforanexampleofhowyouintroduceprepopulateddataontoaform using a Dat a Field wid-
get ). In t his example, we use t est dat a.

The only change we made t o t he st ruct ure built from t he block was t o build t he "Result " block (3 in-line t ext fields
named according t o t he t able headings of t he CVS t est dat a) and point t o it in t he "Configurat ion" panel. Not e t he
"Complex Reference Dat a" checkbox: it is act ivat ed because t he dat a is a t able wit h more t han 2 column headings.

Dynamic Dat a - 377 -


Panels in "Propert ies -> Dat a" for t he "Type" node (a TM Reference Dat a Lookup block)

Which result s in t he following behavior:

Dynamic Dat a - 378 -


CSV Dat a Wit hout Headings
You can have only t wo columns of dat a, t hat is only one pair of dat a point s per row separat ed by a single comma.
Make sure t he Complex Reference Dat a checkbox is unchecked.
So, as t here are now no headings, t he convent ion is t hat t he left dat a point or column is refered t o as "display".
The right dat a point or column is called "dat a". The default paramet ers of t he Configurat ion Panel is t o have t he left
column, "display", as t he "Trigger Field Name"; t he right is t he "Dat a Field Name".

Not es on Aut o Suggest ion _cont roller Dat a Configurat ion Param et ers
The following t ables describes some of t he "TM Aut o Suggest ion Cont roller" paramet ers and gives t he default
abst ract ed values provided off-t he-shelf in t he "TM Veda Address Lookup Block [Aust ralia] -> _cont roller". If you
want t o change t hese values, you should do t his in t he TM Veda Address Lookup Block [Aust ralia], not in it s chil-
dren.
N ot e: you st ill nominat e t o use t est dat a in t he "TM Veda Address Lookup [Aust ralia] -> _cont roller -> Dat a -> Test
Mode" checkbox.

AutoSuggest
_contr oller ->
VEDA Contr oller
Pr oper ties -> Par ameter Descr iption
Abstr acted Value
Data -> var i-
ous panels

Dynamic
$../{dds.ser -
Data Ser vice Points to the DDS
vice.name
Name

Minimum
Char acter s The number of keystr okes befor e the auto-suggest popup
$../{dds.min.char s}
to tr igger appear s
auto suggest

A message displayed in gr ey in the tr igger field while the user


Continue Typ- $../{con-
has still not made a selection fr om the suggestions pr esented
ing Message tinue.message}

Displayed at the bottom of the suggestions if the typed input


in the tr igger field is not an exact match to one of the sug-
Not in List $../{notInList.mes-
gestions pr esented. The user clicks on the message to leave
Message sage}
the tr igger field. What then happens is deter mined by the
"Clear Tr igger Field When Not Matched" checkbox

DDS Fail Mes-


Displayed if the ser vice times out. This is usually left blank. [blank]
sage

Dynamic Dat a - 379 -


Clear Tr igger If the user leaves the tr igger field, and the entr y does not
Field When match any of the suggestions, the field becomes empty.
[checked]
Not Matched Other wise, the un-matching entr y will r emain. The "Not in List
checkbox Message" will be displayed.

Enables another layer of dependent data to be accessed


Second DDS fr om a DDS ser vice and r eceive mor e auto suggestions in a
$../{dds.-
Ser vice secondar y field. It follows that ther e ar e secondar y input
detail.name}
Name fields, and that test data can also be pasted into another
Test Data field.

specifies number of milliseconds befor e the DDS access fails.


Timeout 0
This value is usually left as "0".

Delay of Tr ig-
ger ing DDS sets the delay befor e the user input tr igger s a quer y on the
200
(in mil- DDS. If this is set too shor t, ther e will be usability issues.
liseconds)

"Hide St andard Address Block" in VEDA Block Widget


This is a special checkbox in "TM Veda Address Lookup Block [Aust ralia] -> Propert ies -> Dat a -> Veda Con-
figurat ion": t he "Hide St andard Address Block". It s behavior is as follows:
When checked:

l Init ally only t he t rigger field is visible and t he address block invisible,
l If t he user select s one of t he suggest ions, t he filled-in t rigger field only is visible
l If t he user select s "My address is not list ed", t he address block becomes visible and t he focus moves t o
"Address Line 1".

When not checked:

l Init ially, bot h t he t rigger field and t he address block are visible
l Init ially only t he t rigger field is writ able
l If t he user select s "My address is not list ed", t he address block becomes writ able and t he focus moves t o
"Address Line 1".

In bot h cases:

l The t rigger field will be cleared, regardless of t he set t ing "_cont roller -> Clear Trigger Field When Not
Mat ched".

Dynamic Dat a - 380 -


Sequence Num bers
Sequence numbers are enabled by t hese lines at t he end of t he service definit ion Groovy script in Transact ion Man-
ager:
/ / See if t here is a querySt ring holding a sequence number def value = request .get Paramet er("seq")
if (value == null | | "".equals(value)) {
/ / The request paramet er 'seq' was not present in t he query st ringOR
/ / The request paramet er 'seq' was present in t he query st ring but has no value ret urn result
} else {
/ / add t he sequence number back on t heresult
result += new JSONSerializer().t oJSON("{'seq' : '" + value + "'}") ret urn result
}
If t here have been a number of request s made on t he DDS, t he responses may not be ret urned in t he same order
as t he request s. If sequence numbers are being emit t ed in response, t he value of seq is increment ed wit h each
response, allowing TM t o t ell if responses came back out of sequence. TM will t hen only act on t he most recent
response, t hat wit h highest seq number.

Int ernet Explorer 8 Issue


End users on IE8 can receive mult iple alert dialogs. The workaround for t his is set t ing t he "TM Aut o Suggest ion Con-
t roller -> Edit Propert ies -> Rules -> Click -> Failure Not ificat ion" and choose "Do Not hing".

Dynamic Dat a - 381 -


Pagination
Composer now has a "Paginat ion Block" widget (current ly specifically for Dynamic Dat a using a "Lookup" but t on).
It is very simple t o add t o a form using a Dynamic Dat a Service wit h a t able in t he result bock:
just drop in a "Paginat ion Block" ont o t he form
point t he lookup but t on of t he input block of t he dynamic dat a service t o t he page cont roller of t he Paginat ion
block
point t he page cont roller of t he Paginat ion block t o t he lookup but t on of t he input block We illust rat e t his by
adding paginat ion t o t he ACMEPOSTexample.

Add from t he Palet t e, a "Field Types -> Paginat ion -> Page Paginat ion Block" element . Fill in t he result ing dialog:

Dynamic Dat a - 382 -


Adding a Page Navigat ion Block

N ot e : t he "Include Dynamic Dat a But t on" in t he Page Navigat ion Block is not act ivat ed in t his example: t here is
already a but t on in t he ACMEPOST Dynamic Dat a block.
And. vice versa , you point t he Dynamic Dat a Service back t o t he page navigat ion st ruct ure, via t he ACMEPOST
Lookup but t on's "Edit Propert ies -> Propert ies -> Dat a -> Dat a -> Page Navigat ion Cont roller".
There must be enough rows of fake dat a in t he result t able t o act ivat e t he paginat ion funct ionalit y. If so, t he pre-
view looks like t his:

2nd page of t he page navigat ion out put (using fake dat a).

Please refer t o t he Responsive Layout sect ion about viewing t he result t able on mobile devices. You should give
some t hought on how you want t he t able t o appear intheresponsivelayout thresholds, where each t able cell get s
it s own line inst ead of being laid out in rows.

Dynamic Dat a - 383 -


TransactField M obile App
Composer | Form Builder | v4.3 & Higher

Avoka Technologies offer a couple of ways for users t o access your forms on mobile devices:
Through t he device's web browser, wit h Responsive Layout t echnology
Via a nat ive Transact Field App.

About the App


The Avoka Transact Field App runs on iPads, iPhones, Android t ablet s and phones, and Microsoft Windows devices.

Transact Field Mobile App - 384 -


The Avoka Transact Field App's m ain user int erface

It delivers t o t hese devices int uit ive mobile dat a-capt ure applicat ions t hat are built using t he Avoka Transact plat -
form. The Tarnsact Field App client affords t he following capabilit ies t o mobile workers:
Allows field workers t o t ake t heir forms wit h t hem out in t he field
Gives field workers a t ask list of forms t o complet e or approve and a t imeframe in which t o do t hese. Synchronizes
forms aut omat ically t o t he device so t hat t hey can be filled out online or offline
Holds submit t ed forms t emporarily on t he device, complet ing t he submissions when reconnect ed Enables forms
t o make use of device capabilit ies, including camera, GPS, and sign-on-glass Enforces securit y, including password
prot ect ion and encrypt ed dat a on t he device and over t he wire Provides full cont rol over which forms go t o which
field workers t hrough permissions and roles Synchronizes t o all apps when a new form or an updat ed form is
deployed.
Please refer t o t he Transact Mobile App Guide for more on t hese funct ions. There is very lit t le t o do in
Composer t o ut ilize t hese: t hey are t aken care of by TM and by Composer's script ing.

How to Publish a Form to the Mobile App


Use t he following st eps:

1. Save t he form and publish it toTM


2. In TM, save or import t he form
3. In TM at "Forms -> Form -> Det ails", uncheck "Test Mode
4. In TM at "Forms -> Form -> Port al Access", make sure "Mobile App" is one of t he "Assigned Port als".

Now, when you open t he mobile app on a device (making sure t hat you are connect ed t o t he correct inst ance of
TM) you should — aft er t he synching process is complet ed — see t he form by t apping on t he "Forms" icon and be
able t o select it in t he forms list .

Mobile Camera Support


Mobile devices came wit h in-built cameras, and so users want t o be able t o int egrat e t his pict ure-t aking capabilit y
int o forms. Users t ap on a form's "Take Pict ure" but t on widget and generat e an image at t achment . This get s
uploaded when t he form is submit t ed.
Though t he at t achment generat ed by t he but t on is like ot her at t achment s, t he But t on [Take Pict ure] widget is
unique in t hat :
It only works in t he Transact Field App
It is not support ed on t he deskt op or in a mobile device's web browsers

Transact Field Mobile App - 385 -


The Standard "Take Picture" Button

Transact Field Mobile App - 386 -


Very sim ple form wit h a cam era but t on

The "But t on [Take Pict ure]" widget works only in t he Mobile App. Tapping on it t akes mobile device users t o t he in-
built camera app. The user get s t o t ake t he pict ure and choose eit her t o ret ake or use t he phot o. It is not saved t o
t he device's camera roll. For t he sake of appearance, we have set "Take Pict ure -> Edit Propert ies -> St yling -> St yle
Set s -> But t on Type -> Push but t on".
The form also needs a TM Attachment Rule widget t o act ivat e t he At t ach t ab in t he Mobile App; we have named
t his element "Pict ure" in t he st ruct ure. Wit hout it , no at t achment file will be uploaded t o Transact ion Manager.
The result ing form behaves as follows in t he Mobile App (on a smart phone):

Transact Field Mobile App - 387 -


The form in t he M obile App, and t he effect of t he "Take Pict ure" buit t on

For simple forms like t his example, and t he user has t aken only one phot o, t he user can go st raight t o t he "Sub-
mit " t ab and submit .
If t he users have opt ed t o "Use Phot o" more t han once, t hey have t o go t o t he "At t ach" t ab and choose which
image get s at t ached.

Transact Field Mobile App - 388 -


Suppressing t he At t ach and Subm it Tabs
There are use cases where you will want t o have at t achment s cont rolled on t he form in t he Transact Field App,
rat her t han in t he app's t abs.
You can suppress eit her t ab (or bot h) in Composer's St ruct ure Tree: "<Form> -> Edit Propert ies -> Policies t ab
-> HTML Generat ion -> Mobile App Cust omizat ion panel".

Here is an example of t he At t ach t ab being hidden in t he Transact Field Mobile app:

Transact Field Mobile App - 389 -


Rest rict ing At t achm ent File Types in t he App
You now can cont rol t he file format s t hat t he Transact Field App can accept for an at t achment or at t achment . Place
a TM At t chament Rule widget on t he form and fill out t he dialog:

Saving an at t achment of t he wrong t ype in t he App result s in a popup:

Transact Field Mobile App - 390 -


M ulti-channel
Composer | Form Builder | v4.3 & Higher

Overview
The Avoka Transact gives you t he t ools t o publish all your forms on deskt op and on mobile devices, and yet be
useable on all t hese different form fact ors. This is more t han a convenience — it has become a cost of doing busi-
ness.
It follows t hat users will want t o move freely bet ween t heir devices, wit hout needing t o complet e a complex form
on one device in t he one session. Users now expect t hat not only can t hey resume a form lat er, but t hat t hey can
do so on a different device or plat form.
The Avoka Transact Web Mult i-Channel Tracking Technology enables end-users t o st art , pause, cont inue and com-
plet e t heir applicat ions across channels – from t heir mobile device t o t heir deskt op, t he call cent er, and t he
branches.
Here is a video of a present at ion Avoka made at a finance indust ry forum. It illust rat es t he device agnost icism
users will appreciat e.
{+}http://youtu.be/nNY8MdPw1Qc+

Authenticated Users
Wit h t he M aguire Tem plat e
The Maguire t emplat e already has t his t echnology embedded as a "Save and Close" but t on. On t he deskt op it is at
t he form header. On narrow mobile devices, it becomes an opt ion in t he slidermenu .
You can configure TM t o prompt users t o opt if t hey want t o receive an email (t o an address t hey nominat e) when
t hey "Save and Close". They are immediat ely sent an email giving a link t o t he port al and t heir unfinished form.
Users click on t he link, log int o t he port al (if required) and cont inues t o fill in t he form, which is prepopulat ed wit h
t heir dat a.

Wit h Ot her Tem plat es


To get enable mult i-channel, drop t he TM Submission Block ont o t he form. You can reword t he t ext fields in t he
block t o suit . You can even remove t he "Save t o my Comput er" and t ext , as saving t he form as a PDF is not useful in
t he cont ext of mult i-channel delivery.

Mult i-channel - 391 -


The Task List
So, users can resume t heir forms eit her by
Clicking on t he link in t he email. This t akes users direct ly t o t he form, aft er first being challenged t o supply ID and
Password, and not t o t he port al's aut hent icat ed landing page.

Going t o t he port al's aut hent icat ed landing page and accessing t he prepopulat ed form t hrough t he Task List .

Mult i-channel - 392 -


Transact Field App
These Save but t ons in bot h t he Maguire t emplat e and in t he TM Submission Block, have special script s so t hat t hey
will work in t he Transact Field App. Put t ing t he Save and Close but t ons on t he form will alt er t he App's Submit t ab
t o accommodat e t he mult i-channel save; t he act ion will no longer be act ivat ed by t he but t on on t he form.
Of course, t he but t on will appear on t he form when t he form is rendered on t he device's browser (Safari in iOS and
Chrome in bot h Android or iOS). On narrow devices, such as smart phones in port rait orient at ion, t he Save and
Close but t on will be in t he Maguire slider menu.

Anonymous Users
Act ually, Avoka Transact support s anonymous users, bot h for mult i-channel and for collaborat ion.

The reasons you would want t o do t his are:


To reduce user frict ion
Some users, while happy t o provide some personal det ails in order t o request some service or good, are reluct ant
t o creat e yet anot her t ransient user ident it y t hat will probably get used only t he once
It is a necessary condit ion for Form Sharing, where several people have t o fill in t he one form, such as a pair of part -
ners or anot her part y is required t o provide some document at ion or st at ement before t he form in quest ion can be
submit t ed.
Support for anonymous users is a configurat ion performed in TM. Please see FormSharing.

Mult i-channel - 393 -


Form Sharing
Composer | Form Builder | v4.3 & Higher

Overview
Just as a form can be shared bet ween t he devices of a single user, see t he Multi-channel t opic above, so t oo can a
form be shared bet ween a number of different part ies before it get s submit t ed.
The kinds of business cases t his funct ion support s are:
Sharing t he form bet ween applicant s and t heir lawyers Bet ween applicant s and t heir part ners
Bet ween various part ies filling in t he same form where t hey are not in physical cont act .
The sharing involves giving t he name, email of t he nominat ed ot her part y, and a t ext area for not es t o t he ot her
part y; t hen t he user, inst ead of submit t ing t he form (as would be done of t he form were complet e), clicks on a ded-
icat ed but t on wit h some appropriat e capt ion like "Act ivat e Sharing". TM generat es an email cont aining a link. The
ot her part y clicks on t he link and is t aken t o t he form (prefilled wit h t he ot her user's dat a) which can t hen be
edit ed, files at t ached and so fort h.
The following not es on enabling form sharing assume t hat you are using t he st andard form sharing widget s t hat
ship wit h Composer. We do not discuss configuring t he form's behavior for, say, edibilit y or visibilit y of it s fields. We
also are using t he default submit but t on, which — wit hout any ext ra script ing — allows any of t he part ies t o sub-
mit t he form. Aft er submission, t he form sharing ends.

Form Sharing - 394 -


Minimum Prerequisites for Form Sharing
User Aut hent icat ion Set t ings
The form's Aut hent icat ion set t ings are made in Transact ion Manager.

User Aut hent icat ion has t o be Anonymous (or unspecified at t he very least ). If not , t he prefabricat ed TM Sharing
block has script s t hat make it invisible t o aut hent icat ed users.
Form saving must also be anonymous so t hat t he ot her part ies can also save t he form when t hey act ivat e t he
share but t on.
There must be mandat ory fields t o capt ure t he cont act det ails of t he original form user, ot herwise t here will be no
connect ion t o t hat person.

Form Sharing - 395 -


Simple Case using Prefabricated Blocks

Form Sharing - 396 -


Which result s in t he following behavior.

Form Sharing - 397 -


The first part y opens t he form anonymously (using, in TM t erminology, t he "form friendly URL"). The user is given 3
choices:
Open New Form Open Saved Form Login and Open Form
For t his example, we are going t o select t he first opt ion.

Form Sharing - 398 -


Form Sharing - 399 -
© 2015 Avoka Technologies Pty Ltd 142

Form Sharing - 400 -


Form Sharing - 401 -
The second part y can t hen open t he form and share it back or submit it .
In TM, you can view t he hist ory of t he form (when opened, when shared and when submit t ed) and t he cont ent s of
t he form (in XML).
N ot e: when you are t est ing form sharing (using a form served by Transact ion Manager, not using Composer's Pre-
view), all of t he users cannot be logged int o any of t he port als. To t est form sharing, you may have t o init iat e a new
browser session, one in which you have not logged ont o a port al. You can get round t his be st art ing anot her
browser alt oget her; you can already be logged int o t he port al in Chrome and t est form sharing in a fresh session of
Firefox.

Why Hide the Sharing Block?


This prefabricat ed block is mandat ory. The form will not submit if t he block is visible, unless t he user ent ers some
random dat a int o t he fields displaying in-line validat ion messages.

Sharing in Collaborations
This is possible t o do. However, t he user aut hent icat ion of t he first st ep needs t o be anonymous. Also t he link back
t o t his user is t hrough email alone and t he service definit ion object will need t o be modified. See Collaboration on
how t his feat ure works in general. Current ly t he document at ion does not include what t o do t o be able t o share
t he form before t he first submission.

Form Sharing - 402 -


Composer Form Parts
Composer | Form Builder | v4.3 & Higher

Form Part s project s int roduce a special t ype of form known as a part -form. Wit hin a part -form, one or more part s
can be creat ed. Inside t he part , a form developer can creat e any cont ent , including ent ire sect ion level 1’s. The part s
can t hen be export ed from wit hin t he part -form t o t he organizat ion.

Overview
In project s where t here are many forms and/ or larger and more complex forms, t wo problems can arise:

l Composer does not allow t wo users t o work on t he same form at t he same t ime.

l Oft en forms cont ain large re-usable sect ions, such as a “Personal Det ails” sect ion. Blocks can be used t o cre-
at e t hese sect ions, however blocks are generally designed for smaller ent it ies, such as an address block. Com-
poser isn’t opt imized for creat ing larger blocks, especially t hose cont aining sect ions. The block edit or is an
advanced t ool which is int ended for power users, and isn’t suit able for edit ing t hese t ypes of larger blocks.
Inst ead, it would be preferable t o use t he regular Composer edit ing environment for creat ing t hese larger
blocks.

Form Part s solves bot h of t hese problems.

Form Part s project s int roduce a special t ype of form known as a part -form. Wit hin a part -form, one or more part s
can be creat ed. Inside t he part , a form developer can creat e any cont ent , including ent ire sect ion level 1’s. The part s
can t hen be export ed from wit hin t he part -form t o t he organizat ion.

Anot her special t ype of form unique t o Form Part s Project s is known as a mast er form. It is used t o include any of
t he export ed part s t hat have been creat ed in t he part -forms. A mast er form can override propert ies from t he part s
if necessary. Business rules can be creat ed eit her wit hin each part , or in t he mast er form spanning mult iple part s.

These new form t ypes are shown below:

Composer Form Part s - 403 -


This allows mult iple developers t o work on different part s of a single form in a cont rolled and convenient way. It
also allows re-usable part s t o be creat ed t hat can be used in mult iple mast er forms.

Setting Up a Form Parts Project


Form Part s project s (also known as Parallel Development project s) behave different ly t o normal Composer pro-
ject s. For t his reason t hey are dist inguished from normal project s wit h different icons.

Creat ion of a Form Part s Project is done at t he Organizat ion Level by select ing "Creat e New Project ". In t his dialog
t he Project Type dropdown "Parallel Development Project " must be select ed.

Composer Form Part s - 404 -


This creat es a Form Part s project

Creating Master Forms and Part-Forms


At t he project level you can creat e t he part -forms and mast er forms by select ing t he opt ions.This process is much
t he same as creat ing an ordinary Composer form.

Only one mast er form can exist in a form part project . Mult iple part forms are permit t ed.

The different form t ypes are dist inguished by t heir icons. The Creat e Mast er Form opt ion is now disabled in t he
screenshot below.

Composer Form Part s - 405 -


There is not hing special about a Parallel Development project , or t he mast er form or t he part forms. These are
really just regular project / form, which are t agged in a special way t o give t hem different icons in t he Composer user
int erface. They also enable some special t oolbar icons in t he project menu, such as Creat e Mast er Form and Creat e
New Part Form. You can convert freely bet ween a Parallel Development project and t he St andard t ype of project .
You can promot e a regular form t o a Mast er form using t he right hand icon menu at t he project level (but you can
only have one mast er form per Parallel Development project ).

If you wish t o use t he special part s menu opt ions in a regular project , t hen you may do so by checking "Enable
Part s on St andard Project s" in t he Composer Opt ions dialog.

Generally t he mast er form and t he part s will all be in a single project . However, a mast er form in project B can also
use part s t hat are defined in project A. This approach might be useful for t he case where mult iple forms ut ilize t he
same set of common sect ions, and t hese sect ions are defined in a separat e common project .

Creating Parts within the Part Forms


The part forms act as cont ainers for t he part s. In order t o creat e a part , drag a Export able Part from t he Part s
folder in t he palet t e int o t he t op level of your form.

You can have as many part s as you want wit hin each part form.

Composer Form Part s - 406 -


Part s can be eit her t ransparent or opaque. This will be covered lat er.

You can t hen add any cont ent you wish int o your Part . In most cases, you will drag a Sect ion Level 1.

The example below shows a Part One form t hat cont ains t wo part s, Part A and Part B. Usually a part form will only
cont ain one part , and a each part will cont ain one sect ion, but t his example illust rat es t hat a part form can cont ain
mult iple part s, and a part can cont ain mult iple sect ions if desired. The sect ions can cont ain arbit rary cont ent ,
including fields, blocks and business rules. However, if your form cont ains mult iple part s, you must not creat e any
dependencies or business rules bet ween t he part s. Each of t he part s can be developed, and t est ed in isolat ion, as it
it was a normal form.

In general, it is recommended t hat each part form cont ain only one part , and t hat each part cont ains only one sec-
t ion. It 's also usually a good idea t o name part s and part forms (and even t he sect ions t hey cont ain) using a con-
sist ent naming scheme, so t hat t he part s and sect ions can easily be locat ed.

In order t o use t hese part s wit hin a mast er form, t hey must first be export ed from t he part form. In order t o
export one or more part s, click on t he Part s... icon which is visible in t he t oolbar of all part forms. This will bring up
t he Part Management dialog shown below.

Composer Form Part s - 407 -


Your part s are not available t o be used in a mast er form unt il t hey have been export ed. Click Export Select ed Part s
in order t o export t he select ed part s. It is not usually necessary t o select "Reload t ypes aft er export " - use t his
checkbox if you want t o verify t hat t he part s have been export ed by viewing t hem in t he component palet t e.

Aft er export ing, t he select ed part s will appear on t he component palet t e on t he right under t he Part s node, wit h a
sub-node which is t he name of t he project , as shown below:

Composer Form Part s - 408 -


If you use part s ext ensively, t his can result in many project s and part s under t he Part s node, which can become
confusing. This can also result in slower t ime t o load t he t ypes for t he organizat ion. If you use a large numberof
part s, you should eit her use a project and part form naming convent ion t hat allows you t o easily ident ify t he vari-
ous part s, or you should creat e mult iple organizat ions t o group t he various part s and t he forms t hat use t hem.

An export ed part is act ually just a special t ype of block, similar t o a block creat ed using "Save as Cust om Block" or
t he block edit or. It is really just t he way t hat t he block is creat ed, edit ed and export ed t hat is different .

Saving t he form does not aut omat ically export t he part s. And export ing t he part s does not aut omat ically save t he
form. This is import ant so t hat you can cont rol when and how you updat e your export ed part s. Each of t hese oper-
at ions must be performed separat ely. This is useful because it allows you t o finely cont rol when you make your
part available t o ot hers. For example, you wouldn’t want t o export your part if it has a bug, or if you’re not finished
developing it .

Be careful of renaming a part - t he part will be export ed under t he new name, but t he original part will be ret ained -
t his may cause confusion. You can manage t he part s as in t he Cust om Types t ab at t he organizat ion level.

Com bining t he Part s t o Creat e a M ast er Form


In t he mast er form, simply drag and drop t he various part s t hat you require from t he Part s folder in t he palet t e
int o your mast er form. Because part s are generally sect ion level 1's, you should drag t he part s int o t he t op level of
t he form. For part s t hat cont ain ot her t ypes of cont ent , drag t hem int o t he appropriat e locat ions.

Composer Form Part s - 409 -


Part s are grouped by t he name of t he Project in which t hey are defined. You can drag as many part s as you want
int o your mast er form.

Once you have import ed part s int o t he mast er form, you may view a summary of what part s have been included
by clicking on t he Part s,, but t on and select ing t he Import ed Part s t ab. This t ells you not only what part s are being
used, but also which part form t hey are defined in, and when/ who export ed t hem.

Import ant : it will be import ant lat er on when we discuss cross-part business rules t hat all part s have t he same
name everywhere. The easiest way t o ensure t his is t o accept t he default name for each part when you add it t o
t he mast er form.

Composer Form Part s - 410 -


Opaque and Transparent Part s
A t ransparent part is t he default t ype of part . When import ed int o a mast er form, it looks just like a normal sect ion
of t he form.

An opaque part is t reat ed as a "black box", and is not act ually loaded int o t he Composer designer. An opaque
part 's cont ent s will not appear wit hin t he st ruct ure t ree or in t he wireframe. However, t he cont ent s of an opaque
part will appear in t he form it self, when previewed or published.

There is no real difference int ernally bet ween a t ransparent and opaque part - it is only t he Composer edit or t hat
t reat s t hem different ly from a visibilit y perspect ive. You can modify whet her a part is t ransparent or opaque in it s
propert y dialog.

The difference bet ween an opaque and t ransparent part when import ed int o a mast er form is shown in t he pict ure
below.

You can mark your part s as opaque in order t o indicat e your int ent ion t hat your part should be used "as-is", and
not modified. An opaque part will also mean t hat t he form using t he opaque part will load quicker.

Composer Form Part s - 411 -


By default , t ransparent part s will not have t heir cont ent s displayed in t he st ruct ure t ree. This serves as a reminder
t hat t he cont ent s of t he part are not int ended t o be modified. In order t o see t he cont ent s of t ransparent part s in
t he st ruct ure t ree, you need t o select "Expand Transparent Part s" in t he Composer Opt ions dialog.

Even if t he "Expand Transparent Part s" opt ion is unchecked, t he fields in a Transparent part are always available in
t he rules edit or, and so may be used wit hin rules.

Parts and Versioning


Part Forms (t he forms t hat cont ain t he part s) are like any ot her t ype of form, and benefit from t he usual Composer
form versioning capabilit ies. However, t he part s t hemselves, which are export ed from t hese part forms, and which
exist wit hin t he component palet t e, only have a single version - t his being t he lat est version t hat was export ed.

Under t he covers, part s are export ed as regular Composer blocks, and can be viewed wit hin t he Cust om Types t ab
at t he Organizat ion level.

Composer Form Part s - 412 -


If you wish t o revert t o a previous version of a part , you must open t he version of t he part form t hat cont ains it ,
and re-export .

Cross-part rules
When business rules exist ent irely wit hin a part , t hen t hey are very easy t o set up - simply define t he rules wit hin
each part as normal, and t he rules will be import ed along wit h t he part int o t he mast er form. However, when it is
necessary t o define rules at t he mast er form level t hat span mult iple part s, t hen t hings can get a lit t le more com-
plicat ed.

There are several different approaches t o dealing wit h cross-part rules. The approach you choose will depend on
t he sophist icat ion of t he form and t he business rules, as well as t he sophist icat ion of your development t eam.
Three different approaches are discussed below. There are probably ot her approaches t hat can be used t oo, but
t hese are t he recommended approaches.

All of t hese approaches require t he development t eams t o use discipline in t he way t hat t hey use t he part s
capabilit ies. It is possible for a single project t o mix and mat ch t he various t echniques list ed below - but t his can
become confusing, and it recommended t hat t he form developers on a project consciously select a part icular
approach and st ick t o it .

Sim ple - All Cross-part Rules in t he M ast er Form


All t he cross-part rules are defined in t he mast er form, as if it were just a single large form. Rules can be set up t hat
include fields in any of t he part s, and/ or any of t he fields t hat are explicit ly placed in t he mast er form. This has t he
advant age t hat it is very simple t o use and underst and.

However, it suffers from some disadvant ages:

l All t he responsibilit ies and dependencies are on t he mast er form developer. If t here are a large number
of cross-part rules, t his limit s t he abilit y for mult iple developers t o be able t o work independent ly on
t hese rules.

l When any of t he part s are changed, t he mast er form developer needs t o fix everyt hing in t he mast er
form. In some cases, it might be preferable for each part developer t o manage t heir own cross-part
rules.

Norm al - Each Part References Ot her Part s it Requires.


This is a slight ly more sophist icat ed approach, and encourages each part developer t o define and maint ain t he
rules in t heir own part s independent ly.

Let 's consider t he following example:

Composer Form Part s - 413 -


l Part A - Income Sect ion. This sect ion has a numeric field named Tot alIncome.
l Part B - Expenses Sect ion. This sect ion has a numeric field named Tot alExpenses.
l Part C - Eligibilit y Sect ion. This sect ion cont ains a calculat ion for a field Net Income = Tot alIncome-Tot alEx-
penses, which is in t urn used t o det ermine whet her a cust omer is eligible for a loan.

The developers of Part s A and B develop t heir part s as usual. The developer of Part C, because t here is a depend-
ency on fields out side of his part , will add t hese part s int o t he part form. The St ruct ure t ree for Part C is shown
below:

Not e t hat :

l The above diagram is t he st ruct ure for Part C, NOT for t he mast er form. The mast er form will include part s A,
B and C, but will not direct ly cont ain any business rules.
l Part C is defined and modified wit hin t his part form. But part s A and B are defined elsewhere, and simply
import ed so t hat t hey can be referenced.

The developer of Part C will include t he calculat ion rule int o Part C. When Part C is export ed, it will cont ain a busi-
ness rule t hat references Part s A and B.

When Part s A, B and C (and any ot her addit ional part s) are included in t he mast er form, t he business rule t hat
exist s in part C will reference fields in ot her part s. However, since t hese part s also exist wit hin t he mast er form (as
import ed part s), t he references will be correct ly resolved, and t he business rule will work correct ly. (This is why it
was st at ed earlier t hat each part should always be given t he same name wherever it it used.)

Tips:

Composer Form Part s - 414 -


l Wit hin t he Part C form, only add cross-part business rules t o Part C (not Part s A or B). Because we are only
export ing Part C, any business rules you add t o part s A or B will never be export ed.
l When edit ing a part form, use Transparent part s, but uncheck "Expand Transparent Part s" in t he Composer
Opt ions screen. This will display t he import ed part s wit hout any cont ent s, as shown above. This will serve as
a reminder t o not add any business rules t o t hese part s. The business rule edit ors will st ill allow you t o creat e
rules in Part C t hat include field from Part s A and B.
l You can preview and t est your form as if it were a complet e form.
l You can set t he wireframe t o only display Part C, using t he Wireframe Opt ions but t on. That way your form
will load fast er, and also you won’t be t empt ed t o accident ally add rules t o part s t hat aren't defined in t his
form.
l If one of t he ot her edit ors makes a change t o part A or B, you may need t o adjust rule business rules.
However, you can usually det ect t his using t he Problems pane.
l When working in a single form, Composer will aut omat ically refact or your business rules if you move or
rename a dependent field. However, t his will not be done when t he dependent field is modified in a different
part . It is t herefore advisable t o eit her limit t he number of changes made, or t o communicat e well bet ween
developers when t hese changes are made. The Problems pane will not ify you of any errors.
l Generally when using t his approach, t he mast er form just cont ains a series of part s, and has no cont ent or
business rules of it s own. It is possible t o mix t he approaches, but t his is not recommended, as it can get very
confusing.

This approach does have a number of disadvant ages in cert ain sit uat ions:

l Part C has a dependency on Part s A and B. It will fail if used in a form t hat does not have Part s A and B, and
cannot be used independent ly of t hem.

l This approach may not work very well when a part icular form has business rules t hat reference a large num-
ber of different part s - you may be bet t er off using t he Simple approach in t his case.

Despit e t hese minor disadvant ages, t his is t he approach t hat is generally recommended.

Advanced - M odel/ View/ Cont roller


This is an advanced approach t o cross-part rules, using a well-known pat t ern from soft ware engineering, t he
Model/ View/ Cont roller pat t ern. In t his approach, rat her t han defining business rules direct ly bet ween t he fields of
one part and t hose of anot her, an int ermediat e dat a model is const ruct ed, which serves as t he communicat ion
mechanism bet ween t he part s. In summary:

l Model = a special "dat a model" part cont aining only dat a fields. (A dat a field is a special invisible field available
in t he palet t e.)
l View = t he regular part s cont aining sect ions.
l Cont roller = t he cross-part business rules (t hese can be defined in a number of places, as described below).

This approach is a lit t le more complicat ed t han t he preceding ones, and requires some discipline and rigor in t he
development process. However, it has t he advant ages of:

Composer Form Part s - 415 -


l An explicit definit ion of what dat a is shared bet ween t he part s.
l A soft ware "cont ract " about how t his dat a is shared and used.
l There are no direct dependencies bet ween any part and any ot her part - t here is only a dependency
bet ween each part and t he shared dat a model. This means t hat each of t he part forms only need t o include
t he model part , and not hing else.

When creat ing t he model, t here are some int erest ing choices about what dat a element s t o creat e in t he model,
and where t o place t he rules (or cont roller). For example, if we had a simple calculat ion of "C = A + B", where A, B
and C are each in a different part , t hen we could have any of t he following:

l A and B in t he model. C exist s only as a real field, and cont ains t he calculat ion.
l A, B and C in t he model. The business rule exist s on dat a element C wit hin t he model. The real field C has a cal-
culat ion equaling t he dat a field C.
l Ot her choices are possible.

One simple approach is t o only include in t he model t hose fields t hat are needed for business rules in ot her part s,
and only t o include business rules in t he part s. However, your project t eam may choose a different approach.

Once t he model has been creat ed, it is import ed int o each of t he part forms, and t hen t wo st eps need t o be per-
formed:

1. Creat e any business rules t hat are dependent on dat a fields in t he model.
2. "Push" t he values of any fields t hat need t o updat e t he values in t he model. (It is up t o t he developers t o
ensure t hat each field in t he model is only updat ed by a single real field.)

Not e t hat while it is t heoret ically possible for t he model t o "pull" t he values it needs from t he various part s, t his
breaks one of t he fundament al principles of model/ view/ cont roller, in t hat t he model has no dependencies on any
of t he views. Views can reference t he model, but t he model should not reference t he views.

In order t o do t his, you can use t he "Push t o Model Field" propert y of t he Part Dat a Model sect ion on t he Prop-
ert ies/ Dat a t ab of t he propert ies dialog.

Anot her int erest ing decision occurs because you now have t wo fields (a dat a field in t he model, and a real field in
t he view), bot h of which represent t he same physical dat a element . The quest ion becomes: How do we bind t hese
t wo fields t o t he XML, and init ialize each of t he values? Remember t hat when a Composer form loads, each field will
first have it s value init ialized from t he XML dat a it is bound t o, and then any business rules will be fired. The choices
are as follows:

Composer Form Part s - 416 -


1. Bind t he real field t o init ialize it . Init ialize t he model field from t he real field.
2. Bind t he model field t o init ialize it . Init ialize t he real field from t he model field.
3. Bind bot h fields. No addit ional init ializat ion is necessary, because t hey are bot h bound, and will bot h be set
from t he binding values in t he XML. This can be a lit t le dangerous, because you are responsible for ensuring
t hat t he XML cont ains t he same value in bot h locat ions, which in t urn ensures t hat bot h fields are init ialized
t o t he same value. If t he XML is inconsist ent , you will get st range behavior, wit h rules not appearing t o reflect
t he dat a shown. Alt ernat ely, you could select ed eit her "Init ialize Field from Model" or "Init ialize Model from
Field", and even t hough bot h are bound, as soon as t he form loads, t he second field will be set t o t he value of
t he first one.

You can cont rol which of t hese approaches using t he "Push Init ialize Policy" propert y, as shown below.

The decision out lined above act ually occurs any t ime t hat you have t wo different fields t hat represent t he same
piece of dat a, not just in t his approach t o cross-part rules. The same reasoning, and t he same solut ions, can be
used in t hese cases also.

When using t his approach, it is recommended t hat you make each of t he view part s opaque, and t he model part
t ransparent .

Composer Form Part s - 417 -


Usability & Accessibility
Composer | Form Builder | v4.3 & Higher

General Statement
The W3C defines Accessibilit y as "Web accessibilit y means t hat people wit h disabilit ies can use t he Web. More spe-
cifically, Web accessibilit y means t hat people wit h disabilit ies can perceive, underst and, navigat e, and int eract wit h
t he Web... ". For more informat ion, see http://www.w3.org/WAI/intro/accessibility.php/

Accessibilit y is challenging. Users wit h vision impairment , who depend on Screen Reader applicat ions t hat read
aloud t he cont ent s of a web page, have t o be accommodat ed. Forms also must cat er for part ial visual impairment
(such as color blindness or poor acuit y), cognit ive impairment , mot or and audit ory disabilit ies.

Composer does a number of t hings t o assist compliance:

l Composer generat es many of t he HTML t ags t hat are required for correct accessibilit y. For example, all
images are generat ed wit h an ALT t ag so t hat blind users can have t he image read out t o t hem.
l Composer t est forms are verified by a number of accessibilit y t est t ools t o ensure t hat t he HTML Composer
generat es passes t hese t ools' crit eria.
l Composer's use of st ylesheet s means t hat if your first form is accessible, t hen all subsequent forms are
much more likely t o be accessible.

However, while Composer t ries t o do as much as possible, it cannot absolut ely verify t hat your forms are access-
ible. For example, while Composer will generat e an ALT t ag for your images, it cannot verify t hat t he t ag's t ext is
act ually a good descript ion of t he image.

Composer will apply consist ent colors and st yles, but it cannot verify t he t he cont rast of your foreground t ext
against your background color meet s t he crit eria W3C crit eria. For more informat ion, see t he full WCAG guidelines
at http://www.w3.org/TR/WCAG/

To summarize, t he accessibilit y of your forms is ult imat ely your responsibilit y.

Our lat est port als are largely WCAG compliant , but be aware t hat individual forms may not be. Some cus-
t omizat ions can defeat WCAG compliance.

There is a misconcept ion t hat t he use of JavaScript in a web page makes t he page inaccessible. This is complet ely
incorrect . This comes from a percept ion many years ago, t hat cert ain operat ions in JavaScript confuse screen read-
ers. However, modern screen readers handle JavaScript well, and in fact some JavaScript can make your forms
easier for all users, including t he disabled. The appropriat e use of JavaScript is more of a posit ive for t he disabled
users — for example, hiding a sect ion t hat isn't relevant means t hat t he unsight ed user will not have t o t ab
t hrough many irrelevant fields.

Usabilit y & Accessibilit y - 418 -


Temenos will aim t o achieve 100% WCAG v2 AA compliance in TotalValidator , and 100% compliance in SiteMorse.
While we do pass aut omat ed t est s, we also underst and t hat t here is a difference bet ween passing t est s and being
t ruly accessible. Any addit ional or specific Accessibilit y requirement s are not necessarily in scope but will be dealt
wit h on a case by case basis.

FAQs
Quest ion:
Are we confident t o st at e t hat t hey will be WCAG v2 AA compliant for forms creat ed in Composer?

Short Answer:
No. We will never be able t o cert ify t hat . But we can make it as easy as possible t o achieve AA.

Long answer:
Passing aut omat ed t est s doesn't guarant ee compliance (alt hough it 's a good st art ). Aut omat ed t est s t ell you when
you've done somet hing wrong, but t hey don't t ell you when you've failed t o do somet hing right . We are in t he pro-
cess of doing furt her human expert t est s on sample forms t o improve our compliance.
Ask t wo different "expert s" t o cert ify a form, you can very oft en get t wo different answers – t here is a level of sub-
ject ivit y in int erpret ing WCAG. It also depends on t he browser, and t he screen reader.

Composer is just a t ool. It helps you t o build forms t hat work well, but it also allows you t o do what you want . You
could easily do t hings in your form, eit her int ent ionally or unint ent ionally, because of t he way you build it , or t he
JavaScript you hand-craft , t hat breaks accessibilit y. We can NEVER cert ify t hat your forms will be accessible just
because our t ool st art s from a good place. For example, you may put light grey t ext on a dark grey background
and fail cont rast requirement s. Or name an image inappropriat ely. It 's a bit like asking Microsoft t o cert ify t hat all
document s you produce will be spelled correct ly just because Word has a spell checker.

Ult imat ely, meet ing t he needs of people wit h disabilit ies is about t rying t o do t he right t hing. Organizat ions will be
at t acked if t hey appear not t o care. Being concerned, but making some mist akes, and learning from t hem is defens-
ible. Picking t he right t ool is a good st art . Doing some accessibilit y t est ing as part of your development process
would furt her support your good int ent ions.
Ult imat ely, t he only way you can be 100% sure t hat t he forms you build are accessible is t o get an accessibilit y
expert t o t est t hem.

Tab Order
Tab Order is t he order in which your cursor will navigat e from one field t o anot her when you press t he Tab key.
This is part icularly import ant for users who t ouch-t ype, who want t o avoid t aking t heir hands off t he keyboard and
ont o t he mouse in order t o move t o t he next field; and also for visually or physically impaired users, who favor t he
keyboard over t he mouse.

Usabilit y & Accessibilit y - 419 -


In Composer, you don't have t o set t he t ab order - Composer set s t he t ab order for you. There is not hing for you
t o do, and not hing for you t o maint ain. If you insert a new field, it will simply be added in t he correct t ab order rel-
at ive t o t he fields around it .
If you need t o explicit ly cont rol t he order of t abbing, you can achieve some cont rol by wrapping your fields in
blocks. Tabbing will always occur from field t o field wit hin a block before moving t o fields in subsequent blocks.

Usabilit y & Accessibilit y - 420 -


Privacy
Composer | Form Builder | v4.3 & Higher

General Overview
Privacy of informat ion has, for us, 3 major concerns:

1. That only appropriat e informat ion is t emporarily ret ained and t hen submit t ed
2. That t he submission is sent securely t o t he server
3. That submit t ed informat ion is ret ained securely

Only t he first of t hese is t he concern of form designers using Composer.

Privacy Concerns with Hidden Fields


Many organizat ions have st rict dat a privacy policies. A common policy is t hat t he organizat ion should never collect
dat a t hat t he end-user is not aware of. This can be an issue in t he following example:
The end user indicat es t hat t hey would like t o include insurance for a spouse by clicking t he "Insure my spouse"
checkbox.
The form displays an opt ional sect ion, where t he spouse's det ails are collect ed.
The end-user lat er decides not t o insure t heir spouse, and unchecks t he "Insure my spouse" checkbox. The
Spouse sect ion is hidden.
The end user is now submit t ing privat e informat ion about t heir spouse, t hat is not required, but has been cap-
t ured in fields t hat are no longer visible. This can be viewed as a privacy breach.
Here are t wo ways of solving t his problem:

Clear Hidden Data on Submit


The st andard Composer Submit but t on has a propert y named "Clear Hidden Dat a on Submit ". This is checked by
default . If t his propert y is select ed, t he form will aut omat ically clear t he values of any fields t hat are hidden when
t he form is submit t ed.
N ot e : The Submit but t on also has a propert y named "Clear Non-edit able Dat a on Submit ". This is rarely t urned on,
but is available if required.

Privacy - 421 -
Overriding
Somet imes it is necessary t o preserve t he dat a in an invisible field even t hough t he user can't see it . For example,
t here may be a calculat ed field t hat is used purely for int ernal purposes, or t here may be fields t hat are used t o
communicat e informat ion bet ween t he form t he Transact ion Manager.
You may override t he usual Clear Hidden Dat a on Submit behavior on t he Submit but t on by select ing t he Preserve
If Not Visible opt ion in t he Dat a Clearing Policy propert y on t he Dat a t ab.
N ot e : There is a special Composer field named "Dat a Field". This is just a regular Text Field, but is invisible by
default , and has Dat a Clearing Policy set t o Preserve. It is int ended t o st ore (and submit ) int ernal dat a rat her t han
user-visible dat a.

Clear Data when Hidden


Anot her opt ion it t o clear t he dat a as soon as t he field is made invisible. This is cont rolled by an advanced policy
propert y in t he Rules area. In most cases t his is set t o false. The same policy also exist s for Read-only fields,
alt hough t he need for t his is rare.
There are pros and cons t o t his approach:
Pro: It is quit e obvious t o t he end-user t hat t heir hidden dat a is cleared, because if t hey re-show t he dat a, it will be
cleared.
Transact Composer User Guide and ReferencePrivacy

Con: If t he user accident ally hides a field or sect ion t hey have already ent ered informat ion int o, t hat informat ion
will be lost , t o t heir annoyance.
N ot e : If a field is hidden implicit ly (for example, because it is on a wizard page t hat is current ly hidden), t he dat a
will not be cleared.

When to Clear Data


The decision whet her t o clear dat a from fields on t heir first hiding or on submission of t he form, is a policy decision
for each organizat ion.
In bot h cases, privacy is maint ained.
Clear-on-submit generally provides a bet t er user experience.
Clear-on-hide provides a more obvious demonst rat ion t o t he end-user t hat t heir privat e dat a will be removed.
Composer's default s focus on user experience, and so hidden fields clear on submit by default . You may change
t hese default s in your organizat ion or in a part icular form if desired. Please cont act Avoka for det ails on how t o set
t his up in your st yle-sheet s.

Privacy - 422 -
Validation
Composer | Form Builder | v4.3 & Higher

Overview
A validat ion rule verifies t he dat a ent ered int o a form. The simplest and most common t ype of validat ions are single
field validat ions, which validat e t he dat a in a single field. More complex validat ions use t he values of several dif-
ferent fields.
N ot e : Validat ion rules fire only once t he user has ent ered dat a int o t he field. You may want t o combine a Val-
idat ion Rule wit h a Mandat ory Rule t o ensure t hat t he user ent ers valid dat a.
Composer provides several t ypes of st andard validat ion t ypes:

Fixed Length
The fixed lengt h rule ensures t hat t he lengt h of t he dat a (ie t he number of charact ers t yped) is exact ly t he value
specified. This is usually useful for a cust omer ident ificat ion number or similar t hat is a fixed lengt h.

Regular Expression
A regular expression is a sophist icat ed, indust ry-st andard way of specifying a validat ion pat t ern. An explanat ion of
regular expressions is beyond t he scope of t his document , but t here are numerous books and web sit es t hat you
can refer t o. You can also use search engines t o find st andard regular expressions for common t ypes of dat a. An
example of some regular expressions are:
^[a-zA-Z0-9_-\ .]@[a-zA-Z0-9_-\.]\ .[a-zA-Z]{2,4}$ - email address
^ht t p\ :/ / [a-zA-Z0-9-\ .]+\ .[a-zA-Z]{2,3}(/ \ S* )?$ - URL A good resource for regular expressions is: {+}http://regexlib.-
com/+.
Online regular expression edit or and evaluat or can be found at : {+}http://gskinner.com/RegExr/+ and {+}http://+
www.debuggex.com/ .
The download from following sit e can also be helpful: {+}http://www.weitz.de/regex-coach/+.

Validat ion - 423 -


Validation Script
You can writ e a JavaScript funct ion of arbit rary complexit y t o evaluat e t he value ent ered int o any field. In order t o
writ e a validat ion script , you will need t o have some minimal JavaScript knowledge. If you ret urn false, t he val-
idat ion will fail.
Here is a sample validat ion script :
var myvalue = sfc.convert ToSt ring(sfc.get RawValue(me)); / / 1 if (myvalue.lengt h < 3) ret urn false; / / 2
if (myvalue.mat ch("[0-9]")) ret urn false; / / 3 ret urn t rue; / / 4
Line 1: This is t he usual way t o obt ain t he value of t he current field. The "sfc" funct ions are st andard funct ions t hat
are provided wit hin t he Composer libraries. For a full list ing, click t he "?" icon in t he Script edit or.

Icon in Script Edit or t o access Com poser classes list ing


Line 2: This line uses t he JavaScript built -in lengt h operat or t o t est whet her t he field cont ains at least 2 charact ers.
Ret urning false causes t he validat ion t o fail
Line 3: This line uses a regular expression t o t est whet her t here are any numeric charact ers in t he field. If t here are
any numeric values, t he script ret urns false.
Line 4: If none of t he preceding lines ret urn a false, t hen ret urn t rue. This will mean t hat t he validat ion rule passes.

Validat ion - 424 -


Validation and Hidden fields
Validat ion rules are always fired, even if t he field is invisible, or is hidden because of some ot her business rule. This
is t o enable "hidden" validat ion rules t hat aren't represent ed as a widget in t he form.
If you have a field t hat may become hidden, and you want t o ensure t hat t he validat ion rule on t he field doesn't
fire when t he field is hidden, one way t o ensure t his is t o set t he "When Hiding - Clear Dat a" policy. Validat ion rules
don't fire on empt y fields.
N ot e : This is different t o t he behavior of mandat ory fields. Mandat ory fields become non-mandat ory when hid-
den.

Validation Messages
There are 3 t ypes of validat ion messages:
In t he ErrorBlock of t he form. Error blocks do not display on mobile devices.
As a dialog, which displays on t he failure of t he element 's validat ion. Users have t o "OK" t o cont inue and so
t hese are rat her annoying and int rusive. Inline validation which is t he most convenient of t he 3.
All 3 are t urned on by default .
Here is a t est field set up t o have a t rivial validat ion t est . The Error Dialog is left on. The Inline Validat ion is left on
t he default set t ing for t he form.

Validat ion - 425 -


Validat ion set t ings for a t ext field

In t he Deskt op Preview, t he form behaves as follows:

Result ant Validat ion m essages on t he Deskt op

The Error Dialog is int rusive, requiring users t o click on t he "OK" but t on. You can t urn it off, but only for each wid-
get individually, by "Edit Propert ies -> Rules -> Validat ion -> Validat ion -> Validat ion Policy -> Don't Show Error Dia-
log".
The Error Block does not appear on mobile devices.

In Line Validation
Inline Validat ion is really anot her inst ance of Dynamic Dat a, t hat is: if a field's validat ion t est fails, and inline val-
idat ion is t urned on, t he message t o t he user is displayed wit hout t he form page reloading.
The following examples have t he Error Dialog t urned off for each widget . The Error Block remains on, t hough will
only be visible for t he deskt op previews.

Validat ion - 426 -


Inline Validat ion Set t ings
These are found in "Nut s & Bolt s -> Form Opt ions -> Generat ion Opt ions -> Edit Propert ies -> Propert ies -> HTML
Generat ion -> Validat ion", as shown below:

Som e of t he im port ant form -wide HTM L Inline Validat ion opt ions

Validat ion - 427 -


Inline Validat ion Exam ple
The form used here, t hough very simple, embodies t he various inline validat ion behaviors for t he deskt op and on
mobile devices. It s salient feat ures are:
2 blocks in t he first sect ion (delineat ed by background colors)
Text fields on separat e lines or inline (as inline validat ion behaves different ly for t hese)
A simple t able (t o show how inline validat ion met hods behave on t he deskt op and in t he various modes of mobile
devices).
The Responsive Rules are t he default s, so t hat on an iPad, Landscape is below Threshold 2; port rait , below
Threshold 3.

Wirefram e of form used t o dem onst rat e Inline Validat ion

Desktop Inline Validation Method [HTML]


In all cases, we have t urned off t he Error Dialog for convenience for each element at "Edit Propert ies -> Rules -
> Validat ion -> Validat ion -> Validat ion Rule -> Don't Show Error Message".
All t he fields wit h dat a ent ry are set t o fail validat ion in t his demo. The t ext of t he Inline validat ion met hods are set
in each widget at "Edit Propert ies -> Rules -> Validat ion -> Validat ion Message".
Here are t he Preview result s for each deskt op set t ing.

Validat ion - 428 -


None, Deskt op
The only messages t he user get s is t he Error Dialog when t urned on at t he widget -level, or t he clickable Error Block
list .

Inline Validat ion: Deskt op, None

Validat ion - 429 -


Per Field Block, Deskt op
Inline Messages are under each field or line of fields
The same behaviour for fields wit hin blocks (see t he t wo blocks marked out wit h background colours in t he
example below)
Inline messages for element s in t ables get list ed in a group below t he t able but above t he st andard "Add" but t on.

Validat ion - 430 -


Inline Validat ion: Deskt op, Per Field Block

Per Field, Deskt op


The same beaviour as t he "Per Field" set t ing, except for
Tables, where t he messages for each row come in a group under t hat row.

Validat ion - 431 -


Inline Validat ion: Deskt op, Per Field

Per Sect ion, Deskt op


All t he Inline Messages in a sect ion come in a group at t he end of each sect ion.

Inline Validat ion: Deskt op, Per Sect ion

Validat ion - 432 -


Mobile Inline Validation Method [HTML]
The mobile set t ings are independent of t he deskt op set t ings, and apply equally t o forms accessed t hrough viewing
t he form eit her in a mobile browser or in thetheMobileApp .

None, M obile

M obile: Inline Validat ion m et hod = None

Validat ion - 433 -


Per Field Block, M obile

M obile: Inline Validat ion met hod = per FieldBlock

Validat ion - 434 -


Per Field, M obile

M obile: Inline Validat ion = per Field

Validat ion - 435 -


Per Sect ion, M obile

M obile: Inline Validat ion met hod = perSect ion


Transact Composer User Guide and ReferenceAdvanced Topics

Validat ion - 436 -


Analytics
Composer | Form Builder | v4.3 & Higher

Overview
Transact ion Manager, t he backend of t he Transact plat forms forms, will obviously log informat ion on form sub-
missions:
Dat a on t he original form request :
o The user's IP address
o t he agent st ring of t he browser, from which holds informat ion on t he Operat ing Syst em (Windows, OS X, iOS,
Android)
The version number of t he syst em
t he device (for example, Windows deskt op, iPad, and so on)
t he browser brand (i.e. Chrome, Firefox, Safari, Int ernet Explorer) and version number

l The referring page (i.e. t he page cont aining t he link t he user act ivat ed t o reach t he form) and port al
l The t ime st amp of t he original request
l Dat a and keys on t he session, cookies and ot her t echnical informat ion Whet her t he form was saved or aban-
doned, including
l When t he form was submit t ed (if ever)

The form's rendering t ime (vit al informat ion for optimizing formperformance)
TM st ores t he dat a on each form request and also consolidat es t hese dat a and renders t hem in various graphs
and dashboards in TM.

Analyt ics - 437 -


Composer's Role in Analytics
Background Saving
Time was when t he dat a ent ered ont o a form was not saved back t o t he server unt il t he end user submit t ed t he
form. Now, Composer has t ools t o:
Configure background saving
where dat a is sent dynamically back t o Transact ion Manager before t he form is submit t ed.
The dat a can be eit her t he values ent ered ont o t he form or an arbit rary numerical score where you ascribe various
numerical values t o some or all of t he fields on t he form
Background saving can be set t o t ake place at regular t ime int ervals, or when t he user navigat es t o anot her wizard-
st yle page, or when t he numerical score changes value
You may not want , for privacy reasons, t o ret ain t he act ual dat a ent ered on t he form by an end user who has not
yet submit t ed t his dat a, but st ill want t o have dat a on where t he user reached in t he form before abandoning it so
t hat you can modify t he form so more users successfully get t o t he submit st age of ent ry. This subst ant ially
increases t he value of t he form t o your business. Wit hout such a feedback mechanism, you will not be able t o
make as many meaningful improvement s t o t he form.
You act ivat e background saving t hrough "St ruct ure -> <Top it em of t he st ruct ure t ree> Edit Propert ies -> Policies
t ab -> Transact ion Manager menu it em -> Transact ion Manager panel:

Analyt ics - 438 -


The Cancel But t on in M aguire Form s
The Maguire t emplat e forms have a Cancel facilit y. This must eit her be act ivat ed when t he new form is creat ed, t he
Maguire t emplat e chosen in t he "Creat e a New Form" Wizard and t he "Include Cancel Feat ure" checked in t he last
page of t he wizard dialog.

The result ing feat ure is a "Cancel" but t on. Current ly t his is not visible in t he Wireframe, only in t he Preview (here in
bot h deskt op mode and in t riggered mobile responsive view):

Clicking on "Cancel" result s in t he form's dat a being saved t o TM and t he form's dat a and analyt ics being displayed
in TM under "Home Dashboard -> Abandoned Transact ions".

Analyt ics - 439 -


The Abandon Widget in non-M aguire Form s

Analyt ics - 440 -


The same funct ion is available in non-Maguire t emplat ed forms. Place t he "Palet t e -> Field Types -> Abandon Form
But t on" on your form. Probably t he best places are in t he Header and Foot ers (which are exposed in t he Advanced
Mode of t he St ruct ure Palet t e as t he "Form Header" and "Form Foot er" blocks below t he Nut s & Bolt s block.
You can even add a "Reason" t ext block for users t o give t he reasons for abandoning t he form. We recommend t he
following t echnique t o make t he t ext block hidden and t hen become visible when users click on a "Close" but t on.

Use Click Act ion script s t o cont rol t he show/ hide behavior of t he "Close" and "Ret urn" st andard but t ons. The most
basic Click Act ion script s t o accomplish t his (wit h no refinement s what soever) are:
For t he "Close" but t on: sfc.updat eVisibilit y({Reason}, t rue, "exclude"); And t he "Ret urn":
sfc.updat eVisibilit y({Reason}, false, "exclude");
On t he form, t he fields look as follows (when placed int o t he "Form Foot er" block"):

By careful configurat ion of t he "Reason" t ext area, you can make t he cont ent s of t his field be list ed in t he TM
"Home -> Operat ions -> Abandoned Transact ions" page in t he Abandon Reason column. Use t he Dat a Model Bind-
ing panel ("Edit Propert ies -> Dat a Model t ab -> Dat a Model Binding panel").

Analyt ics - 441 -


The Binding Name used is one of t he Default Form Dat a Mappings in TM. The double slash "/ / " just means a wild-
card: in ot her words, t he field mapped t o Abandonment Reason can be anywhere in t he form's st ruct ure. If t here
are more t han one such field, TM will use t he first it encount ers in t he t ree. You should be set t ing t he mapping
unique for best result s.

Analyt ics - 442 -


Scoring

Analyt ics - 443 -


We have seen how you can ret ain dat a from an abandoned form. However, due t o privacy concerns, may not act u-
ally want t o ret ain t his dat a, and yet st ill get some met rics on t he abandonded form so as t o ident ify usabilit y
issues which could have cont ribut ed t o it s being abandoned in t he first place. One way is t o score t he form t o see
how far t he user managed t o get t o before abandoning or canceling. Scoring could also be useful in your analysis,
even when you ret ain t he incomplet e dat a.
All you need do t o set up scoring in Composer is add some simple script ing t o "St ruct ure Panel -> <form
name> -> Nut s & Bolt s -> Transact ion Manager Support -> Transact ionScore -> Edit Propert ies -> Rules t ab -
> Calculat ion panel":

The above script is a very simple and unsophist icat ed example. What ever t he script used. it must ret urn an int eger,
which will, aft er you have export ed t he form, t hen be displayed in Transact ion Manager under "Operat ions -> Aban-
doned Transact ions":

Analyt ics - 444 -


Analyt ics - 445 -
Field Types
Composer | Form Builder | v4.3 & Higher

There are a few field t ypes (or "widget s") t hat require furt her document at ion in t his manual. They are:
Rich Test Fields Cascading Dropdowns Prepoplat ed Dropdowns

Rich Text Fields


A Rich Text is a read-only widget t hat has st yling, such as bolding, it alics, font s, and colors, embeded int o t he t ext .
Rich Text is oft en used for explanat ory or legal t ext in forms; many ot her fields also support Rich Text , such as t he
Labels for all fields and Sect ion Help Text .
You can embed t he values of ot her fields wit hin a Rich Text Field. This replaces t helegacy widget
"Float ingField" which no longer ships in t he Palet t e.
You cont rol t he format of t he t ext by embedding "t ags" or "markup" int o t he t ext . We will list t hese below. Tags
must be properly opened and closed as a pair. If t he pair is incorrect , t he t ext will not display correct ly. Rich Text
may render slight ly different ly in t he wireframe, PDF and HTML. This is because t he underlying implement at ions
on each plat form are not t he same. Composer at t empt s t o make t he t ext appear as close as possible on all plat -
forms — if you discover discrepancies, please not ify us wit h a sample.

Field Types - 446 -


Rich Text Edit or

Field Types - 447 -


The Rich Text Edit or ("Text [Rich}" widget , "Edit Propert ies -> Propert ies t ab -> General -> General panel -> provides
simple ways of embedding rich t ext t ags int o your t ext .

Consider t he famous quot at ion:


Ask not what your country can do for you; ask what you can do for yourcountry.
Inst ead, use a Count ry Dropdown List at t he t op of t he form asking for which count ry. And t hen depending on t he
count ry choosem, t he quot at ion reads:

Ask not what America can do for you, ask what you can do forAmerica.
or
Ask not what Canada can do for you, ask what you can do forCanada.
And so on.
This is quit e st raight forward t o do.
Creat e t he Count ry Dropdown (or any ot her field whose value you want t o appear in t he t ext .) This field can
appear anywhere in t he form.
Creat e a Rich Text field as shown below:

Field Types - 448 -


Click on t he "Insert Float ing Field" but t on, and point at t he Count ry Dropdown creat ed earlier.
You may also want t o updat e t he ot her t wo values in t he dialog - t hese cont rol what is displayed in t he Float ing
Field if t he Count ry Dropdown has a blank value.

Copy and past e t he float ing field reference int o t he t wo locat ions, so t hat it looks like t his:
Ask not what$FLOAT{Country_linkedField} can do foryou, ask what you can do for
$FLOAT{Country_linkedField}.
Test your form. You should get somet hing t hat looks like t his:

Not e t hat Composer has creat ed a hidden Float ing field underneat h t he Rich Text field. Do not delet e t his field, as
it t emporarily st ores t he value t o be inject ed int o t he Rich Text , and is linked t o t he real value. You can modify t he
format t ed value of t his field if desired.The Rich Text t oolbar icons can be used in t wo ways:
To apply a t ag t o an exist ing piece of t ext , select t he t ext , and t hen click t he icon.
If you click t he icon when no t ext is select ed, t he mat ching t ags will be placed int o your t ext , wit h t he cursor posi-
t ioned for you t o st art t yping.
The Aut o [BR] checkbox, if select ed, will aut omat ically add a "[BR/ ]" t ag int o your t ext every t ime you press t he
Ent er key.
Tip: It is st rongly recommended not t o specify cust om font s, as t hese may not render correct ly on different sys-
t ems.

Tag Reference
There are t wo t ypes of t ags, t hose t hat affect individual charact ers wit hin t he t ext , and t hose t hat t urn whole para-
graphs int o list it ems (eit her bullet s or numbered it ems).

Field Types - 449 -


Charact er t ags

Tag Formatting Sample Result

[i]..[/i] Italics Hello [i]Wor ld[/i] Hello Wor ld

[b]..[/b] Bold Hello [b]Wor ld[/b] Hello World

[u]..[/u] Under line Hello [u]Wor ld[/u] Hello Wor ld

[x]..[/x] Str ike Thr u Hello [x]Wor ld[/x] Hello World

Hello [sub]Wor ld
[sub][/sub] Subscr ipt Hello wor ld
[/sub]

Hello [sup]Wor ld
[sup][/sup] Super scr ipt Hello wor ld
[/sup]

[colour :# ff0000]Red
[colour :# 00FF99] [/ colour ] and [col-
Color Red and blue
[/colour ] or :r gb(0,0,255)]blue
[/ color ]

My font is Fonts available depend on the fonts


[font:Myr iad available in your destination system,
[font:Ar ial][/font] Font type
Pr o]Myr iad Pr o and var y between PDF and HTML. See
[/font] separ ate topic on Fonts.

My font is so [font-
[fontsize:9pt]
Font size size:16pt]big[/ font- My font is so big.
[/fontsize]
size]

[link:[http:// www.a- Avoka


[link:][/link] Link voka.com ]Avoka[/ (Links wor k in HTML and mor e r ecent
link] r eleases of Adobe Reader .)

Copyr ight [copy]


[copy] [r eg]
Symbol 2010 Avoka Tech- Copyr ight © 2010 Avoka Technologies.
[tr ade]
nologies.

Tag Formatting Sample Result

Field Types - 450 -


Mandator y mar ker .
This is used to inser t
All fields
the mandator y All fields mar ked with
${options:policy.mandator y mar ked
mar ker (usually a r ed ${op-
with * ar e
aster isk, but con- tions:policy.mandator y
.mar ker } mandator y.
tr olled via your .mar ker } ar e mandator y.
stylesheet) into your
help text.

Bullets, Lists and ParagraphTags


Bullet s and List s affect an ent ire paragraph of t ext . The bullet charact er or numbering st yle is cont rolled via t he
propert ies and t he st ylesheet for your form. Ext ra levels of indent are cont rolled via a leading dot .

Example Sample

USA

l CA
[]USA[/ ]
[.]CA[/ ]
San Francisco
[..]San Francisco[/ ] [.]NY[/ ]
l NY
[..]New York[/ ] []Australia[/ ] [.]NSW[/ ]
[..]Sydney[/ ]
New York Aust ralia
l NSW
Sydney
1. USA

1. CA
[# ]USA[/# ]
1. San Francisco
[.# ]CA[/# ]
[..# ]San Fr ancisco[/# ] [.# ]NY[/# ] 2. NY
[..# ]New Yor k[/# ] [# ]Austr alia[/# ] [.# ]NSW[/# ] 1. New York
2. Aust ralia
[..# ]Sydney[/# ]
1. NSW

1. Sydney

Use this tag to r eset the number ing list back to 1. The
[# r eset]
r eset take will take effect in the next r ich text field.

Field Types - 451 -


[p]Use the par agr aph tags to wr ap ar ound
Use the par agr aph tags to wr ap ar ound multiple par a-
multiple par agr aphs of text. Each par agr aph
gr aphs of text. Each par agr aph will be spaced fr om
will be spaced fr om the each other .[/p]
the each other . This is another par agr aph
[p]This is another par agr aph[/p]

[.p]A par agr aph. Notice the spacing[/p]


A par agr aph. Notice the spacing One level of indent
[..p]One level of indent[/p]
Two levels of indent
[...p]Two levels of indent[/p]

You can br eak [br /] text onto [br /]multiple You can br eak text onto
lines without any spacing multiple lines without any spacing

Aut o-numbering is cont rolled by Sequences in Nut s & Bolt s. This is an advanced t opic, and usually configured for
you in your st yle-sheet .
Paragraphs are opt ional, but are useful for longer blocks of rich t ext .

Radio Buttons
Radio but t ons in Composer required a lot of document at ion. No longer: Composer 4 now handles t hem gracefully.

Creat ing Radio But t on Groups M anually


The Widget Palet t e now cont ains a "Smart " family of radio but t on element s:
Smart Radio But t on
Smart Radio But t on Group
To creat e a funct ioning set of radio but t ons, you need t he Group widget and a smart but t on widget for each of t he
but t ons t o be select ed. For each smart but t on you place on t he form, in t he wizard dialog, use t he Browse but t on
t o point t o t he Linked But t on Group. (If you neglect t o do t his in t he wizard dialog, you can point t o t he group in
"Edit Propert ies -> Propert ies t ab -> Dat a -> Dat a panel".)
If you want t o pick up t he select ed value of t he but t on group in, say, an insert ed float ing field in a Rich Text Field,
always point t o t he but t on group.
Now you can t ake a whole but t on set , place t hem int o a simple block and copy t hat block t o anot her part of t he
form. This now works wit hout any fuss.

M andat ory Radio But t ons


It doesn't really make sense t o make an individual Radio But t on mandat ory. As you can see above, you can make
t he But t on Group mandat ory - t his means t hat t he user will have t o select one of t he but t ons in t he group. See
MandatoryBlock.

Field Types - 452 -


Calculat ing or Using t he value of a Radio But t on Group
If you need t o calculat e t he value of a Radio But t on Group, you need t o place t he calculat ion on t he But t on Group,
rat her t han individual but t ons. Please refer t o ScriptingandDependencies.
If you need t o use t he value of a Radio But t on in anot her rule, you can eit her t reat individual but t ons similarly t o a
checkbox (and use Is-Select ed in t he paramet er) or you can refer t o t he value of t he Radio But t on Group.

Dropdown Menus
Use t he "DropDown List " widget from t he Palet t e.
A Dropdown List has t wo set s of values in t he "Dat a" t ab of t he advanced propert ies dialog of t he widget :

Display Values
This is a list of values t hat are displayed in t he user int erface.

Field Types - 453 -


Values
This is a list of underlying raw values t he field will pass on t o TM when a user select s a display value.
Display Values has a default value of ${values}. This means t hat by default , t he set of Display Values is ident ical t o
t he Values. This simplifies using Dropdown List s, because you only need one set of list s.
However, somet imes it 's useful t o have a different display value versus t he underlying value. For example, you may
want t o display count ries in t he Dropdown list using t heir full names such as Aust ralia, Unit ed Kingdom and
France, but st ore t heir underlying values using t he t wo let t er count ry abbreviat ions such as AU, UK, and FR. In t his
case, you can simply modify t he values of Display Values.
Not e:
The number of Display Values and Values must be ident ical.
You must delet e t he ${values} formula if you're going t o add explicit Display Values.
If you use Composer's t ranslat ion feat ure, only t he Display Values will be t ranslat ed. This means t hat any code
t hat uses t he Values will cont inue t o work wit hout modificat ion.
Int ernally, t he Values and Display Values propert ies are st ored using a pipe charact er "| " as a separat or. This
means t hat you cannot use pipe charact ers in your Values or Display Values.
To access t he Display Value in a calculat e event , use t he following script :
sfc.get Format t edValue(noderef)
In PDF, a Dropdown list can have a blank value even if "blank" is not one of t he allowed values. (When a Dropdown
list is first displayed, it 's value is always blank unless init ialized.) In HTML, a Dropdown List is only allowed t o have a
blank value if blank is one of t he values in t he Values list . In order t o achieve compat ibilit y bet ween t he t wo imple-
ment at ions of Dropdown List , Composer provides a "Aut omat ically Add
Blank Value [HTML]" propert y which is checked by default . This has t he added benefit of making t he concept of a
Mandat ory Dropdown List meaningful.
Composer also provides a number of prepopulat ed dropdown list s. See PredefinedBlocks. These include: Drop-
down List [Count ries]: A list of count ries from around t he world.
Dropdown List [Genders]: Cont ains 'Male' and 'Female'.
Dropdown List [St at es+Codes,Unit ed St at es]: A list of st at es found in t he Unit ed St at es is displayed in t he drop-
down list , e.g. Alabama. This is what t he form filler sees. However a corresponding t wo let t er count ry code e.g. AL is
st ored in t he underlying dat a.
Dropdown List [St at es,Aust ralia]: A list of Aust ralian st at es.
Dropdown List [St at es,Unit ed St at es]: A list of st at es found in t he Unit ed St at es. In t his dropdown list , t he dis-
played value and 'st ored' value are ident ical.
Dropdown List [Yes/ No]: Cont ains 'Yes' and 'No' values.

Field Types - 454 -


Cascading Dropdowns

Field Types - 455 -


The first st ep is t o define t he behaviour of t he set of cascading dropdowns wit h XML. Here is an example of t hree
orders of cascading dropdowns: os -> manufact urer -> model.
<root >
<os name="Android" value="Android">
<manufact urer name="HTC" value="HTC">
<model name="One" value="One"/ >
<model name="One X" value="One X"/ >
</ manufact urer>
<manufact urer name="Samsung" value="Samsung">
<model name="Galaxy S3" value="Galaxy S3"/ >
<model name="Galaxy Not e 3" value="Galaxy Not e 3"/ >
<model name="Galaxy S4" value="Galaxy S4"/ >
<model name="Galaxy Express" value="Galaxy Express"/ >
<model name="Galaxy XCover 2" value="Galaxy XCover 2"/ >
<model name="Galaxy Fame" value="Galaxy Fame"/ >
</ manufact urer>
</ os>
<os name="Windows Phone 7" value="Windows Phone 7">
<manufact urer name="Nokia" value="Nokia">
<model name="Lumia" value="Lumia" / >
<model name="Lumia 625" value="Lumia 625" / >
</ manufact urer>
<manufact urer name="Samsung" value="Samsung">
<model name="OMNIA 7" value="OMNIA 7" / >
</ manufact urer>
</ os>
<os name="iOS" value="iOS">
<manufact urer name="Apple" value="Apple">
<model name="iPhone 5" value="iPhone 5"/ >
<model name="iPhone 5S" value="iPhone 5S"/ >
<model name="iPhone 5C Green" value="iPhone 5C Green"/ >
<model name="iPhone 5C Blue" value="iPhone 5C Blue"/ >
<model name="iPhone 5C Yellow" value="iPhone 5C Yellow"/ >
<model name="iPhone 5C Pink" value="iPhone 5C Pink"/ >
<model name="iPhone 5C Whit e" value="iPhone 5C Whit e"/ >
</ manufact urer>
</ os>
</ root >
Drop a Cascading Dropdown Manager widget ont o a sect ion (here, t he default "Inst ruct ions") in t he St ruct ure
pane. Past e t he XML definit ion int o t he XML Dat a t est field.

Field Types - 456 -


Field Types - 457 -
The Cascading Dropdown M anager predefined block dialog, wit h t he XM L past ed
int o t he dat a t ext box. "Save" creat es t he st ruct ure shown.

Drop t hree "Cascading Dropdown List " widget s int o t he st ruct ure, Here we have put t he t hree widget s ont o t he
sect ion level of t he form. Fill in t heir dialogs, giving t he name (as it will appear on t he form), point t o t he "Cascading
Dropdown Manager Cont roller" and give t he dat a pat h from t he root as defined by t he XML. Here is t he dialog for
t he last of t hese list s:

The dialog for creat ing t he "m odel" level cascading dropdown list .

For convenience we have kept t he lower t wo list widget s on t he same line as t he "os" t op order. The final st ruct ure
looks as follows:

Field Types - 458 -


The final st ruct ure on t he form .

And here is t he preview rendit ion:

Preview of t he cascading dropdowns.

Prefilled Dropdown Lists


The Populat ing Dropdown List widget allows a Dropdown Field t o be linked (via t he Linked Field propert y) t o a
dat a field (creat ed by dropping "Widget Palet t e -> Int ernal -> Dat aField" ont o t he form's st ruct ure. TM is t hen con-
figured (in TM, "Home Dashboard -> Form -> Form Dat a Config link -> Propert y Prefilled Mapping t ab -> Edit but -
t on") t o prepopulat e t he dat a field wit h values. The default is for TM t o give t he dat a as a st ring using t he default
separat ors in t he Dat a Field's Edit Propert ies:

Field Types - 459 -


Prefilled Dropdown List s from Repeat able Areas
The Prepopulat ing Dropdown List from Repeat widget creat es a dropdown menu where t he it ems are t aken from
a nominat ed column of a t able or a repeat .

Field Types - 460 -


Repeats
Composer | Form Builder | v4.3 & Higher

Overview
Repeat s in earlier versions of Composer used t o be complex. You could not copy a a whole repeat st ruct ure block
t o anot her locat ion on t he form wit hout generat ing error messages and t ime was you had t o use many work-
arounds t o get t he new st ruct ure work. All t hese had t o be document ed for many pages. No longer, wit h Com-
poser Version 4.
Repeat s, t hen, are a more flexible repeat ing st ruct ure t han Tables. Each "Row" in a repeat can be a layout block of
fields. That means t he row is not confined t o a rigid grid-like st ruct ure, as wit h t ables.
Ot herwise, repeat s are easy t o const ruct . The simplest way is t o use t he predefined block "Repeat ing Block Tem-
plat e". Int o it , insert a "Block [Repeat able]" and populat e it wit h t he fields you want repeat ed. The t emplat e gives
you Add and Delet e but t ons for users t o dynamically add or delet e blocks. You can also use Edit Propert ies on t he
block t emplat e t o change layout and t he wording of t he but t ons.

We encourage you t o experiment wit h t he widget s in Repeat s and Tables and discover how powerful is t his
approach.

Repeat s - 461 -
Advanced Scripting
Composer | Form Builder | v4.3 & Higher

JavaScript in Composer
Composer uses JavaScript as it s script ing language. The only differences are some Composer-relat ed libraries which
cont ain Composer classes t o, for example, reference fields in a Composer form or for ot her Composer int egrat ions.

This sect ion of t he Guide focuses on form input script ing. Elsewhere we will cover t he XML code used t o t weak t he
format t he form's out put for some special purpose (such as t o accommodat e some int egrat ion point wit h t he
Ent erprise's backend).

Synt ax
The synt ax for Composer's script s is t hat of JavaScript . JavaScript is maint ained by t he Mozilla Foundation . Here are
t he canonical references:
{+}https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide+{+}https://developer.mozilla.org/en-US/-
docs/Web/JavaScript/Reference+
Ot her aut horit at ive references are:
{+}http://www.w3schools.com/js/js_syntax.asp+{+}http://www.w3schools.com/jsref/default.asp+{+}http://www.-
tutorialspoint.com/javascript/javascript_syntax.htm+{+}http://javascript.info+{+}http://www.-
java.com/en/download/faq/java_javascript.xml+

"M e" Inst ead of "This"


In JavaScript , t he "t his" object generally refers t o t he current object receiving t he event . Never use t he "t his" object
in Composer script s.
All Composer JavaScript (for rules, click act ion script s, et c.) are embedded in a funct ion, rat her t han being coded dir-
ect ly under an event . (The reasons for t his are beyond t his document 's scope.) The commonly used "t his" object ,
which refers t o t he current object , is not available in funct ions. Inst ead, Composer provides a "me" object . The me
object refers t o t he object where t he business rule is locat ed.
If you have some exist ing JavaScript code t hat works correct ly in eit her PDF or HTML, you can generally simply
replace every occurrence of "t his" wit h "me" for t he same code t o work in Composer.

Ot her Depart ures from St andard JavaScript


If you want t o reuse a legacy script in Composer and want it t o work correct ly across plat forms, you must modify it
t o use t he t echnology-independent Composer Framework JavaScript library inst ead of t he nat ive libraries. For
example, use sfc.get RawValue(me) rat her t han me.rawValue. See t he Avoka Composer Framework link on Com-
poser's Welcomepage.
Here, in t he cont ext of Transact Composer, "across plat forms" specificit y means t hat t he sfc calls work for bot h
PDF and HTML.

Advanced Script ing - 462 -


Classes and Functions
Many of t he Composer funct ions, which are defined in sfcFunct ions.js library, have been designed for your con-
venience — t o accomplish a lot wit h lit t le code. Many of t hese are embodied in t he funct ion but t ons in t he ScriptEd-
itor .

The funct ion but t ons insert t he corresponding funct ion code int o t he Script t ab's t ext window. That code ("$SUM
(...)" for example) get s expanded furt her at runt ime (t o "sfcFunct ion.sum(...)" for example
We will also use t he t erminology "sfc classes" int erchangeably wit h "Composer funct ions". We will ment ion here a
few of t hese sfc classes creat ed for you convenience:
sfc.copyValues (srcBlockNodeRef, t arget BlockNodeRef);
t hough not e t hat t his does not work recursively, i.e. t o blocks wit hin blocks.
Composer also uses convenient ly has a number of script ing convent ions, such as paramet ers, which reduce t he
amount s of code needed t o refer t o form element s and t heir values. For more, see the Composer Framework.

Synt ax Checking
There are a number of JavaScript t ools on t he web for checking synt ax:
{+}http://www.javascriptlint.com/online_lint.php+
A simple webpage, where you past e your JavaScript fragment int o a t ext area field and you get back a report of any
simple synt ax errors. Not e t hat t his t ool is somewhat limit ed in scope, but t his makes it very useful for quick
checks.
Most modern browsers have JavaScript t ools {+}https://developers.google.com/chrome-developer-tools/-
docs/javascript-debugging+ document at ion for Chrome's inbuilt checker
{+}https://developer.mozilla.org/en-US/docs/Tools/Debugger+{+}https://developer-
.mozilla.org/en/docs/Debugging_JavaScript+ These document Firefox's inbuilt Web Console t ool
{+}https://developer.apple.com/library/mac/documentation/AppleApplications/Conceptual/+Safari_Developer_
Guide/Debugger/Debugger.html
The document at ion for Apple's Safari on OS X

Advanced Script ing - 463 -


Composer Framework
The JavaScript Libraries
Composer has several JavaScript libraries. These are exposed in t he Advanced Mode of t he St ruct ure Panel
("<Form> -> Composer Framework ->")
formBridge.js (included in PDF forms) ht mlFormBridge.js
sfmSupport .js which support s
o sfc.js
This defines t he met hods in t he Composer public API. json.js
for JSON support .

The Public API


Docum ent at ion
You can access t he API document at ion at anyt ime in Composer, t hrough t he Online Document at ion dropdown at
t he t op right -hand corner of t he Composer User Int erface.

Select t he "Javascript Document at ion" opt ion.


This opens a webpage in a new t ab in your browser, list ing t he met hods in t he public API. (Avoka does have a set
of int ernal APIs, but t hese are subject t o frequent change. We st rongly recommend not using t hese.)

Calls
The sfc calls are designed t o work bot h for HTML and PDF. This is t he reason sfc framework originally came int o
being.
Most of t he sfc met hods are st at ic: you just call t he met hod, specify t he paramet ers and t he met hod ret urns some
value. Some t ypical examples:
sfc.get DaysDifference(st art Dat e, endDat e) sfc.convert ToSt ring(value) sfc.format Dat e(dat eObject , dat eFormat ) sfc.-
get RawValue(noderef)
Ot hers are dynamic, such as t he sfcInst anceManager which operat es on a delegat e (i.e. an event t hat is being
list ened t o). You also can make use of Composer's BusinessRules widget s t o list en t o event s.
However, Composer provides "paramet ers" which are convenient const ruct s t o refer t o form object s wit h a min-
imum of coding.

Advanced Script ing - 464 -


Using JavaScript 's Built -in Funct ions
You can use t he st andard JavaScript funct ions, t hough you should make preferent ially use of any sfc met hod
inst ead of t he st andard JavaScript met hod as a general rule. But t here are far more JavaScript funct ions for you t o
draw on.
There are many references for t hese:
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objectshttp://www.w3schools.-
com/jsref/jsref_obj_global.asphttp://www.tutorialspoint.com/javascript/javascript_builtin_functions.htm
For example:
var n = 12345;
var x = n.t oExponent ial(); / / x will be 1.2345e+4

Param et ers
In t he Script Edit or
The above examples of sfc st at ic met hods calls have a number of paramet ers, such as "st art Dat e", "endDat e" and
so fort h. Composer' Script Editor can convenient ly refer t o fields on t he form for t hese calls.

Refereing t o form element s becomes a simple mat t er of point -and-shoot t o element s in t he St ruct ure Panel on
t he bot t om-left of t he Script Edit or. The field is referenced in t he JavaScript in t he script ing t ext field by it s field
name in curly bracket s. The Dependencies panel in t he dialog gives t he Paramet er Name (t he name wit hin t he curly
bracket s), t he dat a t ype (about which, more lat er) and t he Field Reference (which is t he field's posit ion in t he st ruc-
t ure, relat ive t o t he field for which t he script is being creat ed).
So, we could use an sfc call on such a paramet er:
sfc.convert ToSt ring({Amount 1})
You should not merely t ype t he paramet er name int o some curly bracket s in t he script : t he edit or works best if
you insert your cursor int o t he point of t he JavaScript and double-click on t he paramet er list ed in "Dependencies".
A useful byproduct of using t hese Script Edit or paramet ers is t hat Composer is able t o keep t rack of form ele-
ment s when t hey are moved wit hin t he form, so t hat you do not have t o re-point t o t hese element s in t heir new
locat ions.

Edit Param et er Dat a


Clicking on t he Edit icon in t he right -hand column of t he Dependencies panel (see immediat ely above) brings up
t he Edit Paramet er Dat a dialog where you can:
edit t he paramet er name (i.e. t he name t hat goes int o t he curly bracket s Choose t he parametertype via a drop-
down:
o st ring

l Boolean

o number

l Is Select ed

Advanced Script ing - 465 -


o node
o raw value o UID Trigger Type o St at ic

l Dynamic

We will discuss t he Trigger Type furt her in OptimizingPerformance.

Param et er Types

Parameter
Explanation
Type

Always r etur ns a Str ing r epr esenting the "r aw" value of an object. Does no conver sion,
RawValue so it r etur ns dates, booleans and other values as the under lying str ing that the value is
stor ed as. Uninitialized values may r etur n a null.

Always r etur ns a str ing. Nulls will be conver ted to empty str ings. (This gives you one
Str ing less thing to "wor r y" about in your calculations - you don't have to test for both null and
empty str ing.)

Always r etur ns a number . It will do its best to conver t any par ameter to a number . If it
Number
cannot conver t it, it will r etur n zer o.

Takes anything that r esembles a tr ue value, and r etur n the boolean value "tr ue". This
Boolean includes "1", "T", "tr ue", "Y", "yes", "on", and is case insensitive. Other wise it r etur ns the
boolean value "false". Blank or Null is false.

Only used for checkboxes and r adio buttons. Retur ns Boolean tr ue if the check-
IsSelected
box/r adio-button is selected.

Retur ns the inter nal node object that r epr esents an object. If you point at anything in a
r epeat fr om outside the r epeat, this r etur ns null (because it's r eally multiple nodes). If
Node you r efer to any object inside a r epeat fr om within the same r epeat, it r etur ns the
node. Nodes can be passed to inter nal SFC functions to per for m oper ations on the
object itself.

Pr ovides a r efer ence to a node. Similar to a node, but can be used to r efer ence an
UID
object in a par ticular r ow within a r epeat.

Advanced Script ing - 466 -


Node Reference
There are t hree ways t o refer t o a node (or "form element ", t he t erminology we have been using consist ent ly so
far):
The Script Edit or paramet er
t he relat ive pat h (as seen in t he "Field Reference" column value in t he Dependencies panel) t he Full Pat h (or "Abso-
lut e Pat h" from t he form's root , usually by default "$record")
The field's UID (Unique Ident ifier)

Obt aining t he Fullpat h


If you do not avail yourself of t he convenience of t his point -and-shoot const ruct , you will have t o refer t o t he form
field using t he Dat a Model t ab by double-clicking on t he field in eit her t he left - or right -hand panels and copying
t he "Fullpat h" from t he Dat a Model Binding panel in t he propert ies dialog.
For example
$record.Get t ingSt art ed.First Name.dat a

Obt aining t he UID


You could get t his from "Edit Propert ies -> Overview t ab -> Basic Informat ion panel -> field UID"
For example:
/ Get t ingSt art ed/ _out erArea/ _cont ent Area/ First Name/ dat a
Or you can use t he sfc call: sfc.convert ToUid(noderef)

Data Types
Overview
Dat a Typing is used t hroughout Informat ion Technology. In Composer, t here are t wo set s of dat a t ypes:
Composer's own t yping, as embodied in parameterdatatypes

l which are used by Composer int ernally. Some of t hese are exclusive t o Composer:
l l Node
l UID
l Is Select ed JavaScript'styping

l not t o be confused wit h t he Composer t ypes, t hough some do resemble Composer's

The Composer t ypes, as you would expect , were designed t o handle dat a for bot h HTML and PDF forms.
JavaScript is looser in it s dat a t yping, which means t hat you usually do not explicit ly specify some dat a's t ype. Cir-
cumst ances, however, may require you t o t ype dat a in order t o get desired result s.

JavaScript Types
JavaScript has less t ypes t han Composer. For example, t here is no such t hing as a Dat e t ype. All JavaScript has are:

Advanced Script ing - 467 -


St ring
which is a sequence of charact ers, usually delimmit ed by st raight quot e marks for example: "To be or not t o be"

Num ber
and t here is no dist inct ion made bet ween inegers or decimals for example: 2, 3.142, 123e5 (scient ific not at ion for
12300000)

Boolean
t hat is: t rue or false JavaScript arrays JavaScript Object s
for example: JSON object s

Undefined
A variable wit h no value

Null
An empt y variable
N ot e: undefined is not t he same t ype as null. This is a subt le dist inct ion, but it does have relevance t o Composer
script ing, as in t he a script ing example given in VisibilityinCollaboration .

Raw Dat a
This is a Composer int ernal dat a t ype. All dat a is held int ernally in Composer as a st ring of charact ers, be it a num-
ber, dat e, st ring and so on. This can be t ricky: for example t here is a difference bet ween t he int eger 2, t he float ing
point value 2 and t he st ring "2". JavaScript handles t he calculat ion of adding an int eger t o a float ing point gracefully,
but can mishandle adding an int eger t o a st ring.
Dat es are a pot ent ial source of problems. Please refer t o t he Dates t opic.

Conversions
Because of JavaScript 's loose t yping, t he need t o convert form values hardly ever arises for Script Edit or para-
met ers. Composer looks aft er t his for you.
However, if you are writ ing your own field references manually, you may have t o convert t he field's value from it s
nat ive raw dat a value. The Public API has a number of met hods t o do t his:
sfc.convert ToBoolean(value) sfc.convert ToFloat (value) sfc.convert ToInt eger(value) sfc.convert ToSt ring(value)
Convert s a number value (or Boolean?) int o a Composer st ring dat a t ype. sfc.format Dat e(dat eObject , dat eFormat )
see Dates sfc.get Format t edValue(noderef)
ret urns t he value of t he node according t o it s Composer dat a t ype sfc.get RawValue(noderef)
t he opposit e of t he format t ed value: ret aurns t he raw value, irrespect ive of t he Composer dat a t ype.

Explicit Conversions
You can convert St ring values using t he public API's funct ions (listedabove). For example:
var myvalue = sfc.convert ToNumber(sfc.get RawValue(me));
This code will convert t he raw value of t he current field ("me") t o a Number.

Advanced Script ing - 468 -


Im plicit Conversion
JavaScript is a loosely t yped language, and will at t empt t o convert dat a for you. The rules are a lit t le complicat ed,
which is why we suggest t hat you always t ry t o convert t o t he appropriat e t ype before you use t hem.
One simple example is a way t o convert any dat a t ype int o a st ring - simply concat enat e an empt y st ring t o it . For
example:
var var1 = 18; / / var1 is a number
var var2 = var1+""; var2 is a st ring, because we concat enat ed "" t o it .

Com parisons
Be careful when making comparisons bet ween different dat a t ypes. JavaScript will at t empt t o convert t hem for
you, but t he result s may not always be t he expect ed.
In JavaScript , t he "t his" object generally refers t o t he current object receiving t he event . Never use the "this" object
in Composerscripts.
All Composer JavaScript s are embedded in a funct ion (see Advanced Scripting), rat her t han being coded direct ly
under an event . (The reasons for t his are out -of-scope.) The commonly used "t his" object t o refer t o t he current
object , is not available in funct ions. Inst ead, Composer provides a "me" object . The "me" object refers t o t he object
where t he Composer script is locat ed, i.e. t he form element whose Edit Propert ies dialog holds
t he script .
If you have some exist ing JavaScript code t hat works correct ly in eit her PDF or HTML, you can generally simply
replace every occurrence of "t his" wit h "me" for t he same code t o work in Composer.
N ot e : If you want t he script t o work correct ly across different t echnologies, you must also rewrit e it t o use Com-
poser's t echnology independent JavaScript library rat her t han t he nat ive libraries. for example, use sfc.get RawValue
(me) rat her t han me.rawValue. See t he Avoka Composer Framework.

Dates
Dat e Form at s and Pat t erns
There are a number of different ways in which dat a is st ored, displayed, edit ed and validat ed in Composer forms.
These are most ly useful for dat es and numeric values, which can be represent ed in different ways. When you are
using Composer, you can specify t hese different format s by using dat a pat t erns, such as DD/ MM/ YYYY or
$#,###.##.
The different format s are:

For mat Descr iption

This is the for mat that is used when the user types into the field. For example, 3/27/2012,
Edit
or 49.99. It is possible to have multiple alter nate edit for mats - for example, allowing
For mat
either 2 or 4 digit year s.

This is the for mat that is displayed when the user exits the field. It can be mor e r eadable
Display
than the edit for mat, and clar ifies the inter pr etation. For example, 27th Mar ch 2012 or
For mat
$49.99

Advanced Script ing - 469 -


This is the value that is actually stor ed within the for m at r untime. It's the value you get
Raw fr om calling the getRawValue(). This is standar dized to make pr ogr amming easier
For mat
l it doesn't mat t er what your format s are used for t he form users, you always get a con-
sist ent value in any code you writ e. For dat es, t his is ISO format , such as 2012- 03-27.

XML This is the for mat that is used to actually stor e the data in the XML file. Composer will use
For mat this for mat for pr e-population data, and will conver t to this for mat on submission.

Validation PDF for ms allow a separ ate validation patter n that is used to ensur e that the data is
Patter n valid. In Composer , the Validation Patter n is always identical to the Edit Patter n.

Usually, you don't need t o be aware of t hese pat t erns because t hey are specified in your organizat ional
st ylesheet s. However, you may need t o occasionally override t hese pat t erns for part icular fields.
In most cases, users will ent er dat es using pop-up dat e edit ors, and so dat e edit format pat t erns are not so import -
ant . However, some users, especially "power" users and visually impaired users may prefer t o ent er dat es using t he
keyboard.

Advanced Script ing - 470 -


Recom m endat ion for Dat es
For dat es, we recommend t hat t he most useful Dat a Format is:
Nort h America: dat e{M/ D/ YYYY}| dat e{M/ D/ YY}
Elsewhere: dat e{D/ M/ YYYY}| dat e{D/ M/ YY}
These format will:
accept single digit days and mont hs wit h or wit hout a leading zero (flexible)
accept 2 digit or 4 digit years (flexible)
for edit ing, will always display days and years wit hout leading zeros (simpler)
for edit ing, will always display years including t he cent ury (no ambiguit y) Working wit h Dat es
Composer uses theJavalibrarymoment.js (freely dist ribut able under t he t erms of t he MIT license) t o handle dat es.
The dat e clases in t he AvokaComposerFramework are:
sfc.format Dat e(dat eObject , dat eFormat )
where "dat eObject " is is t he raw value of t he form element , sfc.get RawValue(someFormElement )
sfc.get DaysDifference(st art Dat e, endDat e) Where t he st art Dat e and endDat e are raw values.
sfc.get TodaysDat e()
Ret urns t oday's dat e as YYYY-MM-DD
This is not t he generat ion dat e of t he form (which you access in script s wit h t he property formula
$GENERATION{DATE} inst ead)
This call ret urns only t he calendar dat e. To get t he t ime of day and t imezone as well, use t his nat ive JavaScript call
inst ead, where "x" will be your dat e object .
var x = new Dat e();
sfc.isLeapYear(year)
Where "year" is a 4-digit value. Ret urns t rue or false.
sfc.isPast Dat e(dat e)
Where "dat e" is t he raw value. Ret urns t rue or false
sfc.isToday(dat e)
Where "dat e" is t he raw value.
sfc.parseDat e(dat eSt ring, dat eFormat )
Parses a dat e according t o t he given dat e format . Bot h paramet ers are st rings. Ret urns a raw value.

Advanced Dat e Out put Form at s


The sfc met hods for dat e handling depend on t he Moment.js library. This JavaScript library can out put dat es in vari-
ous format s, as specified by t his t able:

Input Output

M, MM Month Number (1 - 12)

MMM, MMMM Month Name

Q Quar ter (1 - 4) – sets the month to the fir st month in that quar ter

D, DD Day of month

Advanced Script ing - 471 -


Do Or dinal day of month (fr om 2.6.0)

DDD, DDDD Day of year

d, dd, ddd,
Day of week (NOTE: these for mats only make sense when combined with "ww")
dddd

Day of week (locale) (NOTE: these for mats only make sense when combined with
e
"ww")

E Day of week (ISO) (NOTE: this for mat only make sense when combined with "WW")

Input Output

Week of the year (NOTE: combine this for mat with "gg" or "gggg" instead of "YY" or
w, ww
"YYYY")

Week of the year (NOTE: combine this for mat with "GG" or "GGGG" instead of "YY"
W, WW
or "YYYY")

YY 2 digit year (see below)

YYYY 4 digit year

gg 2 digit week year (if gr eater than 68 will r etur n 1900's, other wise 2000's)

gggg 4 digit week year

GG 2 digit week year (ISO) (if gr eater than 68 will r etur n 1900's, other wise 2000's)

GGGG 4 digit week year (ISO)

a, A AM/PM

H, HH 24 hour time

h, hh 12 hour time (use in conjunction with a or A)

m, mm Minutes

s, ss Seconds

S Deciseconds (1/10th of a second)

Advanced Script ing - 472 -


SS Centiseconds (1/100th of a second)

SSS Milliseconds (1/1000th of a second)

Z, ZZ Timezone offset as +07:00 or +0700

X Unix timestamp

LT, L, LL, LLL,


Locale dependent date and time r epr esentation
LLLL

You parse an input dat e wit h sfc.parseDat e (dat eSt ring, dat eFormat ), using t he format s in t he Input column of t he
t able immediat ely below. The out put of t his call gives you a properly format t ed raw dat e format .
You can use t hese t o build t he full input format specificat ion, using ot her charact ers as punct uat ion. For example:
YYYY-MM-DD or YYYY/ MM/ DD or DD/ MM/ YYYY or MM/ DD/ YYYY. Int ernally, Composer's raw dat e format is YYYY-
MM-DD, or for more precision t o include t ime of day, t imezones along wit h t he dat e, it uses t he ISO DateFormat .
You also can cont rol how a dat e object displays using sfc.format Dat e(dat eObject , dat eFormat ), using t he format s
displayed in t he right -hand "Out put " column. As wit h input s, you can concat enat e t hese t oget her using charact ers
as punct uat ion. For example: "MMMM Do, YYYY, HH:mm a, t imezone Z" format s as "May 19t h, 2014, 13:27 pm,
t imezone +10:00", where t he Z specifies t he t imezone as t he t imezone offset from GMT.
To ret urn t he precise t ime and t imezone, use
var x= new Dat e;
and get t he format t ed t ime wit h our sample format wit h t he call
sfc.format Dat e(x, "MMMM Do, YYYY, HH:mm a, t imezone Z")

Regular Expressions
Overview
A regular expression is a sophist icat ed, indust ry-st andard way of specifying a validat ion pat t ern. An explanat ion of
regular expressions is beyond t he scope of t his document , but t here are numerous books and web sit es t hat you
can refer t o. You can also use search engines t o find st andard regular expressions for common t ypes of dat a. An
example of some regular expression pat t erns are:
^[a-zA-Z0-9_-\ .]@[a-zA-Z0-9_-\.]\ .[a-zA-Z]{2,4}$ t he pat t ern for email addresses
^ht t p\ :/ / [a-zA-Z0-9-\ .]+\ .[a-zA-Z]{2,3}(/ \ S* )?$
t he pat t ern for HTTP:/ / URLs

Advanced Script ing - 473 -


RegEx References
https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressionshttps://developer-
.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/RegExphttp://www.regular-expres-
sions.info/javascript.html
http://regex101.comhttp://regexpal.com
A good resource for regular expressions is: http://regexlib.com/ .

Online regular expression edit or and evaluat or can be found at : http://gskinner.com/RegExr/ and http://www.de-
buggex.com/ .

How t o Use Regular Expressions


There are t wo ways t o use pat t erns in JavaScript :
var pat t = new RegExp(pat t ern,modifiers); or more simply:
var pat t = / pat t ern/ modifiers;
The modifiers (also called "flags" in t he document at ion) are:

g
global mat ch

i
ignore case

m
mult iline; t reat beginning and end charact ers (^ and $) as working over mult iple lines (i.e., mat ch t he beginning or
end of each line (delimit ed by \ n or \ r), not only t he very beginning or end of t he whole input st ring)
y
st icky; mat ches only from t he index indicat ed by t he last Index propert y of t his regular expression in t he t arget
st ring (and does not at t empt t o mat ch from any lat er indexes). This allows t he mat ch-only-at -st art capabilit ies of
t he charact er "^" t o effect ively be used at any locat ion in a st ring by changing t he value of t he last Index propert y.
In ot her words, in most cases where you are not using a modifier, just use t he pat t ern as follows:
/ ^[a-zA-Z0-9_-\ .]@[a-zA-Z0-9_-\.]\ .[a-zA-Z]{2,4}$/
in your JavaScript code.

Using Property Formulae


Overview
The following script ing const ruct s, t he propert y formulae, only apply while t he form is being generat ed. When gen-
erat ion is complet e, t he fom is t hen delivered t o t he user, eit her as HTML t he browser or as XFA t o Acrobat reader
(or some ot her reader) or t o a pdf browser int ernal module or plugin.
These propert y formulae allow you t o query t he build environment , t o inspect a form field, t o find a field in t he
form hierarchy, perform some st ring manipulat ions, and ot her useful funct ions.
They do not t rigger anyt hing while t he form is running and only affect t he t ime it t akes t o serve a form.

Advanced Script ing - 474 -


$BUILD

Call Result

Retur ns the values of the called ar guments: ENVIRONMENT


$BUILD(ENVIRONMENT)
VERSION REVISION

$BUILD(VERSION)

$BUILD(REVISION)

$CHAR

Call Result

$CHAR{COMMA} Retur ns a comma char acter ','

$CHAR{DOT} Retur ns a dot char acter '.'

$CHAR{SLASH} Retur ns a slash char acter '/'

$CHAR is a convenience t o specify charact ers, in a t ext field for example, t hat would normally are parsed in
JavaScript .

$DATA

Call Result

Retur ns the r oot element of the for m:


$DATA(ROOT)
E.g. "/AvokaSmar tFor m"

$ENCODE

Call Result

$ENCODE{SCRI
Encodes the value so it can placed in a javascr ipt str ing liter al
PT,value}

$ENCODE
{RICHT Replaces r ichtext mar kup with its for m specific implementation
EXT,value}

Advanced Script ing - 475 -


$ENCODE
{URL,v URL encodes the supplied value
alue}

$ENCODE
{XML,v Encodes the value with XML mar kup entities
alue}

$ENCODE
{STRIP Removes r ichtext mar kup
,value}

$ENCODE
{TRIM, Removes cr , lf char acter s, leading and tr ailing spaces
value}

$ENCODE
{UPPE Conver ts the value to upper case
R,value}

$ENCODE{LOW
Conver ts the value to lower case
ER,value}

$ENCODE
Conver ts the value to a valid javascr ipt function name by r eplacing invalid char s
{FNNA
with _
ME,value}

Not e: $ENCODE is unique among t he propert y formulae, in t hat you can specify mult iple values, pipe- delimit ed.
For example: "$ENCODE{TRIM| UPPER,value}", will first t rim t he st ring (i.e. remove any leading or t railing space char-
act ers) offered as t he "value" and t hen convert t he charact ers t o upper case. The order of t hese pipe-separat ed
argument s is import ant , as changing t he order of t hem my affect t he out put . Not e t hat t hese are execut ed from
left t o right .

$FIELD

Call Result

$FIELD{TYPE} r etur ns the type of the cur r ent field

Call Result

if any

Advanced Script ing - 476 -


$FIELD{TYPE,r e-
r etur ns the type of the field at the r elative uid
lativeUid}

$FIELD{TYPE,r e- r etur ns 'tr ue' if the type of the field at the r elative uid is an instance of the
lativeUid,type Name} supplied type name

$FIELD{VALUE} r etur ns the value of the cur r ent pr oper ty of the cur r ent field

$FIELD{VALUE,-
r etur ns the value of the cur r ent pr oper ty as defined in the specified type
typeName}

For r adio buttons only, indicates whether the buttons value is contr olled by
the gr oup or by the button
$FIELD{RBTYPE}
r etur ns 'gr oup' for gr oup contr olled buttons (case 1&2) r etur ns 'button' for
button contr olled buttons (case 3)

For r adio buttons only


$FIELD{RBTYPE,but-
r etur ns tr ue if the button type (as deter nmined by
tonType}
$FIELD{RBTYPE}) matches the supplied type.

$FIELD r etur ns the r elative uid of the closest par ent instance manager or blank if
{INSTANCEMANAGE R} not found

$FIELD{NESTLEVEL} r etur ns the number of r epeat instances this field is nested inside of

$FIELD{INDEX} r etur ns the index of the field as a child of its par ent

$FIELD{REVERSEINDEX} r etur ns the r ever se index of the field wr t its par ent

$FIELD{ISFIRST} r etur ns tr ue if this field is the fir st child of its par ent

$FIELD{ISLAST} r etur ns tr ue if this field is the last child of its par ent

$FIELD{CHILDCOUNT} r etur ns the number of child fields

$FIELD{HASCHILDREN} r etur ns tr ue if the field has at least 1 child

$FIELD
r etur ns the contents of the given r esour ce applying for mula substitutions
{RESOURCE,r esNam
with the context of the cur r ent field.
e}

Advanced Script ing - 477 -


$FIND

Call Result

$FIND{pr op- Sear ches fr om the cur r ent context up the hier achy for a pr oper ty with the
er tyname} given name

Call Result

and r etur ns the value of the fir st one found. If a pr oper ty isn't found then a
blank str ing is r etur ned.

E.g. $FIND{section.name} r etur ns the section name fr om within any child


field of the section

Sames as $FIND{pr oper tyname} but the upwar ds sear ch begins fr om the
field found at the r elative path pr ovided. If no field can be found at the sup-
$FIND{path,-
plied path then a blank str ing is r etur ned.
pr oper tyname}

e.g. $FIND{../../someField,label}

$FLOAT
TBA

$FORM

Call Result

$FORM(NAME) Retur ns the for m's values of the called ar gument

$FORM(DESCRIPTION)

$FORM(RELEASE)

$FORM(TEMPLATE)

$GENERATION

Call Result

Advanced Script ing - 478 -


$GENERATION(TECHNOLOGY)

$GENERATION(FLAVOUR)

$GENERATION(FLAVOR)

$GENERATION(TARGET)

$GENERATION(VARIANT)

$GENERATION(UUID)

$GENERATION(TIMESTAMP)

$GENERATION(DATE)

$GENERATION(DEBUG)

$GENERATION(DEBUGSCRIPT
)

$IF
TBA

$INFO

Call Result

$INFO(USER) Retur ns the for m's info values of the called ar guments

$INFO(ACCOUNT)

$INFO(CLIENT)

$INFO(ORGANISATION)

$INFO(ORGANIZATION)

Call Result

$INFO(PROJECT)

$INFO(SERVER)

Advanced Script ing - 479 -


$INFO(ENVIRONMENT)

$LIST

Call Retur ns

$LIST{CONTAINS,list,value,sepa r ator } Retur ns tr ue if the list contains the value

$LIST{INDEXOF,list,value,separ ator } Retur ns the 0 based index of the value within the list

$LIST{ITEMAT,list,index,separ at or } Retur ns the item at 0 based index position within the list

$LIST{SIZE,list,separ ator } Retur ns the size of the list

$LOCALE

Call Result

$LOCALE(LANGUAGE) Retur ns the for m's locale values of the called ar guments

$INFO(COUNTRY)

$INFO(CODE)

$LOOKUP
TBA

$M ATH

Call Result

$MATH{PX,value} Conver ts the value to pixels and str ips the units

$MATH{IN,value} Conver ts the value to inches and str ips the units

$MATH{MM,value} Conver ts the value to millimetr es and str ips the units

$MATH{MAX,- Retur ns the lar gest value - if the fir st value has units then the r esult is r etur ned
value,...} in those units

Advanced Script ing - 480 -


$MATH{MIN,- Retur ns the smallest value - if the fir st value has units then the r esult is
value,...} r etur ned in those units

$MATH{SUM,- Retur ns the sum of the supplied values - if the fir st value has units then the r es-
value,...} ult is r etur ned in those units

$MATH{PRODUCT,- Retur ns the pr oduct of the supplied values (multiplies them together ) - if the
value,...} fir st value has units then the r esult is r etur ned in those units

$MATH{HALF,- Retur ns half of the supplied value - if the value has units then the r esult is
value} r etur ned in those units

$MATH{TWICE,-
Retur ns twice of the supplied value - if the value has units then
value}

Call Result

the r esult is r etur ned in those units

$MATH{MARGIN,value} Conver ts a composer mar gin to a technology suppor ted mar gin

$RULE

Call Result

$RULE{TRIGGER,r ulename) Retur ns the tr igger width in pixels for the given r ule

$SEQUENCE

Call Result

$SEQUENCE{Sequence ar gument, Sequence ar gument1, ......, RESET) Resets the named sequences.

$STRING

Call Result

$STRING{CONTAINS,value,patt
Retur ns tr ue if the value contains the patter n as a substr ing
er n}

Advanced Script ing - 481 -


$STRING{INDEXOF,value,patter Retur ns the 0 based index of the patter n within the value or -1 if
n} not found.

$TEST

Call Result

$TEST{BLANK,value} Retur ns tr ue if the supplied value is blank

$TEST{NOTBLANK,value} Retur ns tr ue if the supplied value is not blank

$TEST{EQUALS,value1,value2} Retur ns tr ue if value1 and value2 ar e the same

$TEST{NOTEQUALS,value1,valu
Retur ns tr ue if the value1 and value2 ar e not the same
e2}

$TEST{NOT,value} Retur ns tr ue if value is the liter al false other wise r etur ns false

$TEST{AND,value1,value2} Retur ns tr ue if value1 and value2 ar e both the liter al tr ue

$TEST{OR,value1,value2} Retur ns tr ue if value1 or value2 ar e the liter al tr ue

$TEST{LESSTHAN,value1,value Retur ns tr ue if value1 as a number is less than value 2 as a num-


2} ber

$TEST{GREATERTHAN,value1,v Retur ns tr ue if value1 as a number is gr eater than value 2 as a


alue2} number

Advanced Script ing - 482 -


Optimizing Performance
Composer | Form Builder | v4.3 & Higher

Overview
Forms in Composer are smart : t hey are dynamic and user act ions in filling out t he forms t rigger event s and change
t he form on-t he-fly as users ent er dat a. For example, a user can click on a checkbox and a number of fields become
visible as a result . Or users fill in numerical values in a t able column and a t ot al is displayed in a field at t he foot of
t he t able.
Many forms in t he real world elicit a great amount of informat ion from t he end users, wit h t he consequence t hat a
number of event s ripple t hrough t he form as users complet e ent ry int o individual fields.
Why are t here so many event s on t hese smart forms? They are t here t o:
ensure t hat , as a default , all t he dat a and all t he dependencies on t he form operat e wit h complet e int egrit y all of
t he t ime
ensure t hat all validat ion rules and script s have occurred
ensure t hat any changes made at any t ime during t he filling out process t o any fields in t he form affect all object s
on t he form
This design approach means t hat calculat ions, script s and dependencies produce predict able and consist ent res-
ult s and t hat t he dat a present ed t o end users is accurat e and up-t o-dat e. These t ake place wit hout t he form's
designer doing any furt her work. But , as is oft en t he case wit h a "one size fit s all" approach, t here are t rade offs in
large, complex forms:
an increase in generat ion t ime for very large forms an increase in t he rendering t ime of t he form
increased lag for t he user t o move from one field t o anot her in such forms
increased lag when some act ion t akes place, such as navigat ing t hrough t he form, submit t ing, saving it .

Form Generation
A full discussion of t his t opic is beyond t he scope of t his guide. The form's HTML is not st at ically st ored in Trans-
act ion Manager and just downloaded t o t he end user. Inst ead, a number of processes t ake place:
t he form's dependencies are inspect ed, result ing in a hierarchy of t riggering and firing t he form is prepopulat ed
wit h dat a while being served
server-side processes t o t rack t he form from it s being served t o it s out come (submission, saving, abandonment ,
anonymous sharing or progression t hrough a collaborat ion)
and even all t he web server processes t o deliver all t he asset s of t he form t o t he user's device

Opt imizing Performance - 483 -


Form Rendering
This is t he t ime it t akes for t he device t o render t he form in eit her t he browser or in t he Mobile App. The form is
served t o eit her as HTML5 code int erspersed wit h JavaScript . The JavaScript code is not merely t he script s you have
placed int o some of t he form's fields t hrough t he Script Edit or: t here is also much code t o int egrat e t he form and
your script s t oget her, as well as t he funct ioning of t he ot her form widget s. All t hese script s and HTML have t o load
and init iat e on t he device. Most mobile devices are slower t han deskt op devices — alt hough t hey are get t ing fast er.

Be aware t hat t he whole form downloads t o t he device, not just t he visible or edit able part s of t he form. The same
is t rue for all t he prepolut at ion dat a, all of t he form's aut osuggest dat a (as dist inct from such dat a provided by an
ext ernal dynamic dat a service) and even mobile device responsive element s normally not visible on t he deskt op. All
of t hese affect t he rendering t imes, but t he good news is t hat t he increase in processing speeds of devices, and t he
huge performance increases in modern browsers, rendering t imes are no longer t he problem t hey once were.
In t he end, you must always t ake t he user experience int o account , and t his may lead you t o simplify your forms
as a general rule.

Speeding up Generation and Rendering


It follows t hat t hese t wo, generat ion and rendering, depend most ly on t he complexit y of t he form it self. A couple
of set t ings in Composer have a minor influence on form generat ion (as we will see below). The form rendering
t imes for t he most part on t he amount of HTML and JavaScript code t o be processed. Opt imizat ion of rendering
really means simplificat ion of t he form — just as wit h any ot her web page.

Optimization Strategies
Composer now has t ools t o improve t he performance of forms while t hey are in use. Most forms of medium t o low
complexit y require no opt imizat ion at all and run fast enough for users t o have no issues. This may not be t he case
wit h very complex forms wit h a great deal of dependencies.
There are a number of possible st rat egies for t uning complex forms t o run fast er:
Tuning t he dependencies
Tuning t he t riggers t hat make script s fire Tuning t he event s t hat make script s fire
Tuning t he observers wat ching form object s and event s Use of t he Business Rules widget s on t he form

Tuning Dependencies
Inspect ing Dependencies
The Edit Propert ies dialog now allows you t o inspect a form element 's dependencies t hrough "Edit Propert ies -
> Dependencies t ab". The t ab has 2 panels:

M y Rule Dependencies

which list s t he form element s on which depend t his element 's t he Rules or Script s. In ot her words, t his panel
shows t he rules, script s t hat fire and affect t his element 's value upon t he change of any of t he element s list ed.

Opt imizing Performance - 484 -


Triggered Rules

Opt imizing Performance - 485 -


which list s t he rules or script s which fire upon t his element 's change.

Here is an ext reme case, where we have deliberat ely creat ed so many dependencies on t he form t hat moving from
field t o field t akes more t han 10 seconds each t ime. The form has 30 wizard-st yle pages. Each page has a st at ic
t ables of 10 rows, 3 columns each. Each row has a calculat ion, in t he 3rd column, of column 1 mult iplied by column
2. At t he bot t om of each page is a subt ot al of all 10 calculat ion fields. The last page of t he form is a t ot al of all 30 sub-
t ot als.
This means t hat t he t ot al on t he last page is t riggered by any changes in some 91 t imes 30 fields, i.e. t he field is
t riggered by changes t o any one of 2,730 fields. Let us focus on just t he subt ot als t riggering t he t ot al:

Opt imizing Performance - 486 -


Opt imizing Performance - 487 -
Dynam ic vs St at ic Dependencies

Opt imizing Performance - 488 -


When you writ e a script in t he script edit or of t he Edit Propert ies dialog, you reference a form object using a Para-
meter . This creat es a dependency, which duly appears in t he My Rule Dependencies panel of t he Dependencies
t ab.
The default set t ing for t hese is t o have a Dynamic t rigger t ype, as indicat ed by t he presence of t he light ning arrow
in t he left -hand column of t he Dependencies t able of t he Script Edit or:

A dynamic t rigger t ype means t hat t he script will fire whenever t he field referenced changes. That means t he field
is always wat ched and t he t rigger will always fire on any change t o t he field.

Opt imizing Performance - 489 -


Changing t he t rigger t ype t o St at ic means t hat t he widget will no longer be observed. So, if we change all t he
dependencies in t he above example t o t he St at ic t rigger t ype, t he rule will not fire. That we do want t he rule t o fire
somet imes goes wit hout saying, because we want t he t ot al t o be t he correct value. Which brings us t o t he Trigger
Condit ions t ab in t he Script Edit or.

Opt imizing Performance - 490 -


Trigger Condit ions

Opt imizing Performance - 491 -


Here, t he widget s are only read when part icular form event s occur. We can specify t he event s in t he Triggering
Condit ions t ab of t he Script Edit or:

Opt imizing Performance - 492 -


But t he problem here is t hat all t he paramet ers list ed in t he Paramet er Changes list have dynamic t riggers. That
means t he set t ings below t he list will are not reduce t he firing event s by very much: t he rule will fire on t he Para-
met er Changes list ed. So, as a demo, we have changed all t he paramet ers but one t o st at ic, and set t hem t o fire
only when t he user moves t o t he wizard page wit h t he field cont aining t he script or just prior t o submission. Of
course, in pract ice, you would most likely, in t his case, t urn all t he t rigger t ypes t o st at ic t o give you complet e con-
t rol over t he script firing by eliminat ing t he dynamic t riggers.

Opt imizing Performance - 493 -


And, t he reverse also applies: you can t hen set t he t riggers from t he form element wit h t he script t o t he widget s
dependent on t he script (t he widget s on t he right hand side of t he diagram wit h t he form event ) t o also be st at ic
t hrough t he Script Edit or of each of t hese widget s.
You can see t hat we can now, by going t hrough t he t riggering condit ions t hroughout t he form, reduce t he t riggers
from t he original 2,730 fields t o a much smaller number and subst ant ially improve t he performance on t his form.
You might want t o leave a paramet er or t wo st ill wit h dynamic t riggers: t hese could be a checkbox or but t on,
whose act ion is t o fire t he script . In earlier releases of Composer, t here were some work arounds t o cont rol t he fir-
ing of script s. These included having hidden a checkboxes (t o act as a Boolean t o make t he script fire) or using
blocks as a paramet er reference (in t he absence of st at ic t riggering). These are now deprecat ed.

Trigger at Init ializat ion


You can t urn off t his opt ion and t he form will render in t he browser. This would only make rendering percept ively
fast er if t he script is comput e int ensive. It is not wort h doing for t he majorit y of script s. But not e t hat t he set t ing is
not global: it applies only t o t his script . Also, make sure t hat you are not creat ing issues t hat by not running t his
script .

Opt imizing Performance - 494 -


Phase Changes
The event s list ed in t he Triggering Condit ions t ab are self-explanat ory. Phase Changes may not be.
A phase is a non-localized variable t hat holds some value and which can be observed for what ever purpose. It is
non-localized because you need not reference it t hrough eit her a relat ive or absolut e pat h.
Here follow some brief not es on creat ing a phase.
Pick up a "Phase" Widget from t he palet t e (use Search t o find it ) and drop it ont o "Nut s & Bolt s -> Phases" in t he
St ruct ure Panel. In t he result ing wizard, it is usual t o check t he "Exclude from Layout Manager" as t he widget nor-
mally does not appear on t he form.
The Phase is configured in t he Dat a t ab.

Put any script s required in t he Rules t ab, as per usual. In ot her script s, you can reference t he phase by
point ing t o t he st ruct ure widget as a Paramet er or by src.get PhaseValue("phase name") as before.
Make sure you check t he Phase Change checkbox in t he Triggering Condit ions t ab of t he script s you want t o fire
on phase changes.

Addit ional Event s


You can also t ype in t he names of ot her event s. The standardeventsarelistedhereinthisguide.

Opt imizing Performance - 495 -


Caveat s
As you can see, t hese t ools are powerful and require no programming as such.
However, as we have mentioned above, aft er opt imizat ion, you must t est t he form t o see if t he script s yield t he
correct answers now t hat changes t o field values no longer ripple t hrough t he ent ire form aut omat ically. There are
also ot her undesired effect s t hat you must guard against , such as prevent ing validat ion rules from firing and t here-
fore let t ing invalid dat a t hrough t o submission.

Opt imizing Performance - 496 -


Business Rules
Composer | Form Builder | v4.3 & Higher

The Rules Propert ies sect ion of t his manual describes how you add script ing and logic t o individual widget s.
Though some widget s, like blocks, can pass on t heir rules t o t heir children, t his met hodology does not allow rules
t o be assigned t o several widget s, especially t hose not relat ed or which do not share inherit ances. What if t he wid-
get s are scat t ered t hroughout t he form and cannot easily be wrapped by some block in t he st ruct ure panel
wit hout including ot her widget s t hat you do not want t o similarly inherit propert ies? This problem cannot be
solved t hrough "Edit Propert ies" individually for all t he widget s concerned.
The "Business Rule" and "Mandat ory" field t ypes solve t his problem by being cent ral cont ainers for rules and
script s. Ot her widget s can now share, for example, a script , by point ing t o a business rule widget in t he t heir "Edit
Propert ies" dialog.
There are t hree t ypes of Business Rule field t ypes:

GeneralPurpose
These cont ain t he logic t hat cont rol visibilit y, edit abilit y, dat a clearing, event firing, t riggers and event list ening.

Error
These generat e messages and also prevent submission of t he form

Warnings
These also generat e messages but do not prevent form submission.

1. Mandatory CheckboxBlock

Allows you t o enforce t he act ivat ion of at least one checkbox in t he block: leaving all of t he boxes unchecked will
prevent submission of t he form.

1. MandatoryBlock

You use t his t o enforce t hat at least one of t he cont ained form element s are given values.
These rules widget s are int ended for advanced users only, t hough many of t heir feat ures are no harder t o imple-
ment t han edit ing some of t he propert ies in t he "Rules" t ab for each widget . They are a powerful t ool for opt im-
izing response t imes of complex forms

General Purpose
Configurat ion Set t ings
The General Purpose Business Rule widget 's Rule t ab holds t he following:

Business Rules - 497 -


Visibilit y Rule
Not e t he difference bet ween AlwaysVisible , N everVisible and Script or Rule Based.
That is: t he value of an invisible field being observed by t he Business Rule could be affect ing t he out come of t he
rule because t he field has not been cleared.
See also ClearingPolicies.

Visibilit y Policy

Init ial Visibilit y


Visibilit y Dat a Clearing Policy
Business Rule
Eit her "None" or "Script Based"

Addit ional Event LIst eners


See here

Business Rule Trigger


Run Always | Run only when visible.

The Relat ionship Bet ween Nom inat ed Widget s and t he Rule
There are t wo broad ways for a General Purpose Business Rule widget t o fire:

Business Rules - 498 -


The default
where t he rule fires every t ime one of t he nominat ed widget s changes. In ot her words, t he rule's list ener is forever
observing t hese widget s for change and will fire every t ime one of t hese changes. This can slow t he form down if
t he scale of all t hese observed widget s is large enough.

Rule fires on change of any observed widget ; as a result , t he rule could fire m any
t im es and m ake t he form laggy

1. Addit ional Event List eners

Business Rules - 499 -


Here, t he widget s linked t o t he rule can asynchronously change, but t he rule will only fire when a form-level event
is det ect ed by t he list ener. The form event s are list ed, comma separat ed in t he "Addit ional Event List eners" field in
t he "Dat a" t ab of t he Business Rule widget .

Rule fires less and only on a nom inat ed form event or event s; result s in a m ore
responsive form .

The above second case result s in t he Rule widget firing less frequent ly t han for t he first case: every change t o any
of t he observed widget s no longer result s in t he rule firing every t ime.

St andard Com poser Event s

Event Description

The fir st event to which a widget can listen when the for m star ts. This event sets
init
the initial data-based state.

Runs immediately after init. Used to r un code when ever ything is in the initialized
postInit
state.

The only event that does not call ever ything listening to it. It will look at the sour ce
change
node and look up the list of fields with a dependency on that field.

Business Rules - 500 -


Will fir e when any phase value changes. evt.evtData is the name of the changed
phase phase. Its new value is fetched with sfc.getPhaseValue("<phaseName>"), wher e
<phaseName> is the name of the affected phase.

evtValidationV This event is fir ed once all cur r ent validation updates have been completed and it
iew is r eady to update the er r or lists, etc.

this event fir es immediately befor e the for m is submitted (although ther e is an
preSubmit issue that pr eSubmit is not cur r ently fir ed when using a for m in Mobile App but
this should be r esolved in a futur e r elease).

Error
Error Business Rules will, on error, prevent t he user from submit t ing t he form.
The rule has more set t ings t han t he General Purpose business rule propert ies. The visibilit y rules in part icular can
cause confusion if not properly underst ood.

Focus Field Target


The rule fires when t he user focus becomes t he nominat ed field and whenever t he value of t he field changes. The
rule can be set t o "Run Only When Visible" (which is t he default set t ing) or "Run Always". The nominat ed field will
display t he warning background colour while t he rule is in error.

Clearing Policies
See Privacy on t he privacy considerat ions t hat dict at e dat a clearing policies. Not e t he dist inct ion bet ween
"ClearHiddenDataonSubmit" and "ClearDataWhenHidden".
The dist inct ion may seem t rivial if we consider only t he form's dat a at t he point of user submission. However,
when one of form's Business Error Rules is dependent on a field t hat happens t o be hidden, and t hat field is caus-
ing t he rule t o be in error, t hat hidden field would prevent t he user from submit t ing t he form, even t hough all t he
visible dat a is suit able for submission.
So, t his is t he reason for t he dist inct ion bet ween "Visibilit y Dat a Clearing Policy" and "Edit able Clearing Policy" in
t he rule's propert ies.

Business Rules - 501 -


Displaying Errors
The default display of form errors is t he st andard foot er of t he t ypical t emplat e. The same st ruct ure is also avail-
able wit h t he Error List Predefined Block. The errors are list ed in a clickable list ; double-clicking on a list it em t akes
users t o t he form element needing recit ificat ion. You also can writ e t he explanat ory t ext displayed as well as t he
error messages t hemselves. You t herefore have t he t ools t o assist users t hough t he process and, t herefore, min-
imise t he rat e of form complet ion failures.
The Form can display bot h errors and warnings t hrough t he ErrorandWarningPredefinedBlock. Users can scroll
t hrough wit her t he errors or t he warnings using next and previous links.
The ErrorSelectionBlock displays bot h of t hese blocks, one on t op of t he ot her.
The Edit Propert ies -> Rules t ab of t he Error Business Rule can also be set t o displaying an error dialog: a popup
wit h t he t ext of t he Warning Message of t he Rules t ab. The same also can be set for warnings.
The use of t hese various blocks gives you some flexibilit y in how you want problems wit h t he form dat a t o be
explained t o users and what t o do t o remedy t hese issues.

Warning
These rules behave t he same as t he Error Business Rules, except t hat warnings do not prevent t he user from sub-
mit t ing t he form. We have already discussed t he display of warnings above.

Mandatory Checkbox Block


This mandat ory block enforces t he rule t hat it s cont aining checkboxes must have at least one member select ed
before t he form can successfully be submit t ed.

Mandatory Block
This mandat ory block enforces t he rule t hat it s cont aining members and groups must have at least one member
select ed before t he form can successfully be submit t ed.
There are, however, a subt le differences bet ween using t his widget or using the button assistant and checking
the"Mandatory"box in t he creat ion wizard for t he assist ant :
The Mandat ory Block by default leaves all it s cont ained but t ons or checkboxes unchecked or wit hout value. If end
users t ry t o submit t he form wit h all t hese boxes unselect ed or unfilled, t he error message for t he block is dis-
played and all t he cont ained element s get red out lines.
Checking t he "Mandat ory" box of t he but t on assist ant wizard means t hat at least one of t he but t ons (t he first by
default ) is select ed at form init ializat ion and t here is no way t o go t o an all-unselect ed condit ion.
Several checkbox or but t ons blocks can be cont ained in t he mandat ory block, all of t hem unchecked at ini-
t ializat ion, and yet only one but t on of one group must be select ed before submission and all t he ot her but t ons in
t he ot her groups can remain unchecked.

Business Rules - 502 -


Library Advanced Features
Composer | Form Builder | v4.3 & Higher

Overview
As we have already seen above in TheHierarchyandEnvironment , an Account has Libraries and Organizat ions
under it . Also, t here are also special libraries called "Releases" and "Service Packs" which we will call here "Com-
pat ibilit y Set t ings"; but t hese are assigned t o Organizat ions. Also, t he Organizat ion it self has it s own library ele-
ment s at t ached t o it self. Here are t he different Libraries and t heir locat ions:

Libr ar y Type Location or Association

Compatibility Live above the Wor kplace str uctur e. Each Or ganization is asso-
Releases
Settings ciated with a par ticular r elease.

Live above the Wor kplace str uctur e. Each Or ganization may be
associated with par ticular ser vice packs.
Ser vice Packs A Ser vice Pack is also r elevant to a par ticular r elease.
Any Libr ar y that is neither a Release or Ser vice Pack is ter med
an "or dinar y" Libr ar y.

Style Packs ar e Libr ar ies packaged by Avoka Technologies.


Or dinar y Native Libr ar ies Other wise, they ar e or dinar y Libr ar ies.
Libr ar ies and Style Packs "Native" her e means that the Libr ar ies live in the Account, and
ar e ther efor e alr eady shar ed with the

Libr ar y Type Location or Association

Account

Shar ed Libr ar ies


These ar e or dinar y Libr ar ies that live in other Accounts and
and Shar ed Style
which have been explicitly shar ed with this Account.
Packs

Lives inside the Or ganization, not — unlike the other Libr ar -


The Or gan-
ies in the Account — as a separ ate Libr ar y entity under the
ization's
Account.
Inter nal
The elements in the Or ganization's Inter nal Libr ar y affect all
Libr ar y
Pr ojects in the Or ganization r egar dless of other settings.

Library Advanced Feat ures - 503 -


Composer Account Administration
If you wish t o carry out work on Libraries, you should consult t he "Transact Composer Account Administ rat ion
Guide". This is a handy reference on where t o go in t he Composer user int erface in order t o carry out such import -
ant Library-relat ed t asks as:
Allocat ing users at t he Organizat ion and Project levels Creat ing and import ing libraries
Inspect ing which libraries are available t o Organizat ions Assigning Libraries from ot her Account s t o an Organ-
izat ion
Maint aining Libraries and t heir cont ent s (st yle sheet s, t emplat es, cust om t ypes and propert y set s) Ongoing main-
t enance
Maint aining compat ibilit y t hrough revision maint enance of Organizat ions
The Administ rat ion Guide gives a number of t asks t o be complet ed in order t o make Libraries and part icular Tem-
plat es available t o Project users. The rest of t his t opic below discusses t he t heory on how t he st ack of inherit ance
works and what it s effect s are. The administ rat ion t asks and t he t heory work t oget her and bot h need t o be under-
st ood.

How Libraries Relate to Organizations and Projects


There are 2 propert ies in t he behavior of libraries t hat need t o be underst ood here:
Visibilit y and

Inherit ance

Visibilit y is t he easier t o underst and. Inherit ance t hen is a consequence of visibilit y.


Inherit ance is ext remely import ant . It det ermines what t emplat es are available at t he form level and t he st yle of
each t emplat e at t he Project level. Please refer t o Inheritance Within Forms. especially t he diagram showing how
t he inherit ence of library component s t hen affect t he behavior of t he form's element s.

Visibility
Ordinary Libraries at t he Account Level
Ordinary Libraries — t hose not part of t he Compat ibilit y libraries — are visible at t he Account Level. The rules for
visibilit y for ordinary Libraries operat e at t he Account level and are:
Libraries t hat are live in an Account are visible t o all Organizat ions in t he Account . This includes Libraries import ed
int o an Account via a package. ("Workspace -> <Account > -> Import Library or Organizat ion link") The Libraries of
an Account can be explicit ly shared (or not shared) wit h ot her Account s. (Go t o "Workspace
-> <Account > -> <Library> -> Administ rat ion t ab -> Library Share sub t ab".)
Visibilit y means t hat t he component s of t he Library, wit ht he except ion oft emplat es, are shared by all Organ-
izat ions and t heir children in t he Account . Here, we do not include Administ rat ion (t he configurat ion set t ings for vis-
ibilit y for users and Organizat ions) and Problems (a log of error messages for t he Library).

Library Advanced Feat ures - 504 -


Com pat ibilit y Libraries
Compat ibilit y Libraries cont ain Releases and Service Packs; t hese are visible at t he Organizat ion Level. They are
allocat ed at t he Organizat ion level in t he wizard when a new Organizat ion is creat ed ("Workspace -> Creat e New
Organizat ion link"). Compat ibilit y can be changed lat er (via "Workspace -> Organizat ion -> Change Release act ion
but t on"), meaning t hat t he Organizat ion will point t o a different set of compat ibilit y Libraries.
So, t he consequence is t hat different Organizat ions in t he same Account can be compat ible wit h different Com-
poser versions and service packs.

The Organizat ion's Int ernal Library


In t erms of it s t ype of cont ent s, t he int ernal Library is pret t y much an Ordinary Library. But in t erms of it s effect , it
is t he most powerful of all t he Libraries because it lies above t he Search Pat h set t ings of t he Organizat ion.

Search Pat h Inclusion at Organizat ion Level


When an Account is visible t o an Account , eit her by virt ue of belonging t o t he Account or by being shared, t he con-
t ent s of t he Library st ill doesn't affect t he Organizat ion unt il it has been included in t he Organizat ion's Share Pat h.
You specify t he share pat h in "Workspace -> <Organizat ion> -> Updat e Organizat ion Det ails act ion but t on ->
second screen of t he result ant wizard".
N ot e: t he choice of Libraries for search pat h inclusion is only bet ween Libraries nat ive t o, or shared wit h, t he
Account .

Tem plat es
Templat e availabilit y operat es at t he Project level. Only Templat es from visible, search pat h-included Libraries can
marked "Available" t o a Project .

Visibilit y Sum m ary


N ot e: Visibilit y has t o cascade down from t he Account Level. Thus, for a Templat e t o be allowed for a project , it s
Library has t o be shared at t he Account Level and put int o t he Search Pat h at t he Organizat ion Level.

Level Object Location Method

Or dinar y Libr ar y (Templates,


Account Stylesheets, Custom Types, Within Account Always Visible
Resour ces)

Shar ed with other


accounts:
"Wor kspace ->
In another Account <Account>
-> <Libr ar y> -> Admin-
istr ation tab -> Libr ar y
Shar e sub tab"

Library Advanced Feat ures - 505 -


In wizar d when cr eating
account
"Wor kspace ->
<Account>
-> Cr eate New Or gan-
Assigned to Or gan- ization link"
Compatibility Libr ar ies
Or ganization ization thr ough
(Releases and Ser vice Packs)
"Release Settings" or when updating Or gan-
ization
"Wor kspace ->
<Account>
-> <Or ganization ->
Change Release action

Level Object Location Method

button"

Or dinar y
Anywher e in the In wizar d when cr eating
Libr ar y

(Templates,
envir onment. account
Stylesheets,

Custom
Must be shar ed with the "Wor kspace -> <Account>
Types,

Resour ces) Account and included in -> Cr eate New

the Sear ch Path Or ganization link" and 2nd

scr een of the r esulting

wizar d

or when updating

Or ganization

"Wor kspace -> <Account>

-> <Or ganization ->

Update Or ganization

Details action button", 2nd

Library Advanced Feat ures - 506 -


scr een of the r esulting

wizar d.

Is automatically allocated to
Examine and populate this libr ar y
ever y Pr oject in the Or gan-
thr ough "Wor kspace
Inter nal ization.
-> <Account> ->
Libr ar y Affects all Pr ojects in the
<Or ganization> -> the tabs
Or ganization and its settings
Stylesheets to Resour ces"
over ide all other settings.

Allow or Block the template fr om being


used in new for ms in the pr oject.
Anywher e in the envir onment. "Wor kspace -> <Account>
Pr oject Templates Containing Libr ar y must be -> <Or ganization> ->
shar ed with the Or ganization <Pr oject> -> Block or Allow this tem-
plate to be used in new for ms in this
Pr oject action button".

Inheritance
The Cascade
St ylesheet s and Cust om Object s now live in t he Libraries, not in Templat es. All Organizat ions now inherit all t he
St ylesheet s, Cust om Object s and Resources cont ained in t he Compat ibilit y Libraries.
This means t hat all users have access t o all t he object s in a release and t hat all t he release's widget s will appear in
t he Form Edit or's palet t e. (In fact , if you have t he access, you can open a release and you will find t hat t he widget s
in t he "Cust om Types" t ab, t hough you must check "Include non-edit able t ypes" t o see t hem.)
So, t here is a cascade of inherit ance at t he Project Level. which is where t he Library visibilit y set t ings mat t er. Forms
wit hin t he project inherit t he Library visibilit y of t heir Project . The form inherit s all t he St ylesheet s, Cust om Object s
and Resource, plus all of t he allowed Templat es, of all t he visible Libraries.

Library Advanced Feat ures - 507 -


Search Pat h Order
So, what happens when t here is a conflict , for example st ylesheet s in different libraries wit h t he same name? This is
resolved as follows, moving t hrough t he st ack of libraries from t he least significant t o number 1 in t he Search Order
and t hen t o t he Int ernal Library:
Compat ibilit y Library -> Search Order Library n -> ......... -> Search Order Library 1 -> Organizat ion's Int ernal Library
The Int ernal Library, t herefore, lies at t he t op of t he st ack.
You set t he Search Order in "Workspace -> <Organizat ion> -> Updat e Organizat ion Det ails act ion but t on -> second
screen of t he result ant wizard":

Do not e t hat where n > 2, t he search order for t he ot her lesser significance libraries may st ill mat t er because t he
element at t he t op of t he st ack may not specify every paramet er and t hose t hat are not specified will be populat ed
according t o t he order of values encount ered in t he st ack.

Library Advanced Feat ures - 508 -


Custom Types
Locat ion: Workspace -> <Organizat ion> -> Cust om Types t ab or
Locat ion: Workspace -> <Library> -> Cust om Types t ab
Cust om Types refers t o all t he members of t he Widget Palet t e of t he Form Designer. There are 2 t ypes of Cust om
Types:
Non-editable CustomTypes
t he st andard members of t he Widget Palet t e.
Edit able Cust om Types which are your saved t ypes.

Localizat ion Keys


used for t he Int ernat ionalizat ion of forms. We will discuss t his elsewhereinthis guide.

Non-edit able

To list t he non-edit able Cust om Types visible for a Library (eit her Ordinary or int ernal t o an Organizat ion), go t o
t he Cust om Types t ab of t he Library or Organizat ion. Set t he "Filt er By Source" t o "All".
There are no Act ion it ems.
All t he non-edit able Cust om Types have been inheritedfromthestack, so t he bulk of t hem come from t he Release
and Service Pack.

Library Advanced Feat ures - 509 -


Edit able

Library Advanced Feat ures - 510 -


There is only one way t o creat e a Cust om Type: by using "Save As Cust om Type/ Block" from a form's St ruct ure
Panel. The newly-saved t ype will t hen appear in t he Int ernal Library of t he form's cont aining Organizat ion. It is not
possible, using t he User Int erface of t he Form Designer, t o creat e a Cust om Type in one of t he Account 's Ordinary
Libraries.

Because of t he posit ion of t he Organizat ion's Int ernal Library in t he inherit ance st ack, your Cust om Types will be
available t o all Project s in t he Organizat ion. However, you are not able t o export t hese t o ot her Organizat ions in
t he Account or t o ot her Account s. You can, t hough, export t he whole Organizat ion as a package and import it int o
anot her Account and t he Cust om Types in t he import ed Organizat ion's Int ernal Library will also come across.
You can open t he edit or on edit able t ypes:

Library Advanced Feat ures - 511 -


In t he Set Propert y Values t ab, you can edit t he values of all t he st ruct ure element s cont ained in t he Cust om Type.
Inherit ed values from t he st ack are marked wit h an ast erisk ("* ").

Library Advanced Feat ures - 512 -


The Creat e Pat t ern dropdown menu in t he Edit Propert y Definit ion dialog defines whet her:
The propert y appears or does not appear in t he wizard when t he cust om Type is dropped ont o t he st ruct ure
panel of forms
and if it does appear in t he wizard. whet her t he propert y is marked mandat ory or not .] Here are examples of t he
ot her t abs in t he edit or:

Not e t hat t he XML Source updat es on-t he-fly as you add or subt ract new object s int o t he st ruct ure or edit

Library Advanced Feat ures - 513 -


at t ribut es and propert y definit ions.

St yle Packs
Cust om Types play a major role in St yle Packs. The Cust om Field Type, for Organizat ions where a St yle Pack is part
of t he st ack, will have a rich select ion of prebuilt widget s.
The Maguire St yle Pack is a good example of t his. It has a number of form st ruct ures not covered by t he usual
Nut s & Bolt s set t ings.

Besides t hese cust om widget s in t he Form Designer's Palet t e, such a st yle pack also has it s own set of St ylesheet s,
Templat es and Resources t o supplement t he Release. Typically, a release has a very large number of St ylesheet s
because t he set has t o cover pract ically every t ime of form element , while a St yle Pack's set is very much smaller
and far less general in scope.

Library Advanced Feat ures - 514 -


Inheritance Within Forms
Overview
As above, forms inherit t heir Library element s (St ylesheet s, Cust om Types, Templat es, Resources) t hrough t he
st ack. So, t he library element s available t o t he form has already been est ablished. This includes st ylesheet s t hat
you have modified t o change color-schemes and ot her component s of t he general look of your forms.

But t hen, inherit ance now occurs t hrough t he form's st ruct ure:
The set t ings of t he various St yle Choosers
Set t ings of parent form element s and t heir children (blocks and t heir cont ent s, for example) The use of Named
St yles (or even manual over-rides

Widget Hierarchy
As we have already seen in CustomTypes, some widget s are blocks of widget s and and children blocks. The prop-
ert ies of t he simplest element s of t hese compounds are t he ones t o t ake effect . See t he next t opic immediat ely
below.

Library Advanced Feat ures - 515 -


Inherit ance in blocks
Inherit ance in blocks is similar t o inherit ance for individual widget s, but it is complicat ed by t he fact t hat blocks con-
t ain cont ent . When you drop a block ont o a form, it s cont ent is also inherit ed, and can also be overridden, just like
regular inherit ed object s. So you can simply double click on any of t he child object s cont ained in a block, and
modify t heir propert ies.
However, t here are some import ant differences bet ween inherit ed children and regular children. For example:
You cannot delet e an inherit ed child (alt hough you can change it s visiblit y t o "Never visible", which achieves a sim-
ilar result )
You cannot re-order inherit ed children
You cannot insert anot her object bet ween t wo inherit ed children (alt hough you can append an object at t he end
of t he inherit ed children)
In order t o different iat e bet ween inherit ed children and regular children in t he t ree, inherit ed children are shown
in yellow. This helps you t o ident ify why cert ain operat ions (such as right click->Delet e) are disabled for some
object s.
If you make a change t o a propert y of an inherit ed child object , only t hat part icular propert y change is st ored in
your form (or overridden); all ot her propert y changes are obt ained from t he shared block. So if t he definit ion of t he
block is changed, your form will aut omat ically inherit all of t he changes, except t he specific propert ies t hat you've
overridden. This makes maint enance of your form library very simple - you can change blocks in one place, and
have t he changes aut omat ically reflect ed in all your forms.

St art er Cont ent


Somet imes when you drag cert ain t ypes of object s such as sect ions, t ables or even complet e forms, you will see a
checkbox called "Include St art er Cont ent ". St art er Cont ent appears similar t o inherit ed cont ent , but t here are
some import ant differences.
St art er Cont ent is not really part of t he block it self - it 's just addit ional children t hat are opt ionally added t o make
your life easier and quicker. This is part ly t o save you t ime, and part ly t o show what t ype of cont ent is appropriat e
for t his t ype of object . There is no difference bet ween t he st art er cont ent , and cont ent t hat you may have manu-
ally added yourself.
Therefore, you can modify, delet e or move st art er cont ent just like you can any ot her object - none of t he rest ric-
t ions of inherit ed cont ent apply.

Resources
The Resources t ab in a Library is where you st ore uploaded files. In t heory you can upload any kind of file. But , t he
User Int erface of Composer really only allows you t o ut ilize only graphics files in a form.
Ot her file t ypes commonly found in library resources are JavaScript (.js) and Cascading St ylesheet s (.css). Please
refer t o LibraryAdvancedFeatures on how t o ut ilize t hese in forms.
Ot her file t ypes st ored in t he Resources t ab are XML (for dat a definit ions), XFA files, .zip files, backups and ot hers.
These are current ly beyond t he scope of t his guide.

Library Advanced Feat ures - 516 -


Cust om CSS
Composer uses an abst ract ed st ylesheet mechanism in order t o allow st yling of bot h HTML and PDF forms. For
HTML forms, you can implement addit ional st yling by direct ly specifying t he CSS in t he form definit ion t o achieve
effect s not possible in Composer alone.
N ot e : CSS is rarely developed in isolat ion. It is usually specifically designed t o add st yling t o a set of web pages t hat
are st ruct ured in a part icular way. This has t wo implicat ions:

1. 1. 1. In order t o use CSS effect ively, you must underst and t he way t hat Composer generat es HTML
forms. The easiest way t o do t his is generally t o open a Composer generat ed form in a browser
t hat enables you t o explore t he HTML and CSS, such as Firebug (in Firefox), in Google Chrome or
Web Inspect or in Safari.

1. 1. 1. It is unlikely t hat import ing an exist ing CSS file from, for example, your corporat e web sit e, will
have much value t o be used direct ly in Composer forms (except in t he most t rivial of cases). It is
more likely t hat you will ext ract cert ain element s from your exist ing CSS, rest ruct ure or refact or
t hem, and t hen import t he modified CSS int o Composer.

N ot e : If you are going t o be direct ly implement ing CSS, you must not only underst and CSS in general, but also be
careful t o t est your CSS on mult iple browsers and devices. The advant age of st icking wit h regular Composer st yles
is t hat we have done all t he t est ing t o ensure t hat changes work correct ly in all browsers.

Cust om JavaScript Libraries


Somet imes you may need t o add cust om JavaScript libraries t o your project . This is an advanced t opic, and we gen-
erally recommended t hat you add cust om libraries wit h t he help of Avoka professional services.
You can do t his as follows:
Writ e your JavaScript funct ions using a t ext edit or, and save as a .js file, such as mycode.js.
Drag t he JavaScript Library widget from t he palet t e t o t he Nut s and Bolt s/ JavaScript Libraries node. Specify a name.
Click t he browse but t on t o upload and select your mycode.js file t o be associat ed wit h t his library.

You may now invoke funct ions in mycode.js using t he following synt ax:
library_name.funct ion(a, b);
If you want t wo different versions of t he library for PDF and HTML:
Creat e t wo versions of t he .js file. Ensure t hat each library has t he same funct ions, wit h t he same signat ures, but
wit h appropriat e implement at ions.
Creat e a JavaScript Library object for each .js file, but check t he checkbox t o specify it 's used for only HTML or only
PDF respect ively.
Override t he Library Name propert y (which default s t o t he Field Name by default ) so t hat bot h Libraries have t he
same Library Name.
This way you will be able t o use t he same synt ax t o call funct ions, and it will aut omat ically have t he right version of
t he library in eit her t he HTML or PDF forms.

Library Advanced Feat ures - 517 -


Templates
Overview
We have already seen ademonstrationofthepoweroftemplatesinComposer . Composer 4.0 has an edit or for cre-
at ing new t emplat es which now gives you cont rol over some of t he t emplat e propert ies.
which St yle Choosers will be visible
what opt ions each of t hese choosers has cust om choosers
which form t ypes will be available Cust om form t ypes
Layout of form headers and foot ers
However, t he bulk of t he work of creat ing a t emplat e involves edit ing
st ylesheet s
Using t he Templat e Edit or in conjunct ion wit h edit ing t he XML source of t he t emplat e uploading t he appropriat e
resourcefiles t o be referenced in t he XML source
There are about 120 st ylesheet s and over 300 Cust om Types in t he lat est release, not t o ment ion t hose in fut ure
service packs. Such a workload is t he reason we recommend t hat Avoka Professional Services be engaged t o creat e
t emplat es for you, if what you require is an ext ensive depart ure from t he t emplat es t hat ship wit h t he product .
But , it is also t rue t hat no one would in realit y cont emplat e a complet e re-invent ion of t he wheel: i.e. an overhaul
of every st ylesheet , propert y and paramet er of t he shipping libraries.
That being so, here follows some not es on t he creat ion of t emplat e based on moderat e int ervent ion int o t he
st ylesheet s

St ylesheet M odificat ion


Locat ion of t he St ylesheet M odificat ions
The locat ion of t hese revised st ylesheet s depends on where you want t hese modificat ions t o sit in theLibrary
stack.
Will t hese modificat ions be made available t o A few Project s in an Organizat ion
Or t o all project s wit hin one Organizat ion.
To several Project s in more t han one Organizat ion, all in t he same Account
Or t o all Project s in several Organizat ions, st ill all in t he same Account Or across several Account s
Ult imat ely t he choice is t o have your new st ylesheet s eit her in an int ernal Library for one Organizat ion or t o be in a
separat e library in t he Account and make sure t hat any form you int end t o use t he t emplat e has t he necessary vis-
ibilit y of t he library element s.

Scope of St ylesheet M odificat ions


Just be aware t hat changing st ylesheet s will also affect t he st andard-issue t emplat es. If you want t he t emplat es
shipped wit h a release t o st ill look and work t he same as when t hey were inst alled, you should reserve, or creat e
afresh, an Organizat ion t o hold t he unedit ed st ylesheet s t hat accompanied t hese st andard t emplat es.

Library Advanced Feat ures - 518 -


Edit ing t he Elect ed St ylesheet s
We have already described how to do this. If you want your new st ylesheet t o replace t he st andard issue
st ylesheet in t he st ack, you must give it t he same name as t he original. Aft er you have saved t he new version, you
should be able t o see it in t he "St ylesheet " t ab of t he Library or Organizat ion you have chosen t o cont ain t he mod-
ified version. Not e t he values in t he "Source" column for st ylesheet s wit h t he same name t o check t hat you new ver-
sion exist s. Use t he t emplat e edit or t o view if t he change is expressing it self in t he t emplat e and t hat it is having t he
int ended effect .

Tem plat e Edit or


You access t he Templat e edit or t hrough "Workspace -> <Account > -> <Organizat ion> or <Library> -> Templat es t ab
-> Edit Templat e act ion but t on". The edit or it self has 4 t abs, 3 of which we show immediat ely below:

Library Advanced Feat ures - 519 -


St yle Opt ions t ab
The St yle Cat egories panel of t his t ab allows for configurat ion of t he St yle Chooser dropdowns at t he t op of t he
Form Designer's wireframe.
The Cat egories are, as expect ed t he stylesheetcategories and t he dropdowns are populat ed by each st ylesheet in
t he given cat egory.

For t he Det ails panel of a St ylesheet Cat egory, t he set t ings are:

Detail Explanation

Categor y Cannot be edited. Der ived fr om the Stylesheet categor y chosen for a Stylesheet
Name Chooser dr opdown

The caption appear ing next to the stylesheet chooser . For example, we her e have
UI Label
"For m Str uctur e" for the Str uctur e categor y.

Locked If unchecked, the categor y's chooser appear s in the for m wir efr ames. If checked, the
(checkbox) categor y gets no visible chooser in the wir efr ame.

Default The name of the default stylesheet in the chooser menu. Her e "Str uctur e-Standar d",
Stylesheet giving "Standar d For m" as the default in the dr opdown.

Restr ict If checked the chooser is populated by only a few of the available stylesheets in the cat-
Stylesheets egor y. A textar ea appear s, in which you list the stylesheets used in the r estr icted
(checkbox) menu..

Library Advanced Feat ures - 520 -


Edit ing t he XM L Source of t he Tem plat e
Current ly, t hough t he set of st ylesheet s inherit ed t o t he t emplat e from t he st ack det ermine t he layout and look of
t he t emplat e's cont ent , t he act ual cont ent of t he form is dict at ed by t he form's XML Source. This you can view and
edit in t he XML Source t ab.
Edit ing t his is a job only for t he t echnically compet ent in t his area, ot herwise you could do a lot of damage.
However, for t hose who feel up t o at t empt ing t his, we have included t he TemplateSchema at t he back of t his
guide.

Localization
Overview
Composer's Localizat ion feat ure allows you t o provide your forms in mult iple languages. Earlier in t his guide, you
would have seen amodestdemooflocalizationinaction .
For localizat ion t o be successful, you must have a nat ive-speaker t o edit t he localizat ion resources. For a rough
draft you can use Composer's aut o-t ranslat ion feat ure (which uses t he Google Translat e engine), but if you have
ever used Translat e t o render a foreign language web page, you would know t hat t he result s are less t han con-
vincing.
But once you have obt ained a decent t ranslat ion of a form, you will have no need t o lay out t he form anew for
new support ed languages (or "locales"). Even dropdown menus, and ot her widget s involving choices, will recon-
figure t o reflect t he language change:

Act ivat ing Localizat ion


The t emplat e used for a form must support localizat ion. So, eit her you swit ch t he form's t emplat e t o one t hat does
support localizat ion, or you act ivat e localizat ion support in t he t emplat e.

Library Advanced Feat ures - 521 -


Swit ching Tem plat e
Done in "Workspace -> <Account > -> <Organizat ion> -> <Project > Forms t ab -> <Form> -> Swit ch Form Templat e
but t on". Usually t emplat es wit h localizat ion act ivat ed indicat e t his in t heir t it le in square bracket s.

You t hen can move t o t he next st ep: SettingTarget Locales

Act ivat ing a Tem plat e


You can also act ivat e Localizat ion in an exist ing t emplat e. Go t o "Workspace -> <Account > -> <Library> or
<Organizat ion> -> <Templat es> t ab -> <t emplat e> -> Edit Templat e act ion but t on" which brings up t he
Templateeditor .
In t he edit or, "St yle Opt ions t ab -> Quick St yle Changes Opt ions panel -> Enable Localizat ion Support but t on".

Library Advanced Feat ures - 522 -


Set t ing Target Locales
You have t o configure Localizat ion for each form.
Open t he form in t he Form Designer and go t o t he Localizat ion t ab ("Workspace -> <Account > ->
<Organizat ion> -> <Project > -> <Form> -> Localizat ion t ab").
Click on t he "Set Target Locales" link. This brings up a dialog for select ing locales.

Library Advanced Feat ures - 523 -


Generat ing Keys
You t hen have t o generat e keys for t he form's element s. This is simply done by clicking on Generat e Keys link in t he
form's Localizat ion t ab and complet ing t he brief wizard. You can t hen move on t he next st ep.

Generat ing t he Propert ies File


Click on t he Generat e Propert ies File link in t he form's Localizat ion t ab.

The "For New Propert ies" radio but t ons and checkbox:

Use Source Language Values


creat e t he new files, but leave t he values t he same as t he original locale and let t he (human) t ranslat or change t he
values t o t he new locale

Use Google Translat e Values


and use t hese values as a rough draft for t he t ranslat or

Use Blank Values


let t he t ranslat or fill in t he blank values. This means t he t ranslat or will have t o have access t o t he Propert ies file of
t he original locale of t he form.

Library Advanced Feat ures - 524 -


Save Non-form Propert ies t o Global Propert ies File
This means t hat a global propert ies file is creat ed for each locale at t he Organizat ion's int ernal library resources
level. It list s only t he t emplat e's common propert ies (such as "Type- Sect ion.sect ion.help.image.t oolt ip" or "But t on-
Sect ionCollapse.t oolt ip" and so on).
Form propert ies are t he cont ent of t he individual form, such as "form.cust omer.sect ion.heading" or
"form.first Name.label". Form propert ies are object s t hat begin wit h "form.".
These propert y files for form propert ies will appear in t he Localizat ion t ab of t he form:

Their cont ent s look as follows:

The t ranslat ors t hen can edit t he t ranslat ion of t he propert ies. Be careful, t hough, t hat t he diacrit ics and glyphs of
any script (here Devanagari for t he Hindi locale) are handled properly by t he t ext edit or used by t he t ranslat ors.

Deploym ent Opt ions


The Localizat ions of t he form can be deployed t o different inst ances of t he parent form in Transact ion Manager, or
for t hat mat t er t o different port als.

Library Advanced Feat ures - 525 -


Stylesheets
Composer | Form Builder | v4.3 & Higher

Overview
St ylesheet s are t he building blocks t o any t emplat e. This also means t hat t here are a great number of t hese and
t hey have many cat egories. You are even free t o add t o t he list of cat egories (which you do in t he "Save St ylesheet
as..." dilaog shown below).
St ylesheet s can be simple where t hey specify a few propert ies for a single element t ype on a form, for example a
"rounded but t on".
They also can be compounded, built out of a set of simple st ylesheet s.
In Composer, all st yles. whet her simple or compound, are defined by a st ylesheet . These are somet imes called
"st yles".

Typed St yles
A t yped st yle is a st yle t hat applies t o all object s of a part icular t ype. For example, by default , all But t ons in your
form have t he same background color because t here is a Typed St yle for But t on t hat defines t he foreground and
background colors for all But t ons. The same applies t o all object t ypes.
N ot e : Composer uses a fully object -orient ed t ype hierarchy. Some st yles apply t o "base" object s in t he t ype hier-
archy. For example, a Text Field is a sub-class of Field. Propert ies can be st yled at eit her t he base-class level (in
which case it applies t o all object s of t hat base-t ype) or at t he sub-class level (in which case it applies only t o object s
of t hat sub-class). This is t he reason for t he chains of names separat e by
dot s. Even if you do not grasp t his concept , you will st ill find st yles useful.
Normally, every object you may use in your forms will already have a t yped st yle associat ed wit h it , which was cre-
at ed by t he person who designed your organizat ional st ylesheet .
There are many t yped st yles needed for any t emplat e, be it designed by Avoka Technologies for your organizat ion
or for one of t he st andard libraries t hat ship wit h t he product . In eit her case, a full set of t yped st yles becomes avail-
able t o an Organizat ion aft er a library is assigned t o t he organizat ion. These are read- only.

St ylesheet s - 526 -
Nam ed St yles
In most cases you want all fields of a part icular t ype t o always look t he same on all forms. (And t hat is why we set
up t yped st yles for each field t ype.) But occasionally, you will want t o override some of t he st yling for a part icular
t ype of field. For example, t here are t wo ways t o represent a But t on on a form — eit her as a t radit ional push-but -
t on, or as a flat mobile-friendly st yle of a t ext -only but t on. Though t hey are just t wo slight ly different st yles of but -
t ons t hey have different foreground and background colors, font s and so on.
You select t hese named st yles for a form object by "Edit Properties -> Styling -> Style sets". The available st yleset s
and t heir choices (for example, "But t on Sizes", "But t on Shapes" and so fort h) are det ermined by t he Named St yles
associat ed wit h t he Typed St yle of t he object .
Tip: It 's generally a much bet t er idea t o define and use a named st yle, rat her t han explicit ly set t ing "magic values"
t hat you have t o remember, such as sizes, colors and ot her propert ies. Not only does t his mean you don't need t o
remember t he values, but also, if you ever want t o change t he values, you can do so in one place.
Anot her example of using named st yles is sizing of fields. Rat her t han explicit ly set t ing widt hs in inches or mm, you
can creat e named st yles such as "large", "medium", and "small".

St ylesheet Cat egories


St ylesheet s can now be cat egorized (eit her for convenience or for t emplat e choices, as we will see). You can use t he
already-exist ing cat egories or creat e your own.
Under t he covers, you can define any number of st ylesheet cat egories, and apply t hem in any order. Each cat egory
can define any number of st yles sheet s, each of which will appear in t he drop down list s. Avoka has defined a st and-
ard set of st ylesheet cat egories t hat work for many cust omers. you can define your own using t he "Save St ylesheet
as...." dialog shownbelow,
The st andard st ylesheet cat egories t hat Avoka has defined go from t he most general (overall form st ruct ure) t o t he
most specific (colours and locale). However, it possible t o define ot her st ylesheet cat egorizat ion schemes for organ-
izat ions based on t heir needs. For example, it is possible t o define an organizat ion's t emplat e wit h no st ylesheet
cat egories at all – all forms would look exact ly t he same. Or perhaps wit h a choice of only t wo st ylesheet s in a
single cat egory. Or on t he ot her ext reme, you could pot ent ially define a different st ylesheet cat egory for each dif-
ferent t ype of component .
The st andard st ylesheet s provided by Avoka in t he default t emplat es are more t o show t he capabilit ies of t he sys-
t em – most organizat ions will only define a very small number of st ylesheet combinat ions t hat represent t he st yles
of forms in t heir organizat ions. On t he ot her hand, some organizat ions, part icularly t hose t hat "whit e label" t heir
forms, may define a very large number of different st ylesheet s for each of t he sub-organizat ions t hat t hey rep-
resent .
You t hen can, if you want , associat e t hese cat egories wit h t he StyleChoosersofthetemplate.

St ylesheet s - 527 -
Edit ing St ylesheet s

St ylesheet s - 528 -
Locat ion: Worksheet -> <Organizat ion> -> St ylesheet s t ab or
Locat ion: Worksheet -> <Library> St ylesheet s t ab
By default , an Organizat ion can access t he Account 's st ylesheet s. These are all read-only. You can perform a "Save
as..." on each of t hese so in t hat you can edit t he new versions and also assign t hem t o nominat ed libraries.

This is t he way t o populat e bot h Libraries and Organizat ions wit h bespoke st ylesheet s.
So, you can replace a st andard-issue st ylesheet (from t he release, say) wit h your own in t he library by saving t he
st ylesheet wit h t he same name. For example, if I edit "Theme-Blue" and give it t he name "Blue" and keep t he cat -
egory "Theme", my modificat ions are saved as Theme-Blue (but only in t his part icular library) and will affect all
form element s t hat use t he "Theme-Blue" st ylesheet from t his library in t he st ack. The ent ry in t he St ylesheet t ab
for t he Library shows t he source of t he st yle:

St ylesheet s - 529 -
Once you have saved a st ylesheet , you can edit it s propert ies (double-click on it em in t he list or use t he edit
Act ion):

All of t he values of t he Propert ies of t he Named St yles and Typed St yles are clickable and edit able. You can also add
and delet e st yles and propert ies and even edit t he XML (t hough do not at t empt t o do so unless you know what
you are doing). The Edit St ylesheet funct ion is t herefore very powerful.

Cust om izing St ylesheet s


The abilit y t o cust omize st ylesheet s is one of t he most powerful feat ures in Composer, for several reasons:
You can make global changes t o your forms in a single place, and t his will be aut omat ically applied t o all t he forms
t hat use t hat st ylesheet .
You can cont rol t he scope of t he changes by being careful about which library's st ylesheet s you change. For
example, changes t o t he int ernal library of t he Organizat ion will affect t he whole Organizat ion. You can alt er t he
scope of changes t o ot her libraries by alt ering t he Search Pat h and t he Search Order for Organizat ions.
Even so, t he scope St ylesheet changes seem t o nat urally affect Organizat ions. Trying t o have Project s in t he one
Organizat ion pick up different st ylesheet versions is complicat ed and difficult .
St ylesheet s hide (or encapsulat e) a lot of t he advanced propert ies associat ed wit h individual widget s. These
advanced propert ies don't even appear in t he Composer by default (you can t urn on Advanced Properties in the
Property Dialog), which means t hat you don't have t o worry about t hem. You just get on wit h t he job of designing
your form.
The st ylesheet embodies your organizat ional st yle guide, ensuring all your forms conform t o t he st yle guide. Just
use t he st andard st ylesheet , and let Composer do t he rest . If you organizat ional st yle changes, simply change t he
st ylesheet , regenerat e all your forms, and you're done.
Tip: While st ylesheet s and t heir close relat ive, Templat es, are very import ant , t hey are also moderat ely complex.
We st rongly suggest t hat you cont act Avoka if you require eit her a cust om st ylesheet , or a modificat ion t o one of
t he st andard st ylesheet s. We can eit her develop t he st ylesheet for you, or provide some cust omized t raining t o
enable you t o make your own st ylesheet changes.

St ylesheet s - 530 -
Form Designer Advanced Features
Composer | Form Builder | v4.3 & Higher

Overview
Besides t he Wireframe t ab of t he Form Designer, t here are:
The Bulk Edit or t ab The Art ifact s t ab The Dat a Model t ab The XML Source t ab The Localizat ion t ab
These do not provide furt her funct ionalit y t han t hat already given in t he Edit Propert ies dialogs and panels, but
inst ead organize t he paramet er and set t ings of t he form int o t ables. Some of t hese allow paramet er set t ings t o be
changed and can be more convenient t han going in and out of numerous Edit Propert ies dialogs for t he fields and
nodes on t he form. The t abs provide an alt ernat ive and more comprehensive view of t he paramet er set t ings of t he
form t han t he at omic and fragment ed glimpses afforded by going t hrough t he propert ies of a large number of indi-
vidual form widget s.
There are at present some limit at ions: you cannot now alt er t he set t ings for t he same t ype of paramet er on a num-
ber of form element s. But , t he abilit y t o be able t o survey t he set t ing on, for example, all t he Composer script s
wit hin t he form is a vary valuable facilit y.

Bulk Editor

In t he Rules Propert y Set list ing, you can select "Script Based" under Visibilit y, Edibilit y and so on, and t hen use t he
"Edit " but t on t hat appears in t he row t o bring up t he "Script Editor", a very convenient way t o access t his dialog.

Form Designer Advanced Feat ures - 531 -


Property Sets
The form's paramet ers are arranged in Propert y Set s, which belong t o t he Organizat ion. You edit , and creat e
new, propert y set s in "Workspace -> <Organizat ion> -> Administ rat ion t ab -> Propert y Set t ab".

This t he only place in t he UI t hat you can creat e a new set . However, you cannot at present configure t he new set .
You must configure it in t he Bulk Edit or of one of t he forms in t he Organizat ion, using t he Edit Propert y Set dialog
from t he "Configure" link at t he t op of t he Bulk Edit or page. Here you select a propert y from t he Propert y List
(which just like Widget Palet t e in t he Form Edit or) and t hen double-click on t he Propert y you want in t he Propert y
Set . The propert y t hen appears in Propert y list in t he lower half of t he Edit Propert ies Set dialog. You can change
t he wording of t he heading of t he result ing Propert y Set column in t he Bulk Edit or

Artifacts Tab
This list s, and allows you t o download, files associat ed wit h t he form. Here is a part ial list of t he files:
<form name>.xls
A spreadsheet of all t he form element s and t heir propert ies, including t he Nut s & Bot ls
<form name>.xml
The form definit ion in XML.
<form name>_info.propert ies
A t ext file giving list ing t he creat ion dat e, t ime and t ime zone, and t he previewtechnology.

Form Designer Advanced Feat ures - 532 -


Data Model Tab

The left -hand panel gives t he various bindings (bound, unbound, relat ive, absolut e) of t he fields in t he st ruct ure;
t he right shows t he field's posit ion in t he dat a hierarchy. Select a field in one of t hese t wo panels and it will be selec-
t ed in t he ot her panel.
Double-clicking on a field in t he left -hand panel will also bring up a dialog wit h t he Dat a-relat ed panels t o be found
in t he "Edit Propert ies" dialog, t hough convenient ly grouped int o a "Dat a Model t ab" creat ed for t his part of t he
User Int erface.
The hierarchy depict ed in t he right -hand panel is t he dat a hierarchy. In Composer, t he dat a hierarchy is for t he
most part a reflect ion of t he form's st ruct ure. This means t hat t he dat a st ruct ure of t he field bindings wit hin a
block is, for bet t er or for worse, similar t o t he way t he fields relat e according t o layout and block groupings. It is
beyond t he scope of t his document t o show how t o change t hese relat ionships wit hout alt ering t he layout st ruc-
t ure of t he form it self.

Form Designer Advanced Feat ures - 533 -


XML Source Tab
This t ab is an edit able display of t he XML definit ion file of t he form. You can (provided you t he right s t o do so) save
you changes, or you can rollback t he last edit s you have made t o t he code. Only do t his if you are sure of what you
doing; ot herwise you can do serious damage t o t he form.
The XML frquent ly has Charact er Dat a ("CDATA") blocks, which are code t hat is passed st raight t hrough t he
XML parser wit hout it reading t he block (which it would not underst and in any case). CDATA here is used, in t he
main, t o pass JavaScript fragment s.

Localization Tab
This is explained elsewhere in theguide.
Transact Composer User Guide and ReferenceAccess & Security

Form Designer Advanced Feat ures - 534 -


Attachment Fields Overview
Composer | Form Builder | v4.3 & Higher

Prior t o Avoka Transact Version 4.1, capt uring at t achment s was only facilit at ed by t he Self-Service Port al once dat a
ent ry was complet e and t he 'Submit ' but t on had been clicked in t he form. Wit h t his approach at t achment capt ure
is an Independent st ep in t he t ransact ion process, complet ely separat e t o t he form, and t his somet imes makes t he
t ransact ion a lit t le disjoint ed. While t his flow is st ill support ed in 4.1, an alt ernat ive has been int roduced t o enable
form designers t o include file capt ure inside t he form at t he t ime t hat it is relevant . This is facilit at ed by a new Com-
poser widget called t he At t achment Field.

Finding the Attachment Field in the Palette


You can find t he "At t achment Field" under t he "At t achment s" cat egory.

Configuring the Attachment Field


Init ial Config Opt ions
Aft er you drop t he field in a form you will get t he following init ial opt ions, t hree of t hese are mandat ory (wit h t he
red ast erisk).

At t achment Fields Overview - 535 -


Basic M ode Config Opt ions
Wit hin t he field propert ies t ab t here is an "At t achment s" cat egory which cont ains t he following basic mode
opt ions:

N ame Descript ion Image


Attachment Name This is the attachment name that will be sent to TM.
This is the caption text that will display at the top of
Attachment Caption
the field.
Attachment Upload Button This is the caption text that will display in the upload
Caption button.
See images
If set to true, a link button will appear below the
for "Manual
Allow Manual Delivery upload button which allows the user to delivery the
Delivery Cap-
attachment manually.
tion"
This is the caption text that will show in the manual
Manual Delivery Caption
delivery link button.
This is the attachment description that will be sent to
Attachment Description
TM.
This is where you can set the allowed file extensions. If
Allowed File Extensions set, an error message will return if the user uploads a
file with an extension not in the list.

At t achment Fields Overview - 536 -


^ Will only
allow .png
files.

This pr oper ty allows you to set the maximum file


size allowed. Ranging fr om 0.5MB to 25MB.
Maximum Size
An er r or message will r etur n if the user uploads a
file with a size beyond the limit set.

The Max Number of Attach-


These properties should be left as default for the 4.1
ments with this Name and use
release.
Default Progress Indicator

Advanced M ode Config Opt ions


N ame Descript ion Image
Upload Button Allows the user to change the upload image which is shown in the initial
Image field state
Delete Button Allows the user to change the delete image which is shown in the com-
Image pleted field state
Allows the user to change the border colour for the attachment container,
Border Colour
this can be done in a style sheet using the fields type style.
Allow download Set to true by default, this allows the attachment download button to still
on disable be active when the field is in read-only mode.
Allows the user to change the colour used when a file is dragged over the
Drag Over Colour
container , this can be done in a style sheet using the fields type style.
Drop Container Allows the user to change the Drop Container background Colour , this
Background Col- can be done in a style sheet using the fields type style.

At t achment Fields Overview - 537 -


our

Test ing in Preview M ode


Only zip files are allowed in preview mode.

The User Experience


Int eract ing wit h t he At t achm ent Field
To capt ure an at t achment , add t he At t achment Field t o t he form in t he locat ion t hat you wish t o capt ure t he
at t achment s. At t achment fields support visibilit y, edit abilit y and mandat ory rules like st andard fields.

In it s empt y st at e, t he at t achment field shows t he 'Click t o Upload' but t on which launches t he st andard browser
file dialog. When an at t achment t hat complies is provided t he upload but t on disappears and t he file name is pop-
ulat ed int o t he field as a clickable link t hat will t rigger a download if clicked.

This link will be act ive, even if t he field it self is disabled. The form can be cleared again by clicking t he delet e ('X') but -
t on.

At t achment Fields Overview - 538 -


Form designers can configure t he at t achment field t o support t he manual delivery opt ion where users indicat e
t hey will provide t he at t achment by convent ional means.

N OTE: As of version 4.1, t he at t achment field is not yet support ed in Transact Field alt hough it is int en-
ded t hat t his capabilit y will be included in a lat er release.

Drag and drop support


Drag and drop is support ed in most browsers (IE8 and IE9 are not support ed)

Read-Only Behavior
In read-only mode when t he propert y "Allow download on disable" is set t o t rue (it is t rue by default ) t he delet e
but t on is hidden and t he download at t achment but t on is clickable.

"Allow download on disable" set t o t rue

"Allow download on disable" set t o false

Exposing Attachments in Review & Approval Style Collaboration Jobs


Collaborat ion Jobs runs over a number of st eps. The st ep name is passed by Transact ion Manager t o t he form. Edit -
abilit y rules can be applied t o at t achment fields based upon t he st ep name.

At t achment Fields Overview - 539 -


The init ial applicant filling out a blank form usually want s full writ e access t o an at t achment field (upload / down-
load / delet e). However a reviewer checking t he form may be required t o view t he at t achment but not edit it . By
configuring t he edit abilit y rule t o only disallow edit s in subsequent st eps, t his scenario can be easily accom-
modat ed.

Your At t achment Field must have "Allow download on disable" enabled (default ).

Support Notes
In TransactField , t he at t achment field displays as in receipt mode. In t he fut ure, t he at t achment field will include
t he capabilit y t o upload at t achment s wit hin Transact Field.

At t achment Fields Overview - 540 -


Obtain Form Details
Composer | Form Builder | v4.3 & Higher

Once your syst em is in place, t here will come a t ime when you would like t o updat e forms, or request some ment -
oring or support on a form design. Throughout t he life cycle of composer environment , you may rearrange folders
or project s, t ake copies and backups of forms or change form names, it is really import ant t o ensure t hat you are
aware of which form is t he current product ion form, and subsequent ly, communicat e t his t o your developers or
support t eam when request ing assist ance.

If you need t o rest ore or just clean up your environment , see restore the environment .

This short guide will show you how t o get t he det ails of t he form you wish t o request support or development on.

To obt ain your form det ails for developers or support purposes:

1. Before you begin, ensure you have ident ified for yourself t he current product ion form in t he Composer envir-
onment . If you have followed t he inst ruct ions in t he linked art icle above, t hen you may have writ t en in t he
descript ion of t he form "Current PROD form".
2. Open t he required form in Composer

3. Click Feedback in t he t op right of t he Composer environment .

4. Check your form det ails.

The idea behind t his screen is t o enable you t o collect informat ion about t he form, t he organisat ion and
t he composer environment you are using, t o make it clear and simple for your development or support
t eams t o ident ify which form you need assist ance on.

Obt ain Form Det ails - 541 -


5. Click Copy Det ails t o Clipboard and t hen past e t he clipboard int o an email, or int o your support t icket , To
communicat e t hese det ails. The sample of t he det ails is shown below.

-- Form Details --
Account: Test Forms
Organization: Test Forms
Project: April 2014
Form: TestForm
Template Name: Template-Maguire

-- Build Details --
Version: 4.3.2
Build Date: 3 June 2016
Build Number: 47396
Build Type: cloud

-- Search Path Details --


Release Path: Release v4.0.0
Service Pack path: v4.0 Service Pack 2
Custom Path: Free Trial Forms__Updated Maguire Pack 4 Current

-- Browser Details --
Chrome/51.0.2704.103

6. Click Close .

Obt ain Form Det ails - 542 -


Restore the Environment
Composer | Form Builder | v4.3 & Higher

Rest ore t he Environment - 543 -


we act ively encourage all cust omers t o put cont rols around development and promot ion of forms t o a live envir-
onment , t hrough t he use of mult iple development , t est ing and st aging (as well as t he product ion) servers. Having
separat e environment s means you can adequat ely t est your work, and promot e t o live wit hout affect ing ot her ser-
vices. Unfort unat ely, t his doesn’t always happen, and below is an example of a sit uat ion where we have assist ed in
solving a confusing and non st ruct ured UAT and Product ion environment mess.

Imagine t his sit uat ion, you’ve just purchased our Journey plat form and have built some forms. You didn’t worry
about purchasing a non product ion environment just now, because you don’t have anyt hing live, so you want t o
just go live wit h t he whole syst em and your new forms.

We recommend purchasing your t est and product ion syst ems t oget her, so t hat a clean go-live can occur, however
in t his scenario, we were not able t o t ake advant age of a t est server.

Lat er, you decide it would be good pract ice t o get a UAT machine and st art developing forms and services on t hat .
More developers come in, publishing forms t o UAT from composer, creat ing copies of forms, publishing more
t hings t o UAT. Before you know it , your forms list looks like t his:

l “Credit Card Applicat ion”


l “Credit Card Applicat ion (form)”
l “Credit Card Applicat ion 2”
l “Credit Card Applicat ion t est ”
l “Home Loan Applicat ion”
l “Home Loan Applicat ion (UAT)”
l “HL Applicat ion”

So, which one is t he UAT proper version t hat you should export t o product ion when you are ready? What if you
have 100s of forms and it looks like t his?

Don't let it get t o t his!

First ly, don’t let it get t o t his st age. We can do t his by:

1. In Composer, Implement ing a naming or versioning st andard

l I.E – all revisions of forms t hat are t he current working copy should be denot ed using “Current Version”
for t he Revision Name
l Use t he versioning t ool wit hin Composer and creat e your own processes t o ident ify forms
2. Set up your composer securit y correct ly

l Developer
l Account Administ rat or – able t o unlock forms and add users/ change passwords.
3. Set t ing up t he composer development environment

Rest ore t he Environment - 544 -


l Have one folder per developer t o be used as a sandbox area
l Creat e a "Backup" folder – This folder will cont ain a list of forms, denot ed by t he product ion form name,
wit h t he dat e appended t hat it was moved t o t he backups folder
l Product ion – product ion forms only
l Process for t ransferring forms:
l If changes are required, copy t he current product ion form t o t he relevant sandbox project
l Make form changes
l Test changes
l Backup t he product ion form t o Backup project using t he "Save As" funct ionalit y wit hin Composer
l Then updat e t he "Product ion" project wit h t he newly updat ed form
4. Publish t o Manager.
5. Ensuring t hat no one can publish direct ly t o t he Product ion TM environment from t he Composer envir-
onment .
6. In Manager, Implement ing a Form Code st andard. For example, for a credit card applicat ion you may use t he
synt ax – <BRAND CODE><FORMCODE> which could look like MAGCCA (where t he brand is Maguire, and t he
form code for credit card applicat ion is CCA). Each form should follow t his st andard and t his st andard will
depend on t he makeup of your business. You may have geographical jurisdict ions inst ead of brands so your
code may be <GEOGRAPHY><FORMCODE> for example, AUSCCA (Aust ralia), or UKCCA (Unit ed Kingdom).
7. Ensuring any debug or sandbox forms in UAT have t he “Test Mode” flag set .
8. Lock your permissions so only t hose people who need t o publish forms t o UAT or Prod have t he access t o
(Avoka have a set of recommendat ions on t his).

To correct t his issue:

1. You will need t o set up some t ype of mat rix using a spreadsheet in order t o t ake not e of t he form name and
code, and t he corresponding MD5 value, and which server t his exist s on.
2. Remove connect ivit y bet ween Composer and t he Product ion Environment t o ensure no forms can be pub-
lish t o product ion direct ly from Composer.
3. Mat ch t he Form Archive MD5 value of Prod forms t o UAT forms (t hese forms are evidence t hat forms have
been correct ly export ed from UAT, and import ed t o product ion
4. Go t o t he Transact ion Manager Administ rat ion Console
5. Go t o Forms, Forms, and find t he form in quest ion
6. Click on “Propert ies” for t he form version in t he form dashboard
7. Choose t he “Form Archive Info” t ab
8. Take a not e of t he “Form Archive MD5” Value
9. Mat ch t his value t o t he suspect ed corresponding form in product ion

Rest ore t he Environment - 545 -


10. Where forms are in UAT and also appear t o be in Prod, but t he Forms Archive MD5 does not mat ch, t his is
evidence t hat t he form has been published direct ly t o product ion.
11. An opt ion in t his case is t o export t he form from product ion, and import it int o UAT. Then you can publish
from Composer t o t hat form in UAT
12. Once sat isfied t hat t he forms in prod are correct ly reflect ed in UAT and Composer, forms in UAT can be made
“inact ive”. Likewise superfluous forms in Prod can be made inact ive
13. Aft er a period of t ime, forms in prod t hat are inact ive can be delet ed.

If t hese st eps do not work for your part icular problem, cont act our support and ask for assist ance.

Rest ore t he Environment - 546 -


Add Google Tag M anager to a Composer Form
Journey Manager (JM) | Form Builder System Manager / DevOps | 5.1 & Higher

Google Tag Manager (GTM) let s you launch new t ags wit h just a few clicks. The result ? You' enjoy fast er, t ight er con-
t rol over your digit al market ing and analyt ics soft ware.

In combinat ion wit h manage, GTM will allow you t o collect analyt ics informat ion by adding t ags t o any field, or
act ion in your form wit hout having t o make any code changes. This how-t o art icle describes how t o add GTM in
Transact ion Manager and how t o add t ags t o your form. We also have added a number of best pract ices as well as
possible mist akes t hat you'd like t o avoid when using GTM.

Online web forms creat ed wit h Composer have a single-page archit ect ure, whereby all of t he cont ent exist s in a
single rendered ht ml page, but t he user navigat ion flow is cont rolled t hrough hide/ show logic of different sect ions
(or logical form pages). Whilst providing a bet t er user experience, t his means any st andard Google Tag Manager
(GTM) configurat ions t hat ut ilise page views t o t rack web-sit e t raffic will st op t racking t he user movement once t he
form is opened - none of t he in-form navigat ion will be t racked.

The Google Tag Manager (GTM) cont ainer discussed here provides a configurable user int erface t o enable web-sit e
analyt ics for t hese forms - t racking user movement t hrough t he different sect ions of a form, as well as improved
t racking for t he separat e pages t hat a user will be direct ed t o aft er complet ion of t he form.

This implement at ion includes Tags for t he Google Analyt ics framework, however t ags could be adapt ed or creat ed
t o support any analyt ics engine.

Add Google Tag Manager t o a Composer Form - 547 -


The GTM cont ainer is a fully funct ional ent it y t hat can be applied t o any Transact Composer environment . Inst all-
at ion and configurat ion can be summarised as a series of st eps:

1. Import t he cont ainer int o a Google Tag Manager account


2. Configure Transact ion Manager t o enable Analyt ics wit h t his Tag Manager Account

This how-t o guide assume t hat you already have a GTM account wit h t he "manage" permission. You will also have
t o download the Temenos GTM container .

These st eps only need t o be performed once for a Transact ion Manager inst allat ion, but not e t hat t here is addi-
t ional configurat ion required for each form t hat is t o be added t o t he GTM implement at ion. This ext ra con-
figurat ion will be covered below.

Importing the Container into Google Tag Manager


The Avoka GTM Cont ainer is designed t o run in isolat ion - t he t ags pre-configured wit hin it will only produce page
views for Avoka forms and t heir relat ed pages. For t his reason it is safe t o use eit her opt ion for import ing t he con-
t ainer int o GTM - eit her merge it int o an exist ing cont ainer, or creat e a new one.

It should be not ed however t hat if choosing t o merge it int o an exist ing cont ainer, care should be t aken t hat pre-
exist ing t ags/ t riggers do not adversely affect t he Avoka pages. Addit ionally, if new t ags are being creat ed for Avoka
forms, correct use of t riggers should be maint ained t o ensure t hat t he t ags only fire in t he correct places - and not
in ot her pages t hat may be connect ing t o t he same GTM cont ainer.

St eps for import ing t he cont ainer:

1. Login t o Google Tag Manager and select t he correct cont ainer t o import int o (Navigat e t o t he Account s t ab
and select t he relevant cont ainer - or creat e a new cont ainer if required)
2. Navigat e t o t he Admin t ab and select Import Cont ainer from t he Cont ainer menu.

Add Google Tag Manager t o a Composer Form - 548 -


3. Under Select File t o Import navigat e t o t he Avoka cont ainer file on t he file syst em
4. Select t o eit her overwrit e t he exist ing cont ainer (for new cont ainers only) or merge and press t he Cont inue
but t on.

5. Aft er viewing t he Preview hit Confirm t o import t he cont ainer.

6. Navigat e t o Cont ainer > Variables and select t he Google Analyt ics Id variable
7. Inside t his variable, ent er your Google Analyt ics Tracking Id. This is import ant t o ensure t hat page views are
being sent t o t he correct Google Analyt ics account .

Add Google Tag Manager t o a Composer Form - 549 -


Configure Manager to Enable Analytics
As st at ed, a Composer form is built using a single-page archit ect ure, where all of t he cont ent added t o t he form in
t he Composer t ool is rendered in a single ht ml page, and hidden/ shown as appropriat e via browser script ing.
However, t he act ual form cont ent only forms part of t he user-experience pict ure.

Landing pages, Save and Resume pages, At t achment s pages and Submission Complet e pages t hat may be presen-
t ed t o t he user before or aft er t hey have filled in t he form. These pages are also crit ical t o deriving useful dat a from
an analyt ics engine, and t herefore need t o be included in t he GTM implement at ion.

Avoka TM maint ains global versions of t hese pages t hat are used by all forms by default , so it becomes import ant
t o be able t o ident ify which form t he page has been opened for. For t he most part t his can be achieved by using
t he formCode URL request paramet er t hat is required t o open t he form, however for some of t he post -form pages
(Submission Complet e, At t achment s, Save Confirmat ion) t his paramet er is not provided. In t hese cases GTM has
been set up t o look for a form code wit hin t he ht ml of t he page t hat 's been rendered, by finding a hidden element
wit h t he id of submission_formCode. The pages do not aut omat ically include t his hidden element , but any TM user
wit h t he Port al Edit permission can add it wit h a few simple st eps:

1. Aft er logging int o TM, navigat e t o Syst em > Form Spaces (called Port als/ Modules in older versions of TM)
2. Find t he space t hat cont ains t he form you would like t o add GTM capabilit y t o, and click on t he name of t he
space.
3. Find t he page t o be edit ed, and click on t he name ent ry.

Add Google Tag Manager t o a Composer Form - 550 -


4. Navigat e t o t he Pages t ab.
5. Place t he following ht ml inside t he page cont ent . The locat ion is not crit ical, but ensure it is not inside any
condit ional logic (wit h markup such as #if ($session.emailed):

<input type="hidden" name="formCode" id="submission_formCode" value-


e="$form.formCode"/>

6. Save your changes (t he but t on at t he bot t om of t he page). These changes will need t o be applied t o t he all
pages t hat you would like t o t rack even t s on.

Enable Analytics for each Form


Part of t he configurat ion exercise is t o enable t he creat ion of analyt ics dat a on a per-form basis. This allows great er
cont rol over which forms are t racked (and when) as well as t ailoring t he exact look of t he page views t hat are gen-
erat ed. Enabling analyt ics for a form involves st eps in bot h Avoka TM and GTM.

If any of t hese st eps are not performed, no analyt ics dat a will be received for t he part icular Avoka form - even if it 's
published t o an environment t hat already has ot her forms sending analyt ics dat a.

Having said t hat , it only needs t o be done once for each form - t hereaft er, if changes t o t he form are made in Com-
poser, and published t o t he TM environment , t his set up does not need t o be repeat ed.

To add t he GTM cont ainer script t o t he form:

1. Select Forms -> Forms and locat e a form you want t o t rack.
2. Click Edit and select t he Page Tracking t ab t o enable page t racking.
3. Select t he Use Form Page Tracking checkbox.
4. Select t he Inside HEAD in t he Page Script Include Posit ion dropdown list . Keep t he Tracking Script
Templat e blank.
5. Past e t he GTM script in t he Form Page Tracking Script t ext field t o enable t racking of t he form.

You can find t he GTM script from your Google Tag Manager account by select ing Admin > Inst all
Google Tag M anager .

6. Click Save t o updat e t he changes.

Additional Forms Pages


Manager has t he abilit y for a form t o maint ain it s own version of t hese pages - so t hat different cont ent may be dis-
played t o t he user for a part icular form. However, t his set up is opt ional, and if not configured, t he default pages
referred t o in sect ion 2.2 are used.

Add Google Tag Manager t o a Composer Form - 551 -


If configured, t hen t hese cust om pages also require t he same changes t hat were applied in sect ion 2.2 - t o include a
hidden field wit h t he form code t hat GTM can use.

Every t ime a form is being enabled for GTM it is t herefore necessary t o check whet her any cust om pages have been
configured, and t o edit t hese.

1. Navigat e t o Forms -> Forms


2. Locat e t he relevant form and click on t he name ent ry

3. In t he Form Versions box, locat e t he version t hat is t icked as t he default , and click on t he Propert ies link for
t hat version

4. In t he list of propert ies, if you see an ent ry for any of t he relevant pages, t hey will need t o be edit ed. The list
of possible ent ries t hat will require edit ing are:
l HTML Confirmat ion Page
l HTML Saved Page
5. If present , click on t he name of t he relevant propert y

Add Google Tag Manager t o a Composer Form - 552 -


6. Place t he following ht ml inside t he page cont ent . The locat ion is not crit ical, but ensure it is not inside any
condit ional logic (wit h markup such as #if ($session.emailed):

<input type="hidden" name="formCode" id="submission_formCode" value-


e="$form.formCode"/>

7. Save your changes (t he but t on at t he bot t om of t he page)

Configure Google Tag Manager


Navigat e t o Cont ainer -> Variables -> Form Page View Prefix.

Click inside t he Configure Variable sect ion t o allow edit ing, and add a row t o t he Lookup Table.

Add Google Tag Manager t o a Composer Form - 553 -


In t he Input field, t ype t he Manager Form Code and in t he Out put field ent er t he Page View prefix t hat will be used
for t his form. This prefix will be used for all Page Views generat ed by t his form, and is a unique pat h t hat will
ident ify t he form in t he Analyt ics engine

Save t he Variable

Once all changes have been made, it is import ant t o publish t he changes using t he Publish but t on in t he t op right
corner of t he GTM page. Once published, t raffic on t hat form will generat e t he new page views which will be sent t o
Google Analyt ics

To find t he Manager Form Code, open Manager, and navigat e t o Forms -> Forms. The result ing list will show t he
form codes for all published forms in t hat environment :

Add Google Tag Manager t o a Composer Form - 554 -


Further Information
The following sect ions include some useful informat ion for GTM administ rat ors t hat may be wishing t o maint ain
t he cont ainer, or make changes going forward.

Navigat e and Locat e It em s in GTM


A folder st ruct ure has been set up inside t he cont ainer t o group relevant it ems t oget her. By navigat ing t o t he
Folders sect ion (in t he left -hand menu st ruct ure) it ems can be locat ed a lit t le more easily. The folder st ruct ure con-
sist s of t he following folders:

l Configurat ion - Transact Composer Page Views - cont ains variables t hat relat e t o t he changeable con-
figurat ion. In part icular, t he Form Page View Prefix variable t hat an administ rat or needs t o edit t o add or
change a form's analyt ics set t ings is locat ed here.
l General In-form Navigat ion Page Views - Transact Composer - cont ains Variables, Triggers and Tags t hat are
involved in generat ing t he page views for in-form navigat ion - such as regist ering t o receive cust om event s
when a user changes sect ions, as well as t he variables t hat resolve t he sect ion name from t he cust om event ,
t o be used in t he page view Tag.
l Specific Page Views - Transact Composer - cont ains Variables, Triggers and Tags for t he page views t hat are t o
be generat ed for all pages out side of t he act ual Composer form - such as confirmat ion pages, at t achment s
pages and landing pages.

General Funct ional Overview


In-form Page Views
To enable page views t o be generat ed as a user navigat es t hrough t he Composer form, a few key GTM element s
have been configured.

Add Google Tag Manager t o a Composer Form - 555 -


l Regist er Page Change Form Event s (Tag)
l Cust om HTML t ag t ype
l Inject s some javascript t hat ut ilises t he Composer libraries t o det ect when a user has changed pages,
and sends a cust om event t o GTM - t he cust om event cont ains informat ion relat ing t o which sect ion
has been opened.
l Fires on Document Ready, but only in t he Smart Form.ht ml page, and if t he form being viewed has
been configured wit h a page view prefix (see t he Document Ready wit h Sect ion Level Analyt ics Trigger)
l Sect ion Level Page View (Tag)
l Google Analyt ics (Universal) t ag t ype
l Act ually creat es t he Google Analyt ics page view wit h t he relevant prefix and sect ion informat ion

l Fires on t he cust om page.change event t hat is generat ed by t he user act ion

The ot her element s in t his In-form Navigat ion folder in GTM are t riggers and variables t hat support t hese t wo t ags -
mainly for ext ract ing det ails from t he generat ed cust om event , as well as ensuring t he page views only fire in rel-
evant Composer form pages.

Ot her Page Views


For all ot her page views, a fairly simple paradigm has been followed of a single Trigger and single Tag. It should be
not ed t hough t hat t hese it ems also rely on ot her exist ing Variables, but going forward it is unlikely t hat t hese sup-
port ing variables would need t o change.

As an example, t he Submission Complet e page views are configured as follows (and t he ot her pages follow t he
same

l Submission Complet e Page Opened (Trigger)


l Page View Trigger
l Fires on DOM Ready
l Checks t hat t he Page URL cont ains confirmat ion.ht m and t hat a form prefix has been configured for
t his form - which aut omat ically ensures t he page is a TM form confirmat ion page, and t hat t he form
has been set t o use Google Analyt ics
l Submission Complet e Page View (Tag)
l Google Analyt ics (Universal) t ag t ype
l Uses t he configured form prefix wit h a hard-coded page name - i.e. {{Form Page View Pre-
fix}}submission
l Fires on t he Submission Complet e Page Opened t rigger

Next , learn about t he form dashboard .

Add Google Tag Manager t o a Composer Form - 556 -


Composer Account Administration
Composer | Form Builder | v4.3 & Higher

The Composer Administ rat ion Guide st eps an administ rat or t hrough feat ures of Composer t hat manage and main-
t ain t heir organizat ional hierarchy as well administ rat ion of users in t heir Account s.

Aim of this Guide


Avoka Transact Composer has a set of administ rat ion t ools, which allow for fine-grained cont rol over Composer's
configurat ion. There are also a number of maint enance t asks t hat you regularly should perform, so t hat your users
can get t he most out of Composer.

N ot at ion

Throughout t his administ rat ion guide, we use t he not at ion "->" t o indicat e a locat ion in t he int erface t o carry out a
t ask.; for example: "Access Cont rol -> Users -> New Syst em User"

Angle bracket s ("< >") indicat e t he general name, for example "<Account >" for "Foobar Account " or "My Account " or
what ever.

Composer Account Administ rat ion - 557 -


The Workspace
Composer | Form Builder | v4.3 & Higher

Workspace Hierarchy

The Root level is t he t op of t he Composer environment ; t his is at t he server level. You access Composer t hrough a
recommended browser and assigned URL If you have opt ed t o host Composer yourself and not in t he Avoka com-
munit y cloud some of t he issues of host ing your own environment may not be covered in t his document .

The Composer workspace is organized int o a number of Account s. Above t hese lies t he Avoka-administ red Root
level. You will have been assigned t o one or more of t hese Account s, which will be t he areas you will be admin-
ist ering. The Account level usually corresponds t o t he Ent erprise level in t he real world. An Account can have many
Organizat ions, usually corresponding t o t he depart ment level in t he ent erprise.

Float ing above t he Root are t he Global Libraries and Access Control. Global Libraries are, as it were, dynamic super
libraries, in t he sense t hat changes t o t hese will ripple t hrough t he ent ire syst em of account -level libraries. More on
libraries will follow.
We have placed, somewhat arbit rarily, Access Cont rol out side of t he Workspace, mainly because it lies out side of
t he Workspace st ruct ure (t hough not ent irely, as we will see). Also, alt hough you can creat e roles and assign users,
all your access cont rol set t ings are not held under t he account level like, say, libraries.

In most usual account configurat ions, t he end users are normally grant ed right s t o set up Project s and creat e
forms under t hem. The Project level is oft en used by designers as t heir personal space. However, you decide
whet her you will adhere t o t his scheme.

The Workspace - 558 -


Creating New Organizations
Composer | Form Builder | v4.3 & Higher

Creat ing N ew Organizat ions


Locat ion: Workspace -> <Account >
Required Permissions:ORGANIZATION_ADMIN, ORGANIZATION_EXPORT, ORGANIZATION_IMPORT
Roles:System Administrator , Avoka Engineer , Account Administrator , Avoka Partner

You can also creat e Organizat ions at t he Locat ion: Syst em -> Organizat ion M anagement .

Creat ing New Organizat ions - 559 -


We st rongly recommend t hat you set t he release compat ibilit y t o t he lat est version and service pack; however, you
have t he opt ion of going wit h earlier versions.

The Organizat ion needs t o be configured, carried out at t he Account Level of t he UI:

Creat ing New Organizat ions - 560 -


Creating New Projects
Composer | Form Builder | v4.3 & Higher

Locat ion: Workspace -> <Account >


Required Permissions:PROJECT_ADMIN
Roles:System Administrator , Account Administrator , Avoka Engineer

You creat e new Project s at t he Locat ion "Workspace -> Account -> Organizat ion" of t he UI and at t hat level only.

The Project Opt ions from t he Organizat ion level look like t his:

You also have some edit ing act ions:

l Updat e t he Project 's det ails

l Make t he Project inact ive (which is t ant amount t o delet ing t he Project )

The Project level of t he UI looks like t his:

There are 2 furt her t abs at t his Project level. These are inspect ors where you can view t he allocat ion of t emplat es
and users t o t he Project ,

l Assigned Templat es: you can filt er t emplat es by Current Organizat ion or for all t emplat es in t he envir-
onment .

l Assigned Users: you can block individual users so t hat t hey will not be assigned t o new forms

Creat ing New Project s - 561 -


Creating & Importing Libraries
Composer | Form Builder | v4.3 & Higher

An account can have many Libraries. Each of t hese is a collect ion of asset s, i.e. t emplat es and so fort h.

A Library or Libraries can be assigned t o Organizat ions.

So, it becomes possible t hat different Organizat ions (or even Project s) in t he one Account can have different
designs t o t he t heir forms t hrough t he use of different Libraries.

This flexibilit y was not easily configurable in earlier versions of Composer.

The various releases and libraries in Composer form a st ack. We st rongly recommend t hat you read "Library
Advanced Feat ures" in t he Composer Guide.

Library Level of t he UI

The Library level has a number of powerful feat ures accessed t hrough t he Library t abs and t he

whole st ruct ure of library element s are accessible t o users given t he necessary right s (see Allocating Users).

Creat ing & Import ing Libraries - 562 -


Creat ing a N ew Library

Locat ion: Workspace -> <Account > -> Creat e New Library link
Required Permissions:ORGANIZATION_ADMIN, LIBRARY_EXPORT, LIBRARY_IMPORT
Roles:System Administrator , Account Administrator , Avoka Engineer , Avoka Partner

Creat ing & Import ing Libraries - 563 -


Export Options
Composer | Form Builder | v4.3 & Higher

Locat ion: Syst em -> Dat a Management


Roles: Syst em Administ rat or
Locat ion: Workspace -> <Organizat ion> -> Administ rat ion t ab -> Set t ings t ab
Required Permissions:DATAPACK_EXPORT
Roles:Avoka Engineer , Avoka Partner

You can configure how your users export forms t o Transact ion Manager by using t he "Publish Target s" para-
met ers. You can add or delet e t arget s and edit t hem.

The cont ent , on clicking on t he "Export " but t on and select one of t he t wo opt ions configured above, is eit her down-
loaded t o your browser as a .zip file or sent t o t he Transact ion Manager inst ance at t he ht t ps URL.

The "Impact Analysis" produces a report on which Project s in t he select ed organizat ions (and you can select mul-
t iple organizat ions) for t he following search modes:

l Widget Types

l Templat es

l St yle Sheet s

Export Opt ions - 564 -


Then, you must select t o search for part icular it ems in t hese modes: i.e. for a part icular widget or widget s, for a par-
t icular t emplat e or a part icular st yle sheet

This result s in a report dialog t hat gives t he project and forms t hat use t hese it ems.

Inspecting an Organization's Libraries

Locat ion: Workspace -> <Account > -> <Organizat ion>


Required Permissions:ORGANIZATION_ADMIN
Roles:System Administrator , Account Administration , Avoka Engineer , Avoka Partner

At t he Organizat ion level of t he UI, t he Organizat ion's Project s are select able in t he default t ab and perform act ions
on t hem.

But from t he point of view of administ rat ing t he Organizat ion, t he t abs ot her t han Project s are useful for inspect -
ing t he library element s assigned t o t he Organizat ion, using:

l Style Sheets tab

l Custom Types tab

l Template tab

l Resources t ab

Each of t hese t abs have, t op right , a dropdown filt er select or t o view t hese by t he Current Organizat ion or by All
Organizat ions (in t he current environment ).
Use t he Administ rat ion t ab t o configure and allocat e Property Sets.

Export Opt ions - 565 -


M aintaining Libraries
Composer | Form Builder | v4.3 & Higher

Sharing Libraries wit h Account s


Locat ion: Workspace -> <Account > -> <Library> -> Administ rat ion t ab -> Library Share t ab

Required Permissions:LIBRARY_SHARE
Roles:Avoka Engineer , Avoka Partner

The library share t ab list s all t he Account s in t he Environment . The Act ion but t on can be used t o associat e t he lib-
rary t o Account or alt ernat ively block t he Library.

Not e t hat t he library is not visible in t he Account 's organizat ions unt il t he library is shared wit h t he account .

Assigning Libraries t o organizat ions from t he Workspace


To assign t he library t o an organizat ion, eit her:

l go t o Workspace -> <Account > -> <Organizat ion> and click on t he Act ion "Updat e Organizat ion Det ails" or

l at t he Workspace -> <Account > -> <Library> click on "Updat e Library Det ails".

Required Permissions:ORGANIZATION_ADMIN, LIBRARY_SHARE


Roles:Account Administrator , Avoka Engineer , Avoka Partner

Maint aining Libraries - 566 -


In bot h cases, go t hrough t he first st age of t he Wizard, and click on "Next ", where you can assign Libraries t o your
Organizat ion or Library. The dialog where you do t his looks like t his:

Libraries also can come wit h Service Packs (see Change Release) and are t hen t ermed "Dat a Packs". But despit e t he
different name, t hey are libraries and can be configured t he same ways.

Assigning and Maintaining Stylesheets

Overview
St ylesheet s are t he building blocks t o any t emplat e.

This also means t hat t here are a great number of t hese and t hey have many cat egories.

You are even free t o add t o t he list of cat egories (which you do in t he "Save St yle Sheet as..." dilaog shown below).

Maint aining Libraries - 567 -


Generally, you will be assigning St ylesheet s at Workspace -> <Account > -> <Library>. Freshly-creat ed Organizat ions
do not have t heir own st ylesheet s, but can access t he libraries assigned to them .

Edit ing St ylesheet s


Locat ion: Worksheet -> <Organizat ion> -> St yle Sheet s t ab
or
Locat ion: Worksheet -> <Library> St yle Sheet s t ab
Required Permissions:STYLESHEET_MGMT
Roles:System Administrator , Account Management , Avoka Engineer , Avoka Partner , Developer

By default , an Organizat ion can access t he Account 's st ylesheet s. These are all read-only.

Maint aining Libraries - 568 -


You can perform a "Save as..." on each of t hese so in t hat you can edit t he new versions and also assign t hem t o
nominat ed libraries.

This is t he way t o populat e bot h Libraries and Organizat ions wit h bespoke st ylesheet s.
Once you have saved a st ylesheet , you can edit it s propert ies (double-click on it em in t he list or use t he edit
Act ion):

Maint aining Libraries - 569 -


All of t he values of t he Propert ies of t he Named St yles and Typed St yles are clickable and edit able. You can also
add and delet e st yles and propert ies and even edit t he XML (t hough do not at t empt t o do so unless you know
what you are doing). The Edit St yle Sheet funct ion is very powerful.

Maintaining Custom Types

Cust om Types

Locat ion: Workspace -> <Organizat ion> -> Cust om Types t ab


or
Locat ion: Workspace -> <Library> -> Cust om Types t ab
Required Permissions:MODULE_MGMT
Roles:Account Administrator , Avoka Engineer , Avoka Partner , Developer .

Cust om Types, in t he cont ext of Library administ rat ion, refers t o t he members of t he Widget Palet t e of t he Form
Designer (see t he Transact Composer 4.0 Guide). There are 2 t ypes of Cust om Types:

l N on-edit able Cust om Typest he st andard members of t he Widget Palet t e. You cannot access t he t ype
edit or for t hese t ypes.

l Edit able Cust om Typeswhich are your saved t ypes. These will only be saved t o t he int ernal library of t he
organizat ion wit h an addit ional t ype not relevant here:

l Localizat ion Keys used for t he Int ernat ionalizat ion of forms. This is not really an administ rat ion t ask, and
so is covered in t he Composer Online Document at ion.

Maint aining Libraries - 570 -


When you are allowed t o edit a cust om t ype, you will be able t o access t he "Type Edit or,

The Creat e Pat t ern dropdown menu in t he Edit Propert y Definit ion dialog defines whet her:

l The propert y appears or does not appear in t he wizard when t he cust om Type is dropped ont o t he st ruct ure
panel of forms

l and if it does appear in t he wizard. whet her t he propert y is marked mandat ory or not .

Maint aining Libraries - 571 -


Here are t he ot her t abs in t he edit or:

Not e t hat t he XML Source updat es on-t he-fly


For most Cust om Types, you will only be able t o view t he XML source in a read-only window.

Maintaining Templates

Locat ion: Workspace -> <Account > -> <Organizat ion> | <Library> -> Templat es t ab
Required Permisions:TEMPLATE_MGMT
Roles:System Administrator , Avoka Engineer , Avoka Partner

You need t o creat e a new t emplat e in t he Templat e t ab in order t o edit it , just as wit h st ylesheet s.

The wizard t o do so has you base t he new t emplat e on an already exist ing one.

Your choice of base t emplat e is rest rict ed t o t he t emplat es already assigned t o t he Organizat ion. Wit h t he new t em-
plat e saved, you can t hen invoke t he "Edit " act ion. The t emplat e designer has 4 t abs:

1.Preview Sample Form


2.St yle Opt ions
3.XML Source

Maint aining Libraries - 572 -


Preview Sample Form

Style Options

Maint aining Libraries - 573 -


This part of t he syst em is where you can at t ach or delet e whole st ylesheet cat egories (see Custom Types) t o t he
t emplat e.
The Quick St yle Change Opt ions panel allows t hree simple set t ings:

l Turning Localizat ion on or off (see Custom Types below).

l Set t ing t he Coloring Policy t o

o Palet t e Based (simple)where t here is a "Color" dropdown in t he St yle Choosers marked "Color" and t he end user
chooses "Blue", "Green", "Gray", and so fort h.
o Theme Based (advanced)where t here is now a "Theme" dropdown and t he changes t o t he appearance of t he
t emplat e are more ext ensive
o Cust om (do it yourself)where policy is defined in t he XML. Only for t he experienced.

The Dat a Binding Policy has 2 set t ings:

l Mixed where designers have t he opt ion of alt ering t he dat a binding of element s in t he St ruct ure Panel of
Form Designer.

l Explicit where designers cannot alt er dat a binding for any element .

Maint aining Libraries - 574 -


The St ylesheet Cat egories panel is current ly read-only,
XML Source

Assigning Libraries

Maint aining Libraries - 575 -


M aintaining Property Sets
Composer | Form Builder | v4.3 & Higher

Maint aining Propert y Set s - 576 -


Locat ion: Workspace -> <Account > -> <Organizat ion> -> Administ rat ion t ab -> Propert y Set s t ab
Required Permissions:ORGANIZATION_ADMIN
Roles:System Adminisatration , Account Administrator , Avoka Engineer , Avoka Partner

Propert y set s allow you t o group t he Propert ies of various Cust om Types t oget her int o convenient set s. You can
see some of t he default set s in t he above screen grab: Present at ion, Rules, Dat a Binding and so fort h.

Maint aining Propert y Set s - 577 -


Publishing & Impact Analysis
Composer | Form Builder | v4.3 & Higher

Locat ion: Workspace -> <Account > -> <Organizat ion> -> Administ rat ion t ab -> Set t ings t ab
Required Permissions:ORGANIZATION_ADMIN
Roles:System Administration , Account Administrator , Avoka Engineer , Avoka Partner

This panel allows 2 funct ions

1. Set t he publish t arget s


2. Run an impact analysis t hat will report on specified search crit eria in t he organizat ion

Publishing & Impact Analysis - 578 -


Publish Target s
The Publish Target s panel allows you t o set t he default opt ions for t he Organizat ion. These opt ions will be
present ed t o end-users whenever t hey publish forms t o Transact ion Manager. Here you can define t arget s - com-
binat ions of different inst ances of TM as defined by t heir URLs and of t arget t ypes (i.e. eit her zip files for uploading
t o TM or Composer Form packages post ed online t o t he TM nominat ed inst ance).

Im pact Analysis
The Impact Analysis panel produces a report on t he impact of various element s on select ed Organizat ions. You can
nominat e which search mode: whet her on Widget Type , Templat e or St ylesheet .

The result ant read-only report list s t he hit s by Project and (Form) N ame .

The example below shows a search on Widget Type "Text Field". The result shows all t he organizat ional asset s t hat
cont ain a "Text field".

Publishing & Impact Analysis - 579 -


Publishing & Impact Analysis - 580 -
Creating Users
Composer | Form Builder | v4.3 & Higher

Composer support s t wo t iers of user: Client and Syst em.

l Client Tier who can only see read-only Account s designat ed "Public Account s" and t he one Account t o which
t hey have been allocat ed.

l Syst em Tier who can access one or more non-public account s and who in general have more powerful roles
t han t he Client Tier.

Client Tier Users

Locat ion: Workspace -> <account > -> Users t ab


Required Permissions:USER_ADMIN
Roles:System Administrator , Avoka Engineer , Account Administrator ,

Client t ier users can be creat ed only at t his locat ion.

Use t he "Users (t ab) -> Creat e New User" link (see here) t o access t he "Creat e a New Client User" wizard:

When you progress t o t he next part of t he wizard, choose t he role or roles for t he user you are creat ing. Please
refer t o Creating Roles on how t o define roles.

Here, we have creat ed an arbit rary role for t he sake of t he demo.

The non-Syst em user you creat e here at t he Account level also appears in Syst em -> Access Cont rol and can t hen
be assigned t o t his, or some ot her account , t hrough Syst em -> Account Management .

Creat ing Users - 581 -


Syst em Tier Users

Locat ion: Syst em -> Access Cont rol -> Users


Required Permissions:SYSTEM_USER_ADMIN
Roles:System Administrator

The "Creat e New Syst em User" link invokes t he same wizard as in Client Tier Users, and you also get t o assign a
role t o t he user.

Creat ing Users - 582 -


Creating Roles
Composer | Form Builder | v4.3 & Higher

Locat ion: Access Cont rol -> Roles


Required Permissions:SYSTEM_ROLE_ADMIN
Roles:System Administrator

There are t wo t iers of user: Client and Syst em.

l Client Tier who can only see t hose read-only Account s designat ed "Public Account s" and t he one Account t o
which t hey have been allocat ed.

l Syst em Tier who may also see ot her non-public account s and who in general have more powerful roles t han
t he Client Tier.

You also decide t he permissions t o allocat e t o each role. You act ually have quit e a lot of cont rol as t here are many
permission it ems t o choose from. Here are t he default Syst em roles t hat ship wit h t he product :

Permission Descript ion

ACCOUNT_ Allows access to the account and or ganization management panes, cr e-


ADMIN ation/deletion/editing of account info.

Creat ing Roles - 583 -


ACCOUNT_EDIT Allows editing of account meta data (display name,etc).

ACCOUNT_
Allows mer ging of accounts.
MERGE

ACCOUNT_
Allows wr iting to public or ganizations and accounts.
PUBLIC_EDIT

DATA_
DICTIONARY_ Allows binding of for m fields to the data dictionar y.
BIND

DATA_
DICTIONARY_ Allows cr eation and maintenance of the or ganization level data dictionar y.
MGMT

DATA_
DICTIONARY_ Allows status changes of data dictionar y elements.
STATUS

DATA_MODEL_
Allows binding of for m fields to the data model.
BIND

DATA_MODEL_ Allows cr eation/deletion and editing of data connections, uploading and deleting
MGMT of seed files.

DATAPACK_
Allows expor ting system datapacks.
EXPORT

DATAPACK_
Allows impor ting system datapacks.
IMPORT

DEPLOY_ADMIN Allows cr eation/deletion/editing of deployment pr oper ties.

DOC_EXPORT Allows expor ting documentation datapacks.

DOC_IMPORT Allows impor ting documentation datapacks.

FORM_ADMIN Allows viewing for m statistics, gener ating for m spec infor mation.

FORM_
Allows bulk publishing of for ms.
BULKPUBLISH

FORM_PREVIEW Allows pr eviewing of for ms, access to ar tifacts pane.

FORM_PUBLISH Allows publishing of for ms.

Creat ing Roles - 584 -


FORM_SAVE Allows editing and saving of for ms, cr eation and management of for m r evisions.

Allows unlocking of for ms locked by other user s, allows opening (but not saving) of
FORM_UNLOCK
for ms locked by other user s.

FORM_VIEW Allows viewing and opening of for ms (but not saving/pr eview).

FORM_XML Allows viewing and saving of for m xml.

LIBRARY_EXPORT
Allows expor ting of account libr ar ies.

LIBRARY_IMPORT
Allows impor ting client libr ar ies.

LIBRARY_SHARE Allows shar ing of a libr ar y (or patch) with another account.

Allows gener ation and uploading of localized pr oper ty files, gener ation of loc-
LOCALE_ADMIN
alization keys

LOCALE_
AUTOTRANSLATE Allows use of auto tr anslation tools.

Allows cr eation/deletion and editing of custom widgets/blocks, allows cr eating cus-


MODULE_MGMT
tom widgets and blocks fr om within a for m.

NEWS_ADMIN Allows cr eation/deletion/editing of welcome scr een news.

Allows editing or ganization meta data and sear ch paths, upgr ading to a
ORGANIZATION_
r elease/ser vicepack, deleting, r enaming, cr eating, moving and copying or gan-
ADMIN
izations, managing or ganization pr oper ty sets.

ORGANIZATION_
Allows expor ting user or ganizations.
EXPORT

ORGANIZATION_
Allows impor ting user or ganizations.
IMPORT

PATCH_EXPORT Allows expor ting patches.

PATCH_IMPORT Allows impor ting patches.

Allows cr eation and deletion of pr ojects, r estr icting access of user s and templates
PROJECT_ADMIN
to pr ojects.

Creat ing Roles - 585 -


Allows access to the r elease management pane, editing r elease meta data, tog-
RELEASE_ADMIN
gling r elease active state, bulk or ganisation r elease upgr ades.

RELEASE_
Allows expor ting r eleases.
EXPORT

RELEASE_
Allows impor ting r eleases.
IMPORT

RESOURCE_
Allows uploading/deleting r esour ces.
MGMT

ROLE_ADMIN Allows cr eation/deletion of r oles for an account.

SERVICEPACK_
Allows expor ting ser vicepacks.
EXPORT

SERVICEPACK_
Allows impor ting ser vicepacks.
IMPORT

STYLESHEET_ Allows cr eation/deletion and editing of stylesheets, allows push to stylesheet fr om


MGMT within a for m.

SYSTEM_FORM_
Allows use of debug ver sions of system scr ipt libr ar ies.
DEBUG

SYSTEM_FORM_
Allows system wide pr eviewing of for ms.
PREVIEW

SYSTEM_FORM_
Allows system wide publishing and bulk publishing of for ms.
PUBLISH

SYSTEM_FORM_
Allows system wide viewing of for ms.
VIEW

SYSTEM_LOG_
Allows access to system level log files.
VIEW

SYSTEM_ROLE_
Allows cr eation/deletion of system level r oles.
ADMIN

SYSTEM_USER_
Allows cr eation/deletion of system level user s and cr eation of user list.
ADMIN

TEMPLATE_
Allows cr eation/deletion of templates.
MGMT

Creat ing Roles - 586 -


TIPS_ADMIN Allows cr eation/deletion/editing of quick help tips.

USER_ADMIN Allows cr eation/deletion of user s for an account.

And here is t he list of permissions for t hese predefined roles.:

Role Permissions

Creat ing Roles - 587 -


ACCOUNT_ADMIN
ACCOUNT_EDIT
ACCOUNT_MERGE
ACCOUNT_PUBLIC_EDIT
DATA_MODEL_BIND
DATA_MODEL_MGMT
DATAPACK_EXPORT
DATAPACK_IMPORT
DEPLOY_ADMIN
DOC_EXPORT
DOC_IMPORT
FORM_ADMIN
FORM_BULKPUBLISH
FORM_PREVIEW
FORM_PUBLISH
FORM_SAVE
FORM_UNLOCK
FORM_VIEW
FORM_XML
LIBRARY_EXPORT
LIBRARY_IMPORT
LIBRARY_SHARE
LOCALE_ADMIN
LOCALE_AUTOTRANSLATE
System Administr ator MODULE_MGMT
NEWS_ADMIN
ORGANIZATION_ADMIN
ORGANIZATION_EXPORT
ORGANIZATION_IMPORT
PATCH_EXPORT
PATCH_IMPORT
PROJECT_ADMIN
RELEASE_ADMIN
RELEASE_EXPORT
RELEASE_IMPORT
RESOURCE_MGMT
SERVICEPACK_EXPORT
SERVICEPACK_IMPORT
STYLESHEET_MGMT
SYSTEM_FORM_DEBUG
SYSTEM_FORM_PREVIEW
SYSTEM_FORM_PUBLISH
SYSTEM_FORM_VIEW
SYSTEM_LOG_VIEW
SYSTEM_ROLE_ADMIN
SYSTEM_USER_ADMIN
Creat ing Roles - 588 -
TEMPLATE_MGMT
TIPS_ADMIN
DATA_MODEL_BIND
DATA_MODEL_MGMT
FORM_ADMIN
FORM_BULKPUBLISH
FORM_PREVIEW
FORM_PUBLISH
FORM_SAVE
FORM_UNLOCK
FORM_VIEW
FORM_XML
LIBRARY_EXPORT
Account Administr ator
LIBRARY_IMPORT
LOCALE_ADMIN
LOCALE_AUTOTRANSLATE
MODULE_MGMT
ORGANIZATION_ADMIN
ORGANIZATION_EXPORT
ORGANIZATION_IMPORT
PROJECT_ADMIN
RESOURCE_MGMT
STYLESHEET_MGMT
USER_ADMIN

Creat ing Roles - 589 -


DATA_MODEL_BIND
DATA_MODEL_MGMT
DATAPACK_EXPORT
FORM_ADMIN
FORM_BULKPUBLISH
FORM_PREVIEW
FORM_PUBLISH
FORM_SAVE
FORM_UNLOCK
FORM_VIEW
FORM_XML
LIBRARY_EXPORT
LIBRARY_IMPORT
LIBRARY_SHARE
Avoka Engineer LOCALE_ADMIN
LOCALE_AUTOTRANSLATE
MODULE_MGMT
ORGANIZATION_ADMIN
ORGANIZATION_EXPORT
ORGANIZATION_IMPORT
PATCH_EXPORT
PROJECT_ADMIN
RELEASE_EXPORT
RESOURCE_MGMT
SERVICEPACK_EXPORT
STYLESHEET_MGMT
SYSTEM_FORM_DEBUG
TEMPLATE_MGMT
USER_ADMIN

Creat ing Roles - 590 -


DATA_MODEL_BIND
DATA_MODEL_MGMT
DATAPACK_EXPORT
FORM_ADMIN
FORM_BULKPUBLISH
FORM_PREVIEW
FORM_PUBLISH
FORM_SAVE
FORM_UNLOCK
FORM_VIEW
Avoka Par tner FORM_XML
LIBRARY_EXPORT
LIBRARY_IMPORT
LIBRARY_SHARE
LOCALE_ADMIN
LOCALE_AUTOTRANSLATE
MODULE_MGMT
ORGANIZATION_ADMIN
ORGANIZATION_EXPORT
ORGANIZATION_IMPORT
PATCH_EXPORT

DATA_MODEL_BIND
DATA_MODEL_MGMT
FORM_PREVIEW
FORM_PUBLISH
FORM_SAVE
FORM_VIEW
Developer
FORM_XML
LOCALE_ADMIN
LOCALE_AUTOTRANSLATE
MODULE_MGMT
RESOURCE_MGMT
STYLESHEET_MGMT

Creat ing Roles - 591 -


Allocating Users
Composer | Form Builder | v4.3 & Higher

At t he Account Level
All client t ier users are created at the Account level and are t herefore assigned t o t hat Account .

All syst em t ier uses have access t o all Account s.

At t he Organizat ion Level


Locat ion: Workspace -> <Account > -> <Organizat ion> -> Assigned Users
Required Permissions:ORGANIZATION_ADMIN
Roles:System AdministratorAccount Administrator , Avoka Engineer , Avoka Partner
This locat ion list s all t he Account -level client t ier users.

The left Act ion but t ons can be eit her red (t o block t hat user from any new Project s in t he Organizat ion) or a green
check mark (t o allow t he user inst ead).

Allocat ing Users - 592 -


So, at t his level, you do not assign users — you eit her block or unblock t hem.
At t he Project Level
Locat ion: Workspace -> <Account > -> <Organizat ion> -> Project -> Assigned Users t ab -> Assign Users link
Required Permissions:PROJECT_ADMIN
Roles:System Administrator , Account Administrator , Avoka Engineer , Avoka Partner

Or, you can use t he Workspace -> <Account > -> <Organizat ion> -> Project -> Assigned Users t ab, which looks t he
same as t hat at t he Organization level above.

Allocat ing Users - 593 -


Creating New Accounts
Composer | Form Builder | v4.3 & Higher

Locat ion: Syst em -> Account Management


Required Permissions:ACCOUNT_PUBLIC_EDIT, ACCOUNT_ADMIN, ACCOUNT_EDIT, ACCOUNT_MERGE
Roles:System Administrator

This is t he only place in Composer where you can creat e an Account . You supply t he Name, t he Display Name and
Descript ion for t he account .

Use t he Act ions t o edit t hese propert ies, t o delet e t he account and assign Syst em Users t o t he account .

Again, t his is t he only place in Composer where t hese can be done.

Once an Account has been creat ed, it s Account level of t he Workspace looks like t his:

Locat ion: Workspace -> <Account >

Creat ing New Account s - 594 -


Deployment Properties Setting
Composer | Form Builder | v4.3 & Higher

Composer comes wit h a set of deployment s propert ies t hat you can use as t hey are or edit t hem as required.

Locat ion: Syst em -> Deployment Propert ies

Required Permissions: DEPLOY_ADMIN

Roles:System Administrator

The Syst em -> Deployment page list s t he paramet ers of t he Composer deployment . The paramet ers are edit able.
Some of t hem are shown below:

Here are a few examples how t o make use of t hese propert ies.

Display Important Information on the Composer Login Page


When you need t o display some import ant informat ion t o Composer users, t he best places t o do so is on t he user
log in screen.

To configure a login screen message:

1. Edit t he Login Page M essage deployment propert y wit h your message t ext and format t ing.
2. Updat e t he Login Page M essage Rest rict ion wit h a list of comma separat ed browsers t his message will
be displayed on. Leave blank for all browsers or use t he following list removing t he browsers t hat are not
want ed. Edge, IE, Chrome, Safari, Firefox

Deployment Propert ies Set t ing - 595 -


3. Check t hat t he message appears on t he login page as expect ed,

You have t o have t he above role and permission assigned t o you t o be able t o see and edit t his propert y.

Deployment Propert ies Set t ing - 596 -


M aintaining Help, News, and Tips
Composer | Form Builder | v4.3 & Higher

Maint aining Help, News, and Tips - 597 -


Locat ion: Syst em -> News Management
OR
Locat ion: Syst em -> Help Tip Management
Required Permissions: NEWS_ADMIN, TIPS_ADMIN
Roles:System Administrator

Maint aining Help, News, and Tips - 598 -


Cat egories:

l General

l Dat a Dict ionary

Text edit ors.


Import dat a: in XML file
Export as XML file downloaded t o browser.

Maint aining Help, News, and Tips - 599 -


Organization M anagement
Composer | Form Builder | v4.3 & Higher

Locat ion: Syst em -> Organizat ion Management


Roles:System Administration

Use t his t o administ er Organizat ions, various Libraries, and everyt hing else at t he same level of t he Workspace (see
The Workspace). You can filt er t he list on t he following t ypes:

l Organizat ions

l Dat a Packs in ot her words, special cust omizat ion packs

l Releases

l Service Packs

l Pat ches

l Document at ion in ot her words, t he online HTML help for an Account in t he form of a flat .zip file

l Libraries

Organizat ion Management - 600 -


The Act ions available on each it em are:

Organizat ions can be export ed as a .zip file, which is useful for import ing Organizat ions t o different environment s.

The Copy funct ion works wit hin t he one environment .

There is also a link (t op left of t he Organizat ion Management page) t o Import a previously-export ed Organizat ion.

Organizat ion Management - 601 -


Release M anagement
Composer | Form Builder | v4.3 & Higher

Locat ion: Syst em -> Release Management


Required Permissions:RELEASE_ADMIN
Roles:System Administrator

When you creat e Organizat ions, you set t heir release compat ibilit y wit h previous releases and whet her t he Organ-
izat ion migrat es t o new releases aut omat ically or manually.

Release Management - 602 -


You can also alt er t he release set t ings for several Organizat ions in bulk.

Release Management - 603 -


Viewing the Logs
Composer | Form Builder | v4.3 & Higher

Locat ion: Syst em -> Error Log


and
Locat ion: Syst em -> Event Log
Required Permissions:[ SYSTEM_LOG_VIEW| Creat ing Users#t opic_Creat ing_Roles2SYSTEM_LOG_VIEW]
Roles: Avoka Administ rat or

There are 2 log set s:

l Error

l Event

The logs are list ed in a t able wit h t hese headings:

l ID

l Time

l Account

l Organizat ion

l User Name

l Message

Double-clicking on each log ent ry brings up a dialog wit h t hese values and some ot hers, namely for Errors:

l Cont ext

l Solut ion

l St ack Trace

and for Event s:

l Event Type

Bot h log list ings can also be filt ered on:

l St art and End t imes

l Account

l Organizat ion

l User

l Message

Viewing t he Logs - 604 -


There is no opt ion in Composer for clearing t hese logs.

Viewing t he Logs - 605 -


M anaged Datapacks
Composer | Form Builder | v4.3 & Higher

The Managed Dat apack framework has been creat ed t o t ie t he version of shared dat apacks t o a composer release
aut omat ically. Dat apacks such as Maguire reside in a shared dat apack account and are not allocat ed direct ly t o a
client . Their allocat ion is cont rolled by a Managed dat apack t hat cont ains t he rules for which Maguire version
should be used for each Composer release. According t o t he rules, t he correct Maguire Pack version is added t o t he
Organizat ion's pat h aut omat ically.

By cent ralizing t he dat apacks, deployment of new versions is simple because t here is only t he shared Dat apack
Account t o updat e, rat her t han all t he account s on t he environment .

The Managed Dat apacks are subscribed at t he account level. This allows organizat ions t o add t he managed
dat apack t o t heir pat h if t hey wish t o t ie in t he Composer version release wit h t he compat ible dat apack release
aut omat ically.

Background and st rat egic fit


Many organizat ions have adopt ed t he Maguire st yling and BizPacks result ing in t he need t o incorporat e t hem int o
t he composer framework t o ensure backward compat ibilit y is addressed and t hat t est ing t ies in wit h Composer
releases.

Feat ures of using M anaged Dat apacks


# Tit le Descript ion

Ability to tie
We r equir e a way of linking composer r eleases with the cor r ect ver sion
1 datapacks to Com-
of Maguir e or any other datapack like Bizpacks
poser releases
Organizations using Managed Datapacks need to be automatically
Auto upgrade of
2 upgraded to the compatible datapack release when the composer version
datapacks
is upgraded.
Allow for migration When upgrading to a new version of a datapack such as Maguire, forms in
3 code to be run when the old version may require changes to make them compatible. This
updating datapacks. needs to be run automatically on upgrade.
User int eract ion and design
The following diagram illust rat es where t he managed dat apacks reside and how t hey relat e t o account s.

In t his framework, t he Maguire dat apacks are not direct ly assigned t o an organizat ion. They st ill reside in a shared
dat apack account (Avoka Dat apacks) but t heir allocat ion is cont rolled by t he t he Managed dat apack t hat cont ains
t he rules for which Maguire version should be used for each Composer release. According t o t he rules, t he correct
Maguire Pack version is added t o t he organizat ional pat h aut omat ically.

Versioning of Maguire Packs will be aligned wit h Composer releases.

Managed Dat apacks - 606 -


The Managed Dat apacks are subscribed at t he account level. This allows organizat ions t o add t he managed
dat apack t o t heir pat h if t hey wish t o t ie in t he Composer version release wit h t he compat ible Maguire release aut o-
mat ically.

Not e t hat it will st ill be possible t o bypass t his process and allocat e t he Maguire Packs direct ly however t his will
need t o be managed manually by t he client and is N OT recommended in most cases.

l Managed Dat apacks.


l These have no cont ent just an organizat ion.xml file
l The descript or in t his file will cont ain release/ service pack based rules for det ermining t he act ual
dat apack(s) t o add t he pat h.
l Account s will subscribe t o t he managed packs making t hem avaialble t o organizat ions
l Organizat ions can t hen add t hem t o t heir pat h via t he edit organizat ion funct ion.
l New Maguire releases will force a Composer service pack (or point ) release even if t here are no composer
changes.

Managed Dat apacks - 607 -


M anaged Support for BizPacks
Composer | Form Builder | v4.3 & Higher

Bizpacks use t he same Managed Dat apack framework as Maguire. However t here are some differences.

There are 4 Bizpack libraries t hat are t ied t o regions. Universal, AU, EU, US.

They reside in a shared dat apack account called Avoka Bizpacks.

Init ial Allocat ion of Bizpack Support


For a new environment Bizpack Support allocat ion is det ermined by region. A deployment propert y in Composer
=> "BizPack Region List " defines t he Bizpacks t hat will be aut omat ically allocat ed t o all account s in t he Composer
inst ance.

All Account s aut omat ically subscribe t o t he universal Bizpack library. The regions are det ermined by t he deploy-
ment propert y. The screen grab below is from a Composer environment t hat only had AU set up in t he deploy-
ment propert y. On init ial allocat ion t he account "Client Orgs" has Universal BizPack and AU BizPack Support (Not
EU or US). It is of course possible t o allocat e support t o t he ot her regions by select ing t hem in t his dialog.

Im port ing t he Bundled Packs


The process described above is init iat ed by an Import funct ion in t he Release management Screen. By select ing
t his opt ion "Import Bundled Packs" t he process of set t ing up all t he Bizpacks in t heir correct account and allocat ing
t he Bizpacks t o account s, based on t he deployment propert y is init iat ed.

Gaining Access t o t he BizPack Libraries


We have discussed how t he Bizpack support packs are allocat ed t o t he Account s. This only makes t he packs avail-
able for use t o all t he organizat ions under t he account . If t he organizat ion's release does not have an associat ed
BizPack t hen not hing will be allocat ed unt il t he org is upgraded.

When an exist ing organizat ion is upgraded, t he rules in t he Bizpack Support Packs available t o t he account are
checked. If t he t arget release for t he organizat ion mat ches one of t he rules t hen t he correct Bizpack Support pack
will be added t o t he organizat ion's pat h.

The BizPack Support packs can also be added manually t o t he search pat h by select ing t he Updat e Organizat ion
Det ails dialog and select ing t he Plus But t on. Only libraries allowed at t he account level will be shown for select ion. I
t he following screens only AU and Universal Bizpacks are shown because t he Account does not have US and EU
select ed.

Managed Support for BizPacks - 608 -


Account only has Bizpack Universal and AU Support Selected

Organization can only allocate these Universal and AU Bizpacks until account setting allows EU and US

It is possible for Organizat ions t o be subscribed t o all 4 Bizpacks.

If t he Bizpacks are assigned t o t he Organizat ion and t he release version is Bizpack Compat ible t he palet t e will have
a new folder called Bizpacks. This will cont ain all t he widget s available in t he assigned Bizpacks.

Rem oving Access t o t he BizPack Dat apacks


Using t he same dialogs as in t he previous sect ion, you can also remove access t o BizPacks for an organizat ion or
account .

Deprecat ed Widget s
Some exist ing Composer widget s have been moved t o t he Bizpacks.

Existing forms using these widgets may be impacted when they upgrade to 4.2 SP1 .

All t he widget s t hat have been moved t o Bizpacks are st ill available in a deprecat ed folder in Composer. The forms
will st ill generat e but will ret urn warning messages.

The form developer can eit her

1) Ignore t he warnings - not recommended because support for t hese widget s may be removed.

2) Delet e t he widget s from t he form

3) Assign t he appropriat e BizPack t o t he organizat ion.

The Com poser Palet t e


Core widget s t hat have been moved t o t he Bizpacks will appear in a Deprecat ed Folder in t he composer palet t e.
This only occurs if t he organizat ion's release version is Bizpack Compat ible and t he Bizpack cont aining t he deprec-
at ed widget s is not assigned t o t he Organizat ion.

The screen grab below shows widget s specific t o t he US region t hat have been moved t o t he US region Bizpack. The
organizat ion has not subscribed t o t he US Bizpack so t hese widget s have been moved t o t he deprecat ed folder. If
t he US Bizpack was assigned t o t he Organizat ion t he widget s would not appear in t he deprecat ed folder.

Managed Support for BizPacks - 609 -


Support st ill exist s for t hese widget s however a warning will be shown at form generat ion t o inform t he user t hat
t he widget t hey are using has been deprecat ed and t hey should use t he correct Bizpack.

Managed Support for BizPacks - 610 -


M anaged Support for M aguire
Composer | Form Builder | v4.3 & Higher

A Managed dat apack called "Maguire Support " has been creat ed t o simplify t he dist ribut ion of t he Maguire
dat apack and ensure t hat t he correct release of Maguire is being used on t he correct version of Composer.

Det ails of how Managed Dat apacks work is below but essent ially all t hat is required for users of Maguire is:

1) The Client Account is set up t o subscribe t o Maguire Support .

2) Organizat ions add t he Maguire Support Pack t o t heir Pat h.This happens by default in Account s t hat are sub-
scribed t o Maguire Support .

NOTES:

No ot her Maguire dat apacks should be present . Cust om Client packs can be creat ed t o ext end Maguire.

The Maguire support pack uses t he organizat ion's composer version t o ensure t hat t he compat ible version of
Maguire is being used.

Managed Support for Maguire - 611 -


Composer Ant Support v4.5.0
Composer | Form Builder | v4.3 & Higher

Requirem ent s
The minimum requirement s for using Ant wit h Composer are as follows. Lat er versions of all dependencies are sup-
port ed.

Dependency Minimum version

Java Java 7
Ant Ant 1.8
Composer Composer 4.5.0 server
Set t ing up your Ant build file
To set up your Ant build file you will need a copy of t he Composer Ant JAR file sfc-ant-4.5.0.jar which you can get
from https://transact.composer.avoka.com/resources. You will also need versions of Java and Ant t hat meet t he
minimum requirements.

Before you can use any of t he Ant t asks provided in t he Composer Ant JAR file, you will need t o make t hem avail-
able by adding t he following taskdef t ag t o your build file, specifying t he appropriat e JAR file pat h for your syst em.

Make sure you set loaderref="sfc" in t he taskdef t ag ot herwise most t asks will not work.

<property name="sfcant.path" value="<insert path to jar file>/sfc-ant-4.5.0.jar"/>


<taskdef resource="com/avoka/sfc/ant/antlib.xml" classpath="${sfcant.path}" load-
erref="sfc"/>

Here is an example of a complet e Ant build file t hat export s an organizat ion (using sfc-export-org, see below). It
assumes t hat you have placed t he Composer Ant JAR file in a lib direct ory at t he root of your project .

Sample build file

<?xml version="1.0" encoding="UTF-8"?>

<project name="sample" default="export.samples" basedir=".">


<property name="lib.dir" value="${basedir}/lib"/>
<property name="target.dir" value="${basedir}/target"/>
<property name="sfcant.path" value="${lib.dir}/sfc-ant-4.5.0.jar"/>
<property name="user" value="<insert your username here>"/>
<property name="password" value="<insert your password here>"/>

<!-- Make the sfc-ant tasks available -->

Composer Ant Support v4.5.0 - 612 -


<taskdef resource="com/avoka/sfc/ant/antlib.xml" classpath="${sfcant.path}" load-
erref="sfc"/>

<!-- Set up the connection details for the composer server you want to use -->
<sfc-server id="uscloud" url="https://transact.composer.avoka.com/composer" user-
r="${user}" password="${password}"/>

<target name="export.samples">
<mkdir dir="${target.dir}"/>
<sfc-export-org account="Common" organization="Samples" server="uscloud" toFile-
e="${target.dir}/Samples.zip"/>
</target>
</project>

Com poser Ant Tasks


The Composer Ant JAR file provides t he following Ant t asks.

l sfc-export-account
l sfc-export-org
l sfc-form-spec
l sfc-import
l sfc-publish
l sfc-server

sfc-export -account
The sfc-export-account t ask export s all organizat ions in an account t o a ZIP file on t he local file syst em.

Task Paramet ers

Attribute Description Required Default

The name of an account in the Composer workspace. This account


account Yes
will be exported.
The Composer server to use, specified as the id of an sfc-server
server Yes
task defined elsewhere in the build file.
toFile The path of the ZIP file to be created. Yes
Whether or not to overwrite the destination ZIP file if it exists
overwrite No true
already. Valid values are true and false.

Composer Ant Support v4.5.0 - 613 -


Example

<sfc-server id="uscloud" url="https://transact.composer.avoka.com/composer" user-


r="user@avoka.com" password="********"/>
<sfc-export-account account="Sample Account" server="uscloud" toFile="${basedir}/sample-
account.zip"/>

sfc-export -org
The sfc-export-org t ask export s a single organizat ion or library in an account t o a ZIP file on t he local file syst em.

Task Paramet ers

Attribute Description Required Default

account The name of an account in the Composer workspace. Yes


The name of an organization in the account. This organization
organization Yes
will be exported.
The Composer server to use, specified as the id of an sfc-server
server Yes
task defined elsewhere in the build file.
toFile The path of the ZIP file to be created. Yes
Whether or not to overwrite the destination ZIP file if it exists
overwrite No true
already. Valid values are true and false.

Example

<sfc-server id="uscloud" url="https://transact.composer.avoka.com/composer" user-


r="user@avoka.com" password="********"/>
<sfc-export-org account="Sample Account" organization="Sample Organization" server-
r="uscloud" toFile="${basedir}/sample-org.zip"/>

sfc-form -spec
The sfc-form-spec t ask generat es a form specificat ion (form spec) XML file for one or all forms in a project .

Task Paramet ers

Attribute Description Required Default

Composer Ant Support v4.5.0 - 614 -


The name of an account in the Composer workspace.
account Yes

organization The name of an organization in the account. Yes


The name of a project in the organization. Form
project specs will be generated for one or all forms in this pro- Yes
ject.
The name of the form for which a form spec will be
form generated. Use "* " to generate form specs for all No "* "
forms in the project.
Whether or not to replace # s in localization keys with
adjustLocalizationKeys No false
their resolved values. Valid values are true and false.
Whether or not properties with no value defined are
preserveNullValues No false
kept in the form spec. Valid values are true and false.
The Composer server to use, specified as the id of a
server Yes
sfc-server task defined elsewhere in the build file.
The path of the file to be created. This will be an XML
toFile file in the case of a single form or a ZIP file if gen- Yes
erating form specs for all forms in a project.
Whether or not to overwrite the destination ZIP file if
over wr ite No true
it exists already. Valid values are true and false.

Examples
Generat e a form spec for a single form

<sfc-server id="uscloud" url="https://transact.composer.avoka.com/composer" user-


r="user@avoka.com" password="********"/>
<sfc-form-spec account="Sample Account" organization="Sample Organization" project="My
Project" form="Test Form" server="uscloud" toFile="${basedir}/test-form-spec.xml"/>

Generat e form specs for all forms in a project

<sfc-server id="uscloud" url="https://transact.composer.avoka.com/composer" user-


r="user@avoka.com" password="********"/>
<sfc-form-spec account="Sample Account" organization="Sample Organization" project="My
Project" form="*" server="uscloud" toFile="${basedir}/my-project-specs.zip"/>

Composer Ant Support v4.5.0 - 615 -


sfc-im port
The sfc-import t ask import s an organizat ion ZIP file from t he local file syst em t o an account on a Composer server.

Task Paramet ers

Attribute Description Required Default

The name of an account in the Composer wor kspace. The


or ganization in the ZIP file will be impor ted into this account.

account No
NOTE: This will over r ide the account name fr om the ZIP file.
Leave this attr ibute blank to use the account name fr om the
ZIP file.

The name of an or ganization in the account. This or gan-


ization will be impor ted.

organization No
NOTE: This will over r ide the or ganization name fr om the ZIP
file. Leave this attr ibute blank to use the or ganization name
fr om the ZIP file.

The Composer server to use, specified as the id of a sfc-server


server Yes
task defined elsewhere in the build file.
file The path to the ZIP file to be imported. Yes

Example

<sfc-server id="uscloud" url="https://transact.composer.avoka.com/composer" user-


r="user@avoka.com" password="********"/>
<sfc-import account="Sample Account" organization="Sample Organization" server="uscloud"
file="${basedir}/sample-org.zip"/>

sfc-publish
The sfc-publish t ask creat es a publish ZIP or FAR file of a Composer form, suit able for import ing int o Avoka Trans-
act Manager.

Task Paramet ers

Attribute Description Required Default

account The name of an account in the Composer workspace. Yes


organization The name of an organization in the account. Yes

Composer Ant Support v4.5.0 - 616 -


project The name of a project in the organization. Yes
form The name of a form in the project. This form will be published. Yes
A comma separated list of variants to include in the published
variants ZIP file. Use "* " for all variants or "!" to just use the default vari- No "!"
ant as defined in the template.

The type of file to cr eate. Valid values ar e zip and far.


format No zip
Note: far is only suppor ted when a single var iant is specified.

The Composer server to use, specified as the id of an sfc-server


server Yes
task defined elsewhere in the build file.
toFile The path to the ZIP/FAR file to be created. Yes
Whether or not to overwrite the destination ZIP/FAR file if it
overwrite No true
exists already. Valid values are true and false.

Example

<sfc-server id="uscloud" url="https://transact.composer.avoka.com/composer" user-


r="user@avoka.com" password="********"/>
<sfc-publish format="zip" account="Sample Account" organization="Sample Organization" pro-
ject="Samples" form="My Sample" server="uscloud" toFile="${basedir}/my-sample.zip"/>

sfc-server
The sfc-server t ask is used t o define connect ion informat ion for a Composer server. Ot her Composer Ant t asks
have a server at t ribut e t hat needs t o mat ch t he id of an sfc-server t ask defined in t he build file.

Task Paramet ers

Attribute Description Required Default

The id assigned to this server definition. This is an arbitrary iden-


id tifier used to identify the Composer server in other Ant tasks and Yes
must be unique within the build file.
The URL of the Composer server; for example, https://trans-
url Yes
act.composer.avoka.com/composer.
A Composer user name, used to authenticate the Ant build pro-
user cess when accessing the Composer server referenced by the url Yes
attribute.
The password for the Composer user identified by the user attrib-
password Yes
ute.

Composer Ant Support v4.5.0 - 617 -


Example

<sfc-server id="uscloud" url="https://transact.composer.avoka.com/composer" user-


r="user@avoka.com" password="********"/>

Composer Ant Support v4.5.0 - 618 -


Composer On-premise Upgrade Guide (for major release)
Composer | Form Builder | v4.3 & Higher

On-premise Composer inst allat ions will require regular upgrades t o t ake advant age of new feat ures and defect
fixes.

A special build is required for on-premise upgrades. This is available t o cust omers at => On Premise Composer
Upgrade Directory

Each available release is list ed under t his folder and includes all t he it ems required for a successful upgrade. This
will include:

l The release "WAR" file.


l Maguire Support Pack
l Maguire dat apack
l Service Pack if not a major release.

If t he client does not have t he lat est version of composer on t heir inst ance t hey will need t o addit ional act ions t o
t he ones below. These are described lat er in t his document .

The screenshot below shows t he art ifact s in t he files.avoka.com upgrade folder for a 4.3.2 upgrade. The 2 sub-
folders "Upgrading from 4.1.x" and "Upgrading from 4.2.x" are only required by client s who are NOT on 4.3 and will
be required lat er in t he upgrade.

Composer On-premise Upgrade Guide (for major release) - 619 -


Upgrade Steps
Composer upgrades require t he deployment of a new WAR file in t he JBoss applicat ion server. The WAR file can be
downloaded from On Premise Composer Upgrade Directory, you can cont act t he Avoka support t eam t o obt ain
access. The upgrade will aut omat ically upgrade t he dat abase if required, it is t herefore import ant t o creat e a full
backup of t he dat abase before a new WAR file is deployed.

For updat ing composer war file:

1. Backup composer dat abase


2. Backup old t he avoka-formcomposer.war from [JBOSS_HOME]\ server\ default \ deploy\ ,
3. Shut down JBoss for Composer
4. Copy new avoka-formcomposer.war t o [JBOSS_HOME]\ server\ default \ deploy\ , replacing t he old avoka-form-
composer.war
5. Delet e [JBOSS_HOME]\ server\ default \ t mp folder

Composer On-premise Upgrade Guide (for major release) - 620 -


6. St art JBoss for Composer
7. The dat abase upgrade process will be kicked off once t he JBoss applicat ion server has been st art ed.
8. You will now be able t o access Composer as per usual

Follow up Actions
Aft er a successful upgrade t he following act ions are required:

1) Updat ing t he Service Pack(s) (Not required for m ajor releases)


Service packs are named "v4.x Service Pack x". These need t o be uploaded t o Composer by a sit e administ rat or in
t he Syst em Account . For major release (eg. 4.4, 5.0 et c) t his is not required.

2) Adding M aguire Packs


If t here is a corresponding Maguire release, t here will be Maguire Pack Libraries t hat need t o be uploaded t o t he
Avoka Dat apack Account

1) Maguire Support - This is t he rule pack for Maguire. It will use t he Organizat ion's version t o select t he correct
Maguire Pack. When uploading it can replace t he exist ing pack.

2) Maguire vn.n - This is t he Maguire Pack it self and needs t o be added t o t he Avoka Dat apack. There may be mul-
t iple t o add.

Composer On-premise Upgrade Guide (for major release) - 621 -


3) Act ivat ing Bizpacks
Bizpacks are bundled int o t he WAR file however t hey are not act ivat ed aut omat ically. To do t his t he administ rat or
needs t o:

1. Go t o: Syst em=>Release Management


2. Select t he "Import Bundled Packs" but t on.

This will add t he Bizpacks t o t he Avoka Bizpacks account aut omat ically.

Composer On-premise Upgrade Guide (for major release) - 622 -


4) Set t ing t he current release
1. Go t o: Syst em=>Release Management
2. Select t he "Current Release" link on t he t op right hand corner.
3. The dialog will cont ain a dropdown wit h t he available releases. Select t he lat est release and hit "Ok".

Composer On-premise Upgrade Guide (for major release) - 623 -


5) Client s not on t he lat est release
For client s who are current ly not on t he lat est release. That is 4.1.x or 4.2.x t he addit ional st eps are described below
Upgrading From Older Versions

Composer On-premise Upgrade Guide (for major release) - 624 -


Rollback
To rollback t he upgrade please follow t he following st eps:

1. Shut down JBoss for Composer


2. Rest ore t he dat abase
3. Copy t he backed up avoka-formcomposer.war t o [JBOSS_HOME]\ server\ default \ deploy\
4. Delet e [JBOSS_HOME]\ server\ default \ t mp folder
5. St art JBoss for Composer
6. You will now be able t o access Composer as per usual
7. Cont act t he Avoka support t eam and provide t hem wit h t he relevant JBoss log files for furt her analysis

Upgrading from an older version


The following t wo folders are required by client s upgrading from version 4.1 and version 4.2.

These cont ain t he dat apacks t hat need t o be loaded t o ensure t he environment is fully up t o dat e.

N ot e t hat if you are upgrading from 4.1.x t o 4.3.x you will need t o add t he dat apacks from bot h
folders.

St eps t o upgrade
1. Open t he folder required. Not e t hat not all of t he following may be present .
2. If t here are Bizpacks in t he folder you need t o add t hem t o t he Avoka Bizpacks Account in Composer.
3. If t here are Maguire packs t hey need t o be added t o t he Avoka Dat apacks Account in Composer.
4. If t here are Service Packs or Release Packs t hese need t o be added t o t he Syst em Account in Composer.

Composer On-premise Upgrade Guide (for major release) - 625 -


Composer On-premise Upgrade Guide (service pack release
only)
Composer | Form Builder | v4.3 & Higher

1) Updating the Service Pack(s)


Service packs are named "v4.x Service Pack x". These need t o be uploaded t o Composer by a sit e administ rat or in
t he Syst em Account . For major releases (eg. 4.4, 5.0 et c) t his is not required.

2) Adding M aguire Packs


If t here is a corresponding Maguire release, t here will be Maguire Pack Libraries t hat need t o be uploaded t o t he
Avoka Dat apack Account

1) Maguire Support - This is t he rule pack for Maguire. It will use t he Organizat ion's version t o select t he correct
Maguire Pack. When uploading it can replace t he exist ing pack.

2) Maguire vn.n - This is t he Maguire Pack it self and needs t o be added t o t he Avoka Dat apack. There may be mul-
t iple t o add.

Composer On-premise Upgrade Guide (service pack release only) - 626 -


3) Setting the current release
1. Go t o: Syst em=>Release Management
2. Select t he "Current Release" link on t he t op right hand corner.
3. The dialog will cont ain a dropdown wit h t he available releases. Select t he lat est release and hit "Ok".

Composer On-premise Upgrade Guide (service pack release only) - 627 -


Composer On-premise Upgrade Guide (service pack release only) - 628 -
Composer Attachment Definitions
Composer | Form Builder | v4.3 & Higher

At t achment s can be defined eit her in Transact ion Manager, or in t he form it self via Composer. Bot h approaches
allow At t achment specific rest rict ions t o be specified.

The following sample displays at t achment s defined in Transact ion Manager and Composer.

Transaction Manager
At t achment s can be defined against a Form Version.

Attachment defined in Transaction Manager

Pros
l At t achment s can be modified wit hout needing t o redeploy t he Form

Composer Form
TM At t achm ent Rule
At t achment s can be added and specified by adding a TM At t achment Rule widget t o a form.

Attachment Rule in Composer

Composer At t achment Definit ions - 629 -


Pros
l Composer At t achment s can have inclusion rules defined (So t hey can be dependent on ot her form ele-
ment s/ condit ions)

Cons
l At t achment modificat ions need form redeployment

TM At t achm ent Table


The TM At t achment Table will display all of t he Transact ion Manager At t achment s (Including TM At t achment Rules
defined wit hin Composer) current ly applicable t o t he form. Any TM At t achment Rules wit h inclusion rules defined
need t o be t rue t o be visible in t his list .

TM Attachment Table rendered in a form

Composer At t achment Definit ions - 630 -


Composer Attachment Restrictions
Composer | Form Builder | v4.3 & Higher

At t achment s configured in Transact ion Manager or Composer can be defined wit h cert ain rest rict ions t o improve
dat a int egrit y or const rain t he submit t ed document . The following rest rict ions can be configured:

l Mandat ory/ Opt ional


l Document Type - Predefined Rules t hat specify File Type, Size, Descript ion
l Document Code - Code associat ed wit h at t achment
l Mime Type/ File Ext - Comma separat ed list of file ext ensions
l File Size - Maximum File Size

l Pixel Resolut ion - Maximum Image Pixel Resolut ion


l Submit Met hod - Elect ronic (Upload a document ) / Manual (Upload a document )

Example of an Attachment configured in Transaction Manager using a Predefined Photo Document Type which
reuses its configured File Type, Size and Pixel Resolution Requirements

Transact ion M anager - Docum ent Types


Generic Document Types t o be used across mult iple At t achment s can be predefined in Transact ion Manager.
This allows file t ype, size, descript ion, code t o be preconfigured. Document t ypes can also be specific t o an Organ-
isat ion.

Document Type Editor in Transaction Manager

Composer At t achment Rest rict ions - 631 -


Composer Attachment Time
Composer | Form Builder | v4.3 & Higher

At t achment s can be added at different t imes in t he overall flow.

At t achment s defined wit hin Transact ion Manager or as TM At t achment Rules in Composer will prompt t he user
aft er submission. The user will also be informed of any applicable File Type or Size rest rict ions applicable t o each
at t achment .

Form Prompting User after Submission for attachments

The following sample displays TM At t achment s defined in Transact ion Manager and Composer. The user is promp-
t ed t o provide t he at t achment s aft er form submission.

Sample form: https://tm.demo.avoka.com/govassist/servlet/SmartForm.html?formCode=attachments6

Composer At t achment Time - 632 -


Composer Attachments in Repeats
Composer | Form Builder | v4.3 & Higher

At t achment s in repeat s or t able-rows can be a lit t le problemat ic, because At t achment s are (by definit ion) global t o
t he submission, whereas at t achment s in repeat s are (again, by definit ion) repeat ing. The problem is t hat every
at t achment needs t o have a unique name, and by default all t he at t achment s in a repeat will have t he same name.

There is a fairly easy way t o work around t his:

1. In t he hierarchy t ree, click t he t oolbar gear t o show hidden fields.


2. Locat e t he appropriat e at t achment .
3. Expand it , and find t he sub-field named At t achment Name. Open t he propert ies dialog for At t achment
Name.
4. You will not ice t hat t he Init ial Value of t his field is set t o $../ {at t achment .name} - t his will evaluat e t o t he
At t achment N ame propert y at t he At t achment Rule level.
5. What we need t o do is use a Calculat ion Rule t o make t he value of t his sub-field a unique value.

There are several ways t o do t his, but probably t he easiest way is t o use a calculat ion rule based on concat enat ing
a st ring wit h t he current repeat ing row index. You will need t o drop a Repeat able Block Index field int o your
repeat in order t o use t his in a calculat ion.

Composer At t achment s in Repeat s - 633 -


Transact for Salesforce App
Journey Platform | All Personas | 5.1 & Higher

Transact for Salesforce App was creat ed in response t o recurring feedback we received from our cust omer base.
Feedback around t he Cust omer Experiences produced by t he Journey platform has always been very posit ive and
we've been fort unat e enough t o assist many businesses t ransform t he way t hey int eract wit h t heir cust omers
online. However, several client s were concerned about t he st aff experience and didn't want t heir sales and cus-
t omer service st aff t o have t o login t o a separat e syst em in order t o init iat e t hese online t ransact ions and t rack
t heir progress t o complet ion. Many of t hese cust omer facing st aff spend t heir day inside a CRM 1 environment ,
becoming very product ive in t his environment , and for a growing number of our client s t his CRM is Salesforce.com.

Transact for Salesforce App is about improving t he st aff experience, specifically t he st aff who spend t he bulk of
t heir t ime working in Salesforce and dealing direct ly wit h t he cust omer.

We asked ourselves some quest ions:

l What if Sales st aff could send out an Applicat ion Form t o one of t heir cont act s, direct ly from t he Cont act
record, and have it pre-filled wit h informat ion from Salesforce?
l How could we make it easy for Cust omer Service st aff t o assist cust omers complet e t heir t ransact ions
wit hout having t o leave t he Salesforce environment ?
l Could we record complet ed form-based t ransact ions int o t he CRM such t hat t hey get added t o t he hist orical
t imeline of t he cust omer relat ionship?

Transact for Salesforce App is designed t o answer t he following quest ions:

1. Provide a Salesforce embedded UI t hat allows users t o view and manage t ransact ions t hat reside on t he Jour-
ney plat form wit hout having t o access t he plat form direct ly, removing t he need for t hem t o leave t he Sales-
force environment .
2. Provide a generic int egrat ion channel bet ween Manager and force.com t o avoid cust om int egrat ion work for
each use case.
3. Provide a simple framework for int egrat ion t hat enables Salesforce consult ing part ners and Salesforce admin-
ist rat ors wit h t he abilit y t o more easily configure and cont rol t he receipt of dat a from and release of dat a t o
t he Journey plat form.

You can easily install and configure the application , which support s:

l Salesforce - all edit ions of Salesforce are support ed. All Avoka APEX code is writ t en for API version 33.
l The Manager versions.

You can perform t he following applicat ion administ rat ion and management act ivit ies:

1AcroForms are t he original PDF forms t echnology t hat accept s input in bot h Forms Dat a Format (FDF) and XML

Forms Dat a Format (XFDF). Many 3rd part y vendors support AcroForms.

Transact for Salesforce App - 634 -


l Configure Transact for Salesforce App
l Enable or restrict access t o forms
l Access security tokens
l Manage user licenses

User Interface Design


The user int erface is facilit at ed by a Canvas applicat ion t hat is host ed on t he Manager server and rendered int o t he
Salesforce UI using t he Canvas framework. A set of REST APIs exposed on t he Journey plat form support t he UI for
accessing, creat ing and updat ing t ransact ions.

St yling
St yling of t he Canvas UI is designed t o blend in wit h t he Salesforce Deskt op UI by ut ilizing complement ary colors,
font s and but t on st yles. Where appropriat e, subt le changes have been applied t o provide a more modern look and
feel, yet st ill maint aining a nat ural int egrat ion int o t he visual design of t he plat form.

Navigat ion
Page navigat ion is facilit at ed by a simple t ab met aphor at t he t op of t he UI, support ing navigat ion bet ween t he fol-
lowing page funct ions:

Transact for Salesforce App - 635 -


1. My Forms - shows form t ransact ions t hat are assigned t o t he current user. This page is t ypically only sur-
faced when t he user accesses t he UI via t he Chat t er feed.
2. Live View - shows form t ransact ions t hat are linked t o t he current Salesforce object (SObject ).
3. New Form - is used t o select and creat e a new form t ransact ion based on an available form t emplat e.
4. Search - is cust omer service st yle search facilit y t o find forms using a search t erm. Result s may include forms
t hat are anonymous and unlinked.

Information Architecture
A form t emplat e represent s t he code and configurat ion behind a form design and encapsulat es t he dat a model,
business rules and present at ion asset s for a form. Wit hin t he Canvas UI, form t emplat es are accessed by navigat ing
t o t he ‘New Form’ page and select ing a form cat egory. Form t emplat es can be used t o creat e new form t rans-
act ions t o be opened immediat ely or sent t o a cont act .

Form t emplat es can belong t o one or more form cat egory. Form cat egories and t he forms t hat belong t o t hem are
configured in Manager.

A form t ransact ion may be assigned t o a single user or assigned t o no user (anonymous). Forms assigned t o a user
will appear under t he M y Forms page when t hat user is logged in t o Salesforce and accessing t he Canvas UI.

A form t ransact ion may be linked wit h a single Salesforce object or unlinked. Forms linked t o a Salesforce object
will appear under t he Live View page when viewing t he det ail layout for t hat object .

Not e: Primary Ent it ies in Avoka (orange) and Salesforce (blue) and t heir Relat ionships

Transact for Salesforce App - 636 -


Integration Approach
UI
The Transact for Salesforce App UI is built in and host ed on t he Journey plat form. This UI is int egrat ed int o t he
Salesforce page layout s by ut ilizing t he Salesforce Canvas API.

APIs
API int egrat ion is facilit at ed by REST services on bot h plat forms. Journey plat form exposes REST services t o accom-
modat e t he assignment of new forms from Salesforce, while REST APIs on t he Salesforce side are ut ilized by Man-
ager t o deliver complet ed submissions.

Wit hin Salesforce, t hese REST services are encapsulat ed by cust om object s and associat ed t riggers t o facilit at e t he
bi-direct ional communicat ions, as illust rat ed in t he following diagram.

Aut hent icat ion / Ident it y M anagem ent


Aut hent icat ion of Salesforce users int o Journey Manager is done via OAut h2. Users who access t he Transact for
Salesforce App UI must be aut hent icat ed wit h Salesforce. Upon first t ime access t o t he Avoka UI, a placeholder
account is creat ed on t he Manager server wit h t he required permissions t o perform t he funct ions associat ed wit h
t he UI.

Transact for Salesforce App - 637 -


Data Security
This sect ion provides an assessment of t he dat a securit y considerat ions associat ed wit h t he managed package. For
det ailed informat ion on dat a securit y in t he Journey plat form, request a copy of t he Journey plat form securit y archi-
t ect ure document at ion.

The base inst allat ion of t he package does not require access t o any Salesforce st andard or cust om object s ot her
t han t hose cont ained wit hin t he package it self.

Cont rol over which dat a is shared wit h Manager for prefill int o forms, and which dat a is updat ed by incoming sub-
missions is under complet e cont rol of t he Salesforce administ rat ors. This is a manual configurat ion funct ion t hat is
not enabled by default .

Dat a Access Cont rols


The solut ion provides a framework for Salesforce administ rat ors t o release dat a t o Manager for t he purposes of
prefilling forms before sending t hem t o cont act s t o complet e and submit . This framework is facilit at ed by a set of
Apex classes t hat consume configurat ion based rules t o build dynamic SOQL1 queries for t he ret rieval of dat a.

Wit hin t his apex code, t he following access cont rols are employed:

l Wit h Sharing - all Apex classes in t he package have t he ‘wit h sharing’ cont rol act ivat ed such t hat sharing rules
of t he current user are considered.
l Dat a Access Right s - where configurat ion requires t hat a field be prefilled int o a form, t he current user’s dat a
access right s are first checked before t hat field is ret rieved wit h SOQL. Similarly, where dat a flows back int o
Salesforce, t he user’s permission t o creat e or updat e fields and object s is checked prior t o performing any
change. The Apex class SecurityController has been included t o accommodat e t hese checks. The fol-
lowing code is an example of t hese checks in act ion: if(SecurityController.isFieldAccessible
(objectType, fieldName))

Off-Plat form Dat a St orage


The Journey plat form is a syst em of engagement , not a syst em of record, so no dat a is ret ained in our plat form,
ot her t han configurat ion dat a, longer t han it is required in order t o complet e t he dat a capt ure t ransact ion and for-
ward t he dat a t o t he appropriat e syst em of record.

Due t o t he requirement s of our most sensit ive client s, such as federal government agencies, police depart ment s,
and financial services organizat ion, Manager dat a securit y is except ionally st rong. All dat a in t ransit and at rest is
encrypt ed according t o t he indust ry’s highest st andard and flexible purge policies allow client s t o ensure t hat sens-
it ive dat a is removed from t he syst em at t he earliest opport unit y.

1Salesforce Object Query Language (SOQL) is used t o const ruct simple but powerful query st rings in t he

querySt ring paramet er in t he query() call, in Apex st at ement s, in Visualforce cont rollers and get t er met hods, or in
t he Schema Explorer of t he Force.com IDE.

Transact for Salesforce App - 638 -


Salesforce Organization Impacts
Manager does not include pre-built dat a capt ure experiences t arget ing specific use cases, but rat her provides a
t emplat e based design environment wit h many pre-built component s t hat can be st rung t oget her t o rapidly pro-
duce t hese experiences. Each of our cust omers use Manager t o facilit at e different use cases wit hin t heir organ-
izat ion, and t hese are t ypically built t o spec.

Wit h t his considerat ion, it is difficult t o provide a general assessment of t he impact s t he Salesforce package will
have on t he client ’s Salesforce Organizat ion. Rat her, t he impact s need t o be assessed on a case by case basis and
Avoka will work wit h each client t o ensure t hat t he impact s underst ood.

The following sect ions out line t he pot ent ial areas of impact and t he considerat ions relat ing t o each.

Licensing
The Transact for Salesforce App package can be used on any edit ion of Salesforce. Licenses are made available for a
mont hly fee on a per user basis. Any user who accesses any component included in t he managed package must be
licensed t o use t he solut ion. The primary funct ions required by users will be:

l Ut ilize t he Canvas App t o manage forms against a Salesforce object .


l Access delivery records of Manager t ransact ions.
l Trigger funct ions wit hin t heir Salesforce environment t hat in t urn creat e a post request t o Manager t o assign
a form.

Dat a St orage Requirem ent s


The following dat a st orage considerat ions need t o be assessed on a case by case basis:

l Transact ion Volumes - t he volume of t ransact ions being produced from t he Journey plat form and delivered
int o Salesforce will be a key fact or in t he det erminat ion of dat a st orage requirement s.
l Binary at t achment s - where t ransact ions call for binary at t achment s t o be provided, and t hese at t achment s
are designat ed for delivery int o Salesforce, t he st orage requirement s for t hese binary at t achment needs t o
be considered. Cont rols can be put in place in Journey plat form t o rest rict t he size of at t achment s t hat may
be provided by users.
l Purge St rat egies - t he dat a in t he Journey plat form cust om object records is t ransient by design. Dat a purge
st rat egies can be effect ively applied t o remove records t hat are no longer required. Purge rules may be
developed t o remove only t he binary at t achment s and submission XML while maint aining t he met adat a
about each delivered submission.

API Usage Volum es


The following API usage considerat ions need t o be assessed on a case by case basis:

Transact for Salesforce App - 639 -


l Transact ion Volumes -t he volume of t ransact ions being produced from t he Journey plat form and delivered
int o Salesforce will be a key fact or in t he det erminat ion of API usage requirement s. Each submission
delivered int o Salesforce will ut ilize a minimum of one API call, but more where at t achment s are t o be
delivered also.
l Prefill Generat ion - where a user is int eract ing wit h t he Canvas App and at t empt s t o send a form t o a cont act ,
t his requires an API call t o t he prefill generat ion service.
l Where Journey Manager Post records are creat ed as a result of event s in t he Salesforce environment , t hese
t rigger calls t o t heJourney plat form.

Bat ch Processing
There are current ly no bat ch processes included in t he package. Client s may choose t o implement t heir own purge
process t o remove post and delivery records older t han a cert ain dat e.

Report ing
There are current ly no report s or dashboards included in t he package.

Next , learn how t o configure Transact for Salesforce App .

Transact for Salesforce App - 640 -


Integrate Salesforce with M anager
Journey Platform | All Personas | 5.1 & Higher

You can configure Salesforce t o int egrat e it wit h Managerfor t he first t ime.

To configure your Salesforce environment for Journey Manager int egrat ion via APIs, follow t he process below:

1. Inst all t he Transact for Salesforce App.


2. Creat e t he API User Account in Salesforce.
3. Creat e t he Journey Manager Connect ed App in Salesforce.
4. Provide t he User Account and Connect ed App det ails t o t he Journey Manager t eam.

Install the Transact for Salesforce App


Inst all t he latest version of t he Transact for Salesforce App t hat support s your version of Manager:

To commence inst allat ion of a Salesforce package, upon opening t he package URL in t he browser you are required
t o login t o t he Salesforce environment t hat you wish t o inst all int o.

When inst alling t he package it is best t o elect t o Inst all for All Users as shown below. This will avoid users being
unable t o access t he app due t o insufficient privileges.

If you have already inst alled t he app for Admins Only or Specific Profiles and some users are unable t o access
t he app due t o Insufficient Privileges, you can resolve t his issue as described in Insufficient Privileges: You
do not have t he level of access necessary t o perform t he operat ion you request ed...

Create the API User Account in Salesforce

We recommend you creat e a separat e Salesforce user account dedicat ed t o Manager int egrat ions. This allows
you t o keep your real user credent ials privat e and let s you rest rict t he permissions of t he int egrat ion user as
appropriat e.

Int egrat e Salesforce wit h Manager - 641 -


To creat e t he user and it s permission profile for API level int egrat ion, cont act your Salesforce administ rat or or refer
t o t he Salesforce document at ion. The following it ems should be considered when doing so:

1. Suggest ed User Account at t ribut es:

l First Name - blank


l Last Name - Transact
l Alias - t ransact
l Email - Suggest using t he email address of your Salesforce administ rat or
l Username - t ransact @yourdomain.com.<environment > . Append t he environment name for non-prod
environment s
l Nickname - Transact
2. The user must have API access enabled
3. See also: ht t ps:/ / help.salesforce.com/ HTViewHelpDoc?id=int egrat e_what _is_api.ht m&language=en_US
4. The user must have full access t o t he Avoka cust om object s t o deliver submission records int o Salesforce.
The app package includes permission set s t o help manage user access t o Manager object s. Allocat e t he
included Manager administ rat or permission set t o t his user.
5. The user must also have appropriat e permissions t o any object s you may wish t o updat e when a submission
is delivered as t hese updat e funct ions will be performed as t his API user.
6. Ensure t he user is licensed t o use t he Transact for Salesforce App - How t o manage user licensing for t he
Salesforce App

It is import ant t o underst and t he impact s of password expiry on int egrat ion user account s.

Create the Manager Connected App in Salesforce


1. Under App Set up, click Creat e > Apps
2. Under Connect ed Apps, click N ew
3. Suggest ed Connect ed App at t ribut es:

l Connect ed App Name - Transact Connect or


l API Name - Transact _Connect or
l Cont act Email - Suggest using t he email address of your Salesforce administ rat or
4. Ensure Enable OAut h Set t ings is checked wit h t he following at t ribut es set :

Int egrat e Salesforce wit h Manager - 642 -


l Enable OAut h Set t ings - Yes (select ed)
l Callback URL - ht t ps:/ / <Transact Domain>/ sfdc/ secure/ account / home.ht m , where <Transact Domain> is
t he domain of your Transact environment
l Use Digit al Signat ures - No (unselect ed)
l Select ed OAut h Scopes - Access and manage your dat a, Access your basic informat ion, Provide access t o
your dat a via t he Web. It is import ant t o set all and only t hese 3 scopes
5. Under Web App Set t ings ent er t he following values:
l St art URL - ht t ps:/ / <Transact Domain>/ sfdc/ servlet / Smart Form.ht ml?formCode=AT4SF-canvas , where
<Transact Domain> is t he domain of your Manager environment
l Enable SAML - No (unselect ed)
6. Under M obile App Set t ings leave blank.
7. Under Canvas App Set t ings ensure Force.com Canvas is select ed and ent er t he following values:
l Force.com Canvas - Yes (select ed)
l Canvas App URL - ht t ps:/ / <Transact Domain>/ sfdc/ servlet / Smart Form.ht ml?formCode=AT4SF-canvas ,
where <Transact Domain> is t he domain of your Manager environment
l Access Met hod - Signed Request (POST)
l SAML Init iat ion Met hod - None
l Locat ions (Select ed) - Chat t er Tab, Layout s and Mobile Cards, Visualforce Page
l Lifecycle Class - leave blank
8. Click Save t o updat e t he changes.

Configure Permitted Users for the Connected App


The app current ly only support s Administ rat or Approved users.

1. Under 'Administ rat ion Set up', click Manage Apps > Connect ed Apps.
2. Locat e t he Manager connect ed app and click Edit .
3. Under 'OAut h Policies' select ed 'Admin approved users are pre-aut horized' for Permit t ed Users.

4. Click Save t o updat e t he changes.


5. Again under 'Administ rat ion Set up', click M anage Apps > Connect ed Apps, locat e your applicat ion and
click t he App name link t o view t he det ail page.
6. Under Profiles, click M anage Profiles and select t he profiles you wish t o pre-approve for app usage. This is
t ypically Syst em Administ rat or and St andard User.
7. Click Save t o updat e t he changes.

Create the API Named Credential in Salesforce

If your int egrat ion scenarios include pushing form t ask assignment s from Salesforce t o Avoka in bat ch or

Int egrat e Salesforce wit h Manager - 643 -


wit hin an Apex t rigger (not very common), you will need t o set up an API user in Avoka and configure t he
named credent ial in Salesforce. The named credent ial is not required for ot her scenarios and t his st ep may be
skipped.

1. Under Administ rat ion Set up, click Securit y Cont rols > Named Credent ials
2. Under Named Credent ials, click New Named Credent ial and ent er t he following Named Credent ial at t ribut e
values:
l Label - Transact API Credent ial
l Name - Transact _API_Credent ial, which must mat ch t his exact ly
l URL - ht t ps:/ / <Transact Domain>/ manager/ secure/ rest / groovy-service-invoke/ v2/ at 4sf-post request / v1/ ,
where <Transact Domain> is t he domain of your Manager environment , t he version number at t he end
(v1) must refer t o t he version of t he AT4SF-Post Request service in Manager t hat you wish t o call (version 1
at t he t ime of writ ing). For older Manager environment you may need t o use t he GroovyServiceServlet
URL, such as ht t ps:/ / <Transact Domain>/ manager/ secure/ GroovyServiceServlet ?sfmServiceName=AT4SF-
Post Request
l Cert ificat e - leave blank unless you have cert ificat e based aut hent icat ion in place.
l Ident it y Type - Named Principal
l Aut hent icat ion Prot ocol - Password Aut hent icat ion
l Username and Password - t he username and password used must correspond t o a user who belongs t o
t he required organizat ion.
3. Click Save t o updat e t he changes.

For t he IP Whit e-List ing, be aware t hat if your Manager server has IP whit e-list ing enabled, you will need t o
add t he Salesforce IP ranges t o t he whit e-list for t he t ask creat ion calls t o be successful. See:

l ht t ps:/ / help.salesforce.com/ art icleView?id=000003652&t ype=1


l Post Request : 403 Forbidden - You don't have permission t o access / man-
ager/ secure/ GroovyServiceServlet on t his server.

Information required by the Journey Manager Team


Once t he int egrat ion User Account and Connect ed App have been correct ly configured in Salesforce, t he Manager
administ rat ion st aff will require t he following informat ion:

Int egrat e Salesforce wit h Manager - 644 -


l Salesforce Login URL, for example, ht t ps:/ / login.salesforce.com or ht t ps:/ / t est .salesforce.com.
l API User - Username
l API User - Password
l API User - Securit y Token
l Connect ed App - Consumer Key
l Connect ed App - Consumer Secret

To ret rieve t his informat ion from Salesforce

l How t o ret rieve t he Securit y Token for a Salesforce User Account .


l How t o ret rieve t he Consumer Key and Secret for a Salesforce Connect ed App.

Next , learn how t o make forms available for Salesforce users.

Int egrat e Salesforce wit h Manager - 645 -


Enable Access to the Transact for Salesforce App
Journey Platform | All Personas | 5.1 & Higher

You can give user profiles access t o t he Transact for Salesforce App pages using t he Salesforce App Menu.

To enable access t o t he TTransact for Salesforce App:

1. Under App Set up, click Creat e > Apps.


2. Under Apps, click Edit next t o t he Transact App.
3. Under Assign t o Profiles on t he App Edit Page, select t he user profiles t hat you wish t o give access t o t he
Transact for Salesforce App.
4. Click Save t o updat e t he changes.

Next , learn how t o group forms using form categories

Enable Access t o t he Transact for Salesforce App - 646 -


M anage User Licenses
Journey Platform | All Personas | 5.1 & Higher

You can manage which users are licensed t o use t he Transact for Salesforce App when a limit ed number of user
license is available.

If your organizat ion has a sit e license for t he Transact for Salesforce App, all users will aut omat ically be
licensed and no license management will be required. This is relevant where your organization has purchased
a limit ed number of seat s.

To manage user license:

1. Under App Set up > Inst alled Packages, click M anage Licenses next t o t he Transact for Salesforce App
package
2. Under Licensed Users, add and remove licensed users as required.

3. Click Save t o updat e t he changes.

Next , learn how t o troubleshoot Transact for Salesforce App .

Manage User Licenses - 647 -


Retrieve the Consumer Key and Secret for the Salesforce
App
Journey Platform | All Personas | 5.1 & Higher

If you're set t ing up t he Salesforce int egrat ion using a Connect ed App, you'll need t o get your Consumer Key, Secret
and Securit y Token from Salesforce.

To ret rieve t he key and secret :

1. Login t o Salesforce wit h t he t arget user account .

2. Select App Set up and click Creat e > Apps.


3. Open t he Connect ed App t arget and ret rieve t he Consumer Key and Consumer Secret from t he API
(oAut h) sect ion.

The Consumer Secret may be prot ect ed by a Click t o reveal link.

Next , learn how t o retrieve the security token for the Salesforce user account .

Ret rieve t he Consumer Key and Secret for t he Salesforce App - 648 -
Retrieve the Security Token for the Salesforce User Account
Journey Platform | All Personas | 5.1 & Higher

Each Salesforce user account has an associat ed securit y t oken t hat is commonly required when int egrat ing wit h
Salesforce. Your Salesforce securit y t oken should have been emailed t o you when you set up your Salesforce
account or t he last t ime you reset your password. If you don't know t he securit y t oken for a select ed user account ,
t here is no way t o ret rieve it t hrough t he UI, so you may want t o first search for it t hrough old emails sent t o t he
user's regist ered email address before reset t ing t he securit y t oken.

If t he user account is already being used for int egrat ion purposes, reset t ing t he securit y t oken may break
t hese int egrat ions unt il t hey are updat ed wit h t he new t oken.

To ret rieve t he securit y t oken:

1. Login t o Salesforce wit h t he t arget user account .

2. Click Username in t he t op right and select Set up or M y Set t ings from t he menu.
3. Under Personal Set up, click M y Personal Informat ion > Reset M y Securit y Token .

If you can't see t he Reset M y Securit y Token opt ion, see Missing "Reset My Security Token" Option
in t he t roubleshoot ing guide.

4. Click Reset Securit y Token .


5. Check t he User's email inbox for an email from Salesforce advising of t he new securit y t oken.

Next , learn how t o manage user license for the Salesforce app .

Ret rieve t he Securit y Token for t he Salesforce User Account - 649 -


Remove Password Expiry on a Salesforce User Account
Journey Platform | All Personas | 5.1 & Higher

When set t ing up an API int egrat ion user wit h Salesforce, a password expiry event will break t he int egrat ion wit h
lit t le or no warning. You can disable password expiry for t hese select ed users only and keep your int egrat ion chan-
nels open.

Creating a 'Password Never Expires' Permission Set


Follow t his procedure t o creat e a permission set t hat will disable password expiry:

1. Under Administ rat ion Set up, click Manage Users > Permission Set s
2. Creat e a new Permission Set wit h label 'Password Never Expires' and save
3. Edit t he Syst em Permissions against t his Permission Set , select t he 'Password Never Expires' permission and
save

Adding the 'Password Never Expires' Permission Set to a User Account


Once you have creat ed t he 'Password Never Expires' Permission Set , follow t his procedure t o add t he permission
set t o a select ed user account :

1. Under Administ rat ion Set up, click Manage Users > Users
2. Open t he t arget user account and edit Permission Set Assignment s
3. Add t he 'Password Never Expires' Permission Set .

4. Click Save t o updat e t he changes.

To improve securit y for int egrat ion user account s you could look at one or more of t he following st rat egies:

l Limit permissions t o only t he object s it needs t o access


l Enable IP address rest rict ions t o t he IP ranges of t he int egrat ing syst em(s)
l Turn off int egrat ion client s (e.g. Out look)
l Turn off all t abs

Next , learn how t o restrict access for selected forms to user groups.

Remove Password Expiry on a Salesforce User Account - 650 -


Configure the Transact for Salesforce App UI in Salesforce
Journey Platform | All Personas | 5.1 & Higher

You can configure t he Transact for Salesforce AppCanvas UI in Salesforce so t hat users can access t his UI on t he
object det ail pages.

Create the Visualforce Page


A Visualforce page needs t o be creat ed for each Salesforce object t ype you wish t o make t he Transact for Sales-
force App UI available for. In t his example, we will out line t he process for enabling t he UI for t he Cont act object .

1. Select App Set up and click Develop > Pages.


2. Select Visualforce Pages and click N ew .
3. Suggest ed Page At t ribut es:

l Label - Transact - Cont act


l Name - Transact _Cont act
l Descript ion - Cont ains t he view for t he Cont act object .
l Leave default s for ot her opt ions
4. Ent er t he following Visualforce Markup and click save:

Configure t he Transact for Salesforce App UI in Salesforce - 651 -


<apex:page standardController="Contact">
<!-- Begin Transact App -->
<div id="transact-container"></div>
<apex:canvasApp applicationName="Avoka_Transact_Connector"
containerId="transact-container"
width="100%"
border="0"
scrolling="no"
height="350px"
maxHeight="infinite"
parameters="{
SObjectId:'{!HTMLENCODE(Contact.Id)}',
SObjectType:'Contact',
ContactFirstName:'{!HTMLENCODE(Contact.FirstName)}',
ContactLastName:'{!HTMLENCODE(Contact.LastName)}',
ContactEmail:'{!HTMLENCODE(Contact.Email)}',
EnableUserView:'false',
EnableObjectView:'true',
EnableNewForm:'true',
EnableGlobalSearch:'true'
}" />
<!-- End Transact App -->
</apex:page>

5. Click Save t o updat e t he changes.

Configure t he Transact for Salesforce App UI in Salesforce - 652 -


Visualforce Markup Attributes

Configure t he Transact for Salesforce App UI in Salesforce - 653 -


l st andardCont roller="Cont act " - should be set t o t he name of t he object you wish t o present t he Visualforce
page on - in t his case 'Cont act ', if we were creat ing a Visualforce page for t he Account object t his value would
be 'Account '
l applicat ionName="Avoka_Transact _Connect or" - should be set t o t he name of t he Avoka Transct connect ed
app t hat has been configured - in t his case Avoka_Transact _Connect or
l cont ainerId="t ransact -cont ainer" - set t he cont ainerId t o t he id of t he div above t he canvas app definit ion - in
t his case t ransact -cont ainer
l widt h="100%" - St ret ch t he canvas app t o t he full available widt h
l border="0" - Use no border on t he frame
l scrolling="no" - set scrolling off because we enable t he scrollbars in t he page layout (see next sect ion)
l height ="350px" - default height of app

l maxHeight ="infinit e" - app can grow in height unconst rained


l Paramet er SObject Id - (required) t he Id of t he Sobject being accessed - in t his case just t aking t he Id of t he
current Cont act record
l Paramet er SObject Type - (required) a plain english name for t he t ype of t he SObject being accessed, may be
used in some places t hroughout t he Canvas UI
l Paramet er Cont act First Name - (opt ional) The first name of t he cont act for 'Send t o Cont act ' forms. As we are
illust rat ing wit h t he Cont act record we are able t o t ake t he Cont act 's first name, but for ot her object t ypes
we may leave t his paramet er out
l Paramet er Cont act Last Name - (opt ional) The last name of t he cont act for 'Send t o Cont act ' forms. As we are
illust rat ing wit h t he Cont act record we are able t o t ake t he Cont act 's last name, but for ot her object t ypes we
may leave t his paramet er out

l Paramet er Cont act Email - (opt ional) The default value t o include for t he email address of t he cont act for
'Send t o Cont act ' forms. As we are illust rat ing wit h t he Cont act record we are able t o t ake t he Cont act 's
email, but for ot her object t ypes we may leave t his paramet er out
l Paramet er EnableUserView - (opt ional) A 't rue' or 'false' flag t o indicat e whet her t o show t he User's My
Forms page in t he Canvas App. Default is false.
l Paramet er EnableObject View- (opt ional) A 't rue' or 'false' flag t o indicat e whet her t o show t he Object Forms
page in t he Canvas App. Default is false.
l Paramet er EnableNewForm- (opt ional) A 't rue' or 'false' flag t o indicat e whet her t o show t he New Form page
in t he Canvas App. Default is false.
l Paramet er EnableGlobalSearch- (opt ional) A 't rue' or 'false' flag t o indicat e whet her t o show t he Search page
in t he Canvas App. Default is false.
l Paramet er Init ialView - (opt ional) The name of t he page t o present when t he Canvas App loads. Valid values
are 'UserView', 'Object View', 'NewForm', 'GlobalSearch'. Default is t o init ialise on t he first included page on
t he left .
l Paramet er FormCat egoryFilt er - (opt ional) {Version 1.5} A comma separat ed list of form cat egory names t o
present in t he New Form view. Cat egory names should exact ly mat ch t he names in Transact ion Manager.
Wit hout t his paramet er, all available cat egories cont aining forms will be present ed.

Configure t he Transact for Salesforce App UI in Salesforce - 654 -


The HTMLENCODE direct ive is required for paramet er values t o avoid unescaped charact ers.

Add the Visualforce page to the Page Layout


1. Under App Set up, click Cust omize > Cont act s > Page Layout s.
2. Under Cont act Page Layout s find Cont act Layout and click edit .
3. In t he widget palet t e at t he t op, choose Visualforce pages.
4. Drag a new Sect ion ont o t he page in t he locat ion you want t he UI t o appear.
5. Name it as Transact .

6. Clear t he Edit Page and choose 1-Column layout .

7. Drag t he Visualforce page int o t he sect ion just creat ed.

8. Click Save t o updat e t he changes.


9. Edit t he Forms propert ies, set height t o 350px and select Show Scrollbars.
10. Click Save t o updat e t he changes.

Next , learn how t o enable access to restricted forms

Configure t he Transact for Salesforce App UI in Salesforce - 655 -


Configure Transact for Salesforce App
Journey Platform | All Personas | 5.1 & Higher

You can configure Manager t o int egrat e it wit h t he Salesforce App, which has t o be done once before t he first use.

Check t hat t he Salesforce support was included when Manager was inst alled.

To check t he Salesforce support is included:

1. Log on t o Manager.

2. Select Forms > Form Spaces and search for t he Salesforce space.
3. If t he Salesforce space exist s, t he inst allat ion was done correct ly and you can proceed wit h t he following con-
figurat ion.
4. If t he Salesforce support is not inst alled, submit a request t o t he Temenos Cloud Host ing Team (ACS port al)
t o inst all t he Salesforce support module.

To configure your Manager environment t o support t he Transact for Salesforce App:

1. Creat e t he API User Account in Manager


2. Import t he Manager ext ension packages
3. Configure t he import ed modules

Create the API User Account in Manager

This st ep is only required if you are performing t ask assignment operat ions from Salesforce t o Manager.

1. Select Securit y > User Account s


2. Click N ew
3. Select t he User Det ails t ab and ent er t he following values:
l Login Name - at 4sf-client
l User Type - Local
l Password - t ake a not e of t he password you use and ensure t he Change Password Aft er Login check-
box is unselect ed
l Given Name(s) - AT4SF
l Family Name - Client User
l Email - use t he email address of your Manageror Salesforce administ rat or
l Port al - Manager
4. Click Save t o updat e t he changes.

Configure Transact for Salesforce App - 656 -


5. Select t he Roles t ab and assign t he Administ rat or role t o t he user.
6. Click Save t o updat e t he changes.
7. Select t he Organizat ions t ab and assign your organizat ion t o t he user.
8. Click Save t o updat e t he changes.

Configure the Salesforce API Client Details


1. Select Services > Service Connect ions
2. Locat e t he Salesforce Service Connect ion and configure it s API credent ials. Alt ernat ively, for more rest rict ed
access you could creat e a new Salesforce API Invoke role wit h t he following minimum permissions:
l Admin Direct ory

l Web Service Invoke


3. Click Save t o updat e t he changes.
4. Updat e t he Securit y Manager set t ings as described in t he Configure t he Securit y Manager sect ion below.

You will need t he connect ed app and Manager user det ails from Salesforce t o complet e t his configurat ion. For
more informat ion, see how to retrieve the consumer key and secret for a Salesforce connected app and how
to retrieve the security token for a Salesforce user account .

Import the Manager Extension Packages


To import t he following extension packages, ideally in t his order:

1. AT4SF-Securit yManager.zip - Cont ains t he OAut h2 Single Sign-On Securit y Manager. Import ed under 'Secur-
it y' > 'Securit y Managers' > 'Import '
2. AT4SF-Services.zip - Import ed under 'Services' > 'All Services' > 'Import '
3. AT4SF-Canvas.zip - Cont ains t he Canvas UI t hat is present ed in t he Salesforce Deskt op environment . Impor-
t ed under 'Forms' > ' Forms' > 'Import Form Version'. Select t he t arget organizat ion in t he import wizard.
4. AT4SF-Test Form.zip - Opt ional t est form handy for verifying t he connect ivit y. Import ed under 'Forms' >
'Forms' > 'Import Form Version'

Configure the Salesforce User Space

Check t hat t he Salesforce support was included when Manager was inst alled.

To associat e t he forms wit h t he space:

1. Select Forms>Organizat ions


2. Click on your organizat ion

Configure Transact for Salesforce App - 657 -


3. Select t he Spaces t ab and select t he Salesforce space as an 'Assigned Space'
4. Click Save t o updat e t he changes.
5. Select Forms>Forms
6. For each of t he forms you wish t o show under t he port al, click on t he form name t o edit t he form
7. On t he Spaces t ab select t he Salesforce space as an 'Assigned Space' and save
8. Don't forget t o do t his for t he Salesforce App form 'AT4SF Canvas'

Configure the Security Manager

You will need t he app connection details from Salesforce t o complet e t his configurat ion.

The securit y manager needs t o be configured against t he t arget Salesforce connect ed app and assigned t o t he
Salesforce User Space as follows:

1. Select Securit y > Securit y M anagers


2. Locat e and open t he AT4SF-UserSecurit yManager and navigat e t o t he Paramet ers t ab.
3. Edit t he 'Client Id' and 'Client Secret ' paramet ers and updat e t o t he Consumer Key and Consumer Secret val-
ues from t he Salesforce connect ed app (see art icle linked above).
4. If required, edit t he URI paramet ers t o ensure t he correct domain name is being used. By default t he domain
will be t he primary Salesforce login domain but for sandbox environment s t his may need t o be changed t o
t est .salesforce.com.
5. If you are using a t est Salesforce inst ance (where t he login page is under ht t ps:/ / t est .salesforce.com/ ) you will
need t o updat e each of t he 3 URI paramet ers accordingly (Aut h Uri, Token Uri, User Info Uri):
l Aut h Uri - ht t ps:/ / login.salesforce.com/ services/ oaut h2/ aut horize ht t ps:/ / t est .-
salesforce.com/ services/ oaut h2/ aut horize
l Token Uri - ht t ps:/ / login.salesforce.com/ services/ oaut h2/ t oken ht t ps:/ / t est .-
salesforce.com/ services/ oaut h2/ t oken
l User Info Uri - ht t ps:/ / login.salesforce.com/ services/ oaut h2/ userinfo ht t ps:/ / t est .-
salesforce.com/ services/ oaut h2/ userinfo
6. Click Save t o updat e t he changes.
7. Select Forms > Form Spaces, locat e and edit t he 'Salesforce' user space t o ensure t he Salesforce User Space
is configured t o use t he correct securit y manager
8. On t he 'Space' t ab, ensure t he 'AT4SF-UserSecurit yManager' is select ed in t he 'Securit y Manager' field

9. Click Save t o updat e t he changes.

Configure the Delivery Service and Delivery Channel


Before delivery int o Salesforce can occur t he Delivery Service needs t o be referenced by an organizat ion Delivery
Channel as follows:

Configure Transact for Salesforce App - 658 -


1. Select Forms > Organizat ions
2. Locat e and open your organizat ion and navigat e t o t he 'Delivery Channels' t ab.
3. Click 'New' and ent er t he following values

l Name - Salesforce Push Delivery


l Delivery Met hod - Delivery Process
l Descript ion Transact for Salesforce App Generic Push Delivery Channel
l Delivery Process - AT4SF-DeliveryPush
4. Click Save t o updat e t he changes.

Next , learn how t o configure a prefill generator in Salesforce.

Configure Transact for Salesforce App - 659 -


M ake Forms Available for Salesforce Users
Journey Platform | All Personas | 5.1 & Higher

To make a form available t o Salesforce users it must be assigned int o at least one form cat egory and published t o
t he Salesforce User Port al.

Forms t hat are not published t o t he Salesforce User Port al or are not assigned int o at least one form cat egory
will not appear in t he Salesforce Deskt op UI.

To make forms available:

1. Log ont o Manager

2. Select Forms > Forms.


3. Find t he form you wish t o publish t o Salesforce users, open it and navigat e t o t he Spaces t ab, image
below.
4. Assign t he form int o t he Salesforce form space.

5. Ensure t he form is assigned to at least one category ot herwise it will not be accessible from Sales-
force.
6. Click Save t o updat e t he changes.

Next , learn how t o populate a form with Salesforce prefill data

Make Forms Available for Salesforce Users - 660 -


Group Forms Using Form Categories
Journey Platform | All Personas | 5.1 & Higher

The Transact for Salesforce App uses form categories t o visually group forms t oget her, which allows users t o find
relevant forms quickly.

To group forms by form cat egories:

1. Log ont o Manager

2. Select Forms > Organizat ions.


3. Locat e an organizat ion and select t he Form Cat egories t ab.
4. Click N ew t o add the form categories.
5. Click Save t o updat e t he changes.
6. Select Forms > Forms.
7. Locat e each act ive form version of t he form you want t o group and click Edit
8. Select t he Form Cat egories t ab and assign one or more cat egories t o t he form.
9. Click Save t o updat e t he changes.
10. Repeat t he process for all forms you want t o group.

Next , learn how t o integrate Salesforce with Manager

Group Forms Using Form Cat egories - 661 -


Configure Salesforce Delivery Channel
Journey Platform | All Personas | 5.1 & Higher

Any form t hat must be delivered int o Salesforce, for example, sent submissions t o Salesforce, should be configured
wit h t he Salesforce Delivery Channel.

Completed Transaction Delivery


1. Select Forms > Forms.
2. Locat e and open t he form you wish t o configure and select t he Det ails t ab.
3. Under t he Delivery Channels sect ion, select the Salesforce delivery channel for Product ion Delivery, Test
Delivery or bot h.
4. Click Save t o updat e t he changes.

Abandoned Transaction Delivery


1. Select Forms > Forms.
2. Locat e and open t he form you wish t o configure and select t he Abandonment t ab.
3. Under t he Abandoned Transact ion Delivery sect ion, select the Salesforce delivery channel for Aban-
doned Delivery Channel.
4. Click Save t o updat e t he changes.

Saved Transaction Delivery


1. Select Forms > Forms.
2. Locat e and open t he form you wish t o configure, open t he act ive version record and select t he Services t ab.
3. Select t he AT4SF-SavedProcessor service for Form Saved Processor.

4. Click Save t o updat e t he changes.

Next , learn how t o configure a delivery processor in Salesforce.

Configure Salesforce Delivery Channel - 662 -


Configure a Prefill Generator in Salesforce
Journey Platform | All Personas | 5.1 & Higher

You can configure a prefill generat or against a part icular Manager form in Salesforce by following t his process:

1. Ident ify t he dat a in Salesforce t hat you wish t o use for prefill. This configurat ion is done in Salesforce by defin-
ing a Prefill Generat or in t he Prefill Generat ion t ab of t he Manager app as described below.
2. Configure where t hat dat a will be inject ed int o a form's XML dat a st ruct ure at render t ime. This configurat ion
is done in t he Form Dat a Config in Manager and is described here.

Create the Prefill Generator Record


1. In t he App M enu select Transact or simply view All Tabs, t hen select t he Prefill Generat ion Tab and
click N ew.
2. Ent er t he form code of t he form - t his value must exact ly mat ch t he form code in Manager
3. Ret ain t he default Prefill Generat or Class, TransactPrefillGenerator, which allows you t o provide JSON
configurat ion t o cont rol which fields are included in t he prefill generat ion
4. Specify t he Generat or Configurat ion as a JSON st ring according t o t he specificat ion defined in t his art icle
5. You may also specify a Sample SObject Id t hat will allow you t o generat e a Sample Prefill XML value and t est
your configurat ion (Not e t he SObject Id for a Salesforce object can be obt ained from t he URL while viewing
t hat object )
6. Save
7. To t est t he configurat ion (where you have provided a Sample SObject Id), click t he Generat e Sample but t on -
t he generat ed prefill XML dat a will be added t o t he Sample Prefill XML field if your configurat ion is correct .
8. You may copy t he sample prefill XML and use t his in Transact ion Manager t o define your Input XML prefill
mappings for t he form.

Managing Form Versions


Where you need t o perform different prefill generat ion bet ween mult iple versions of a form you may append an
array of versions t o t he form code at t ribut e t o t arget specific versions. For example, you may wish t o have 2 sep-
arat e prefill generat ors, one for t he first version of t he form and anot her for subsequent versions. This will allow
you t o configure t he prefill generat ion for new form versions prior t o act ivat ion of t hose versions.

To ut ilize t his feat ure you must specify t he specific version numbers as an array direct ly aft er t he form code. Some
samples assuming a form code of 'my-form':

l my-form - Default configurat ion t o be used where no specific configurat ion is found for t he request ed ver-
sion. Short hand for use of wildcard my-form[* ].
l my-form[1.0] - Configurat ion for version 1.0 of t he form. Any versions ot her t han 1.0 will fall back t o t he
default configurat ion (where no version is specified).
l my-form[1.0,2.0,3.0] - Configurat ion for versions 1.0, 2.0 and 3.0 of t he form.

Configure a Prefill Generat or in Salesforce - 663 -


JSON Configuration Format
This sect ion describes t he synt ax and support ed direct ives of t he JSON configurat ion consumed by t he Trans-
act PrefillGenerat or class. This art icle assumes knowledge of JSON format t ing. The JSON configurat ion should con-
form t o t he following st ruct ure:

{
"parameters":{
"<param-name>": "<param-value>"
},
"sobjects":{
"<object-type-name>": {
"includeFields": ["<field-name>", ... ],
"includeRelated": ["<relationship-name>", ... ],
"includeCustom": {"<custom-label>": "<custom-value>", ... }
},
...
}
}

The following example configurat ion illust rat es all support ed direct ives:

Configure a Prefill Generat or in Salesforce - 664 -


{
"parameters":{
"rootElementName": "SalesforceData"
},
"sobjects":{
"Contact": {
"includeFields":["Id","FirstName","LastName","Email","Phone","Title"],
"includeRelated":["Account"],
"includeCustom":{"FullName": "{!FirstName} {!LastName}"}
},
"Account": {
"includeFields":["Name","Type","Industry"],
"includeRelated":["Owner","Opportunities"]
},
"Opportunity": {
"includeFields":["Name","Amount"]
},
"User": {
"includeFields":["Name","Email","Username","Manager.Name"]
}
}
}

Supported Parameters
root Element Name - The name t o be given t o t he root element in t he generat ed XML prefill dat a. Default s t o
SFDCPrefillDat a. This is t he opt ional paramet er.

Object Type Definition


A single JSON configurat ion can support any number of Salesforce object t ypes, t hereby allowing t he form t o be
prefilled wit h many different object t ypes. For example, t he same form may be prefilled from a cont act record or a
lead record.

The configurat ion for an object t ype must be cont ained in an at t ribut e labeled wit h t he name of t hat object t ype.
Not e t he configurat ion below for t he Account object :

"Account": {
"includeFields":["Name","Type","Industry"]
}

Configure a Prefill Generat or in Salesforce - 665 -


Dealing with Complex Types
If you wish t o prefill dat a from Salesforce t hat is cont ained in complex t ypes (e.g. Addresses), you should configure
t he individual dat a sub-at t ribut es in your prefill configurat ion. For example, if you want t o prefill t he Shipping
Address from t he Account object , your configurat ion should be similar t o t his:

{
"sobjects":{
"Account": {
"includeFields":["Name","Ship-
pingStreet","ShippingCity","ShippingState","ShippingPostalCode","ShippingCountry"]
}
}
}

The includeFields Directive (Required)


The includeFields direct ive is required for all object prefill definit ions and allows you t o explicit ly specify t he fields t o
be included in t he prefill dat a wit h t he following considerat ions:

l The field list should be provided as a comma separat ed list of st ring lit t erals where each it em specifies t he
field name, not t he label of t he field.
l Parent and referent ial relat ionships can be leveraged by using t he 'dot ' not at ion t o t raverse t he relat ionships
by t he name of t he relat ionship (E.g. "includeFields": "First Name,Last Name,Owner.Name"). Not e: if a child
relat ionship is specified it will be ignored, but child relat ionships are support ed in t he includeRelat ed dir-
ect ive.
l Include t he Id field if you want t o support form user edit s t o t he object informat ion. If t he Id value is present
when t he compet ed submission is processed on it s ret urn t o Salesforce, t he delivery processor may use t his
Id t o updat e t he object according t o t he updat es made in t he form.

The includeRelated Directive (Optional)


The includeRelat ed direct ive is opt ional and allows you t o specify relat ed object s t o include in t he prefill dat a wit h
t he following considerat ions:

l Specifying a relat ed ent it y requires t hat t he object t ype definit ion exist s in t he JSON configurat ion for t hat
relat ed ent it y.
l The object t ype definit ion must specify t he name of t he object t ype, not t he name of t he relat ionship. As an
example, consider t he direct ive "includeRelat ed":"Owner". The relat ionship name is 'Owner' but t he relat ed
ent it y is a 'User' so t he JSON configurat ion must cont ain an object definit ion named 'User'.
l Child relat ionships are support ed, provided t hat t he object is not it self a child of t he primary prefill ent it y.

Configure a Prefill Generat or in Salesforce - 666 -


The includeCustom Directive (Optional)
l The includeCust om direct ive is opt ional an allows you t o specify cust om fields t o include in t he prefill dat a
wit h t he following considerat ions:
l Hard coded values may be used. E.g. "includeCust om":{"CampaignCode":"FF102"}
l Field references t o t he object cont ext may be used but t he referenced fields must be specified in t he
includeFields direct ive. E.g. "includeCust om":{"FullName": "{!First Name} {!Last Name}"}

XML Prefill Data Generation


The Transact PrefillGenerat or int erpret s t he JSON configurat ion and generat es t he XML dat a used t o prefill t he
form according t o t he following rules:

Configure a Prefill Generat or in Salesforce - 667 -


l XML root element is always named 'SFDCPrefillDat a' unless an alt ernat ive root element name is specified.
l Each sub-node wit hin t he root element represent s a single Salesforce object or a list of object s
l All fields specified in t he includeFields or includeCust om direct ives will be included in t he object node
l Where a relat ed field is specified in t he includeFields direct ive (E.g. Manager.Name), t hat field will generat ed
t he parent object node in a cont aining element named according t o t he relat ionship
l Where t he includeRelat ed direct ive includes a parent or referencial relat ionship (E.g.
"includeRelat ed":"Owner"), t he object node for t he relat ed object will be added t o t he XML root node and
named according t o t he relat ionship, as shown below.

<Owner>
<Name>Jeff Johnson</Name>
<Manager>
<Name>Jenny Quack</Name>
</Manager>
</Owner>

l Where t he includeRelat ed direct ive includes a child relat ionship, a list cont ainer node will be added t o t he
XML root node and named according t o t he relat ionship, each object node wit hin t he cont ainer will be
named wit h t he object t ype name, as shown below

<Opportunities>
<Opportunity>
<Name>Chicago City Store Displays</Name>
<Amount>$50,000.00</Amount>
</Opportunity>
<Opportunity>
<Name>San Francisco Mobile Signage</Name>
<Amount>$28,000.00</Amount>
</Opportunity>
</Opportunities>

The following block illust rat es an example of t he XML prefill dat a produced by t he generat ion engine:

Configure a Prefill Generat or in Salesforce - 668 -


<?xml version="1.0" encoding="UTF-8"?>
<SFDCPrefillData>
<Contact>
<Id>00390000015C9LBAA0</Id>
<FirstName>Kristen</FirstName>
<LastName>Akin</LastName>
<Title>Director, Warehouse Mgmt</Title>
<Phone>(434) 555-3100</Phone>
<Email>kakin@sony.com</Email>
<FullName>Kristen Akin</FullName>
</Contact>
<Account>
<Name>Volley Music</Name>
<Type>Customer - Direct</Type>
<Industry>Retail</Industry>
</Account>
<Owner>
<Name>Jeff Johnson</Name>
<Email>jj@domain.com</Email>
<Username>jj@domain.com</Username>
<Manager>
<Name>Jenny Quack</Name>
</Manager>
</Owner>
<Opportunities>
<Opportunity>
<Name>Chicago City Store Displays</Name>
<Amount>$50,000.00</Amount>
</Opportunity>
<Opportunity>
<Name>San Francisco Mobile Signage</Name>
<Amount>$28,000.00</Amount>
</Opportunity>
</Opportunities>
<User>
<Name>Johny Lighning</Name>
<Email>jl@domain.com</Email>
<Username>jl@domain.com</Username>
<Manager>
<Name>Jack Sparrow</Name>
</Manager>
</User>
</SFDCPrefillData>

Configure a Prefill Generat or in Salesforce - 669 -


Custom Prefill Generators
Where t he default prefill generat or does not provide t he level of cont rol required, you may define your own prefill
generat or by developing an APEX class t hat implement s t he ITransact PrefillGenerat or int erface. To ut ilize your cus-
t om prefill generat or, simply specify t he class name in t he relevant Prefill Generat or record and any configurat ion
required by t he class.

global interface ITransactPrefillGenerator {

/**
* This function generates the prefill XML data based on the config provided.
*
* @param prefillObjectId The Id of the object to use for prefill generation
* @param formPrefillConfig The string containing the generation config
* @return The generated prefill XML data
*/
String generatePrefillXml(Id entityId, String config);
}

Next , learn how t o configure the Transact for Salesforce App UI in Salesforce

Configure a Prefill Generat or in Salesforce - 670 -


Populate a Form with Salesforce Prefill Data
Journey Platform | All Personas | 5.1 & Higher

Configurat ion of form pre-populat ion from Salesforce generat ed prefill dat a is managed by t he st andard Input
XML Prefill Mappings in t he form dat a config. For more informat ion on how t o configure prefill dat a generat ion in
Salesforce, see t his documentation .

To populat e a form wit h Salesforce prefill dat a:

1. Log ont o Manager

2. Select Forms > Forms


3. Locat e and open t he form you wish t o pre-populat e.

4. From t he Dashboard t ab open t he Dat a Config page of t he act ive form version and navigat e t o t he 'Input
XML Prefill Mapping' t ab.
5. Click N ew Input XM L and past t he Sample Prefill XML from t he Salesforce Prefill Generat or, ent er a version
name.
6. Click Save t o updat e t he changes.
7. Click Edit XM L M apping and map each input dat a element wit h t he t arget element in t he form XML.
8. Click Save t o updat e t he changes.

The Input XML Prefill Mappings do not accommodat e mapping for repeat ing element s, so if you are generat ing pre-
fill dat a t hat has mult iple records of informat ion in it (e.g. all cases relat ed t o a cont act ) t here is current ly no simple
process available out -of-t he-box t o map t his int o t he form and a more cust omized solut ion will need t o be
assessed.

Next , learn how t o receive administrator alerts when delivery processing fails.

Populat e a Form wit h Salesforce Prefill Dat a - 671 -


Configure a Delivery Processor in Salesforce
Journey Platform | All Personas | 5.1 & Higher

You can configure a delivery processing funct ion against a part icular Manager form in Salesforce, so t hat you can
updat e your st andard and cust om Salesforce object s wit h dat a from t he submit t ed form. The considerat ion as t o
which object t o creat e or updat e in Salesforce is t ypically unique t o t he use case being t arget ed but oft en t his
involves t he Cont act or Lead object s.

For more informat ion on t he Salesforce st andard object s, see Salesforce sales objects

Create the Delivery Processor Record


1. In t he App M enu select Transact or simply view All Tabs, t hen select t he Delivery Processing
Tab and click new.
2. Ent er t he form code of t he form - t his value must exact ly mat ch t he form code in Manager.
3. Ret ain t he default Delivery Processor Class, TransactDeliveryProcessor, which allows you t o
provide JSON configurat ion t o cont rol what object s are affect ed by t he submission and how.
4. Specify t he Processing Configurat ion as a JSON st ring, as described below.

5. Click Save t o updat e t he changes.

Delivery Trigger Types


Delivery records are received from Manager according t o t he specified t riggers. Transact ions are t ypically
delivered when complet ed, but t hey can also be delivered when t he t ransact ion has been saved or deemed t o
be abandoned, t o facilit at e lead generat ion and follow up.

Managing Form Versions


Where you need t o perform different delivery processing funct ions bet ween mult iple versions of a form you
may append an array of versions t o t he form code at t ribut e t o t arget specific versions. For example, you may
wish t o have 2 separat e delivery processing funct ions, one for t he first version of t he form and anot her for sub-
sequent versions. This will allow you t o cont inue t o accept deliveries for in-flight t ransact ions on old form ver-
sions aft er a new version is act ivat ed.
To ut ilize t his feat ure you must specify t he specific version numbers as an array direct ly aft er t he form code.
Some samples assuming a form code of 'my-form':

Configure a Delivery Processor in Salesforce - 672 -


l my-form Default configurat ion t o be used where no specific configurat ion is found for t he request ed ver-
sion. Short hand for use of wildcard my-form[* ].
l my-form[1.0] Configurat ion for version 1.0 of t he form. Any versions ot her t han 1.0 will fall back t o t he
default configurat ion (where no version is specified).
l my-form[1.0,2.0,3.0] Configurat ion for versions 1.0, 2.0 and 3.0 of t he form.

JSON Configuration Format


The Transact PrefillGenerat or class uses t he following JSON configurat ion:

{
"parameters":{
"<param-name>": "<param-value>"
},
"sobjects":{
"<object-label>": {
"type": "<object-api-name>",
"matchFields": ["<field-name>", ... ],
"insertFields": ["<field-name>", ... ],
"updateFields": ["<field-name>", ... ],
"sourceFields": {
"<field-name>": "<field-mapping>",
...
},
"relations": {
"<relationship-name>": "<object-label>",
...
}
},
...
}
}

The following example configurat ion illust rat es all support ed direct ives:

Configure a Delivery Processor in Salesforce - 673 -


{
"parameters": {
"formAssociationTarget":"new-case",
"attachmentTarget":"new-case",
"receiptTarget":"new-case",
"caseNumber":"new-case.CaseNumber"
},
"sobjects": {
"parent-account": {
"type": "Account",
"insertFields":[],
"updateFields":[],
"sourceFields" : {
"Id":"[!XML://Account/AccountId]"
}
},
"my-contact": {
"type": "Contact",
"matchFields":["LastName","Email"],
"insertFields":["*"],
"updateFields":["Email","Phone","MobilePhone","Title","Department"],
"sourceFields" : {
"Id":"[!XML://Contact/ContactId]",
"Salutation":"[!XML://Contact/Title]",
"FirstName":"[!XML://Contact/FirstName]",
"LastName":"[!XML://Contact/LastName]",
"Phone":"[!XML://Contact/Phone]",
"MobilePhone":"[!XML://Contact/Mobile]",
"Email":"[!XML://Contact/Email]",
"Title":"[!XML://Contact/Position]",
"Department":"[!XML://Contact/Department]"
},
"relations": {
"Account": "parent-account"
}
},
"new-case": {
"type": "Case",
"insertFields":["*"],
"updateFields":["*"],
"sourceFields" : {
"Type":"[!XML://IssueDetails/IssueType]",
"Reason":"[!XML://IssueDetails/Reason]",
"Subject":"[!XML://IssueDetails/Summary]",

Configure a Delivery Processor in Salesforce - 674 -


"Description":"[!XML://IssueDetails/Description]",
"Origin":"Web"
},
"relations": {
"Account": "parent-account",
"Contact": "my-contact"
}
}
}
}

The list of support ed paramet ers is shown below:

l formAssociat ionTarget - (Opt ional) The object (specified by referencing t he relevant <object -label>) t o asso-
ciat e t he Manager form wit h so t hat it appears against t hat object in t he Canvas App.
l at t achment Target - (Opt ional) The object (specified by referencing t he relevant <object -label>) t o add t he sub-
mit t ed at t achment s t o.
l receipt Target - (Opt ional) The object (specified by referencing t he relevant <object -label>) t o add t he gen-
erat ed PDF receipt t o.
l caseNumber - (Opt ional) The field (specified by referencing t he <object -label>.<field-name>) from which t o
ret rieve t he Salesforce case number. This case number is ret urned t o Manager and st ored against t he sub-
mission.

Object Type Definition


A single JSON configurat ion can define impact s t o any number of Salesforce object s. Each object configurat ion
must be given a label t hat is unique in t he configurat ion. Not e t he configurat ion below for a Cont act object :

Configure a Delivery Processor in Salesforce - 675 -


"my-contact": {
"type": "Contact",
"matchFields":["LastName","Email"],
"insertFields":["*"],
"updateFields":["Email","Phone","MobilePhone","Title","Department"],
"sourceFields" : {
"Id":"[!XML://Contact/ContactId]",
"Salutation":"[!XML://Contact/Title]",
"FirstName":"[!XML://Contact/FirstName]",
"LastName":"[!XML://Contact/LastName]",
"Phone":"[!XML://Contact/Phone]",
"MobilePhone":"[!XML://Contact/Mobile]",
"Email":"[!XML://Contact/Email]",
"Title":"[!XML://Contact/Position]",
"Department":"[!XML://Contact/Department]"
},
"relations": {
"Account": "parent-account"
}
}

The matchFields Directive (Optional)


The Transact for Salesforce App version 1.5 . The mat chFields direct ive provides a basic de-duplicat ion funct ion by
first searching for a mat ching record before det ermining whet her t o perform an insert or updat e. To ut ilize t his
opt ional funct ion, provide an array of Salesforce field names t hat should be used t o ident ify an exist ing record. If a
record is found in Salesforce where ALL t he list ed fields are an exact mat ch for t he informat ion provided in t he
form, t his record will be updat ed.

l The field list should be provided as a comma separat ed list wit h no spaces or new lines where each it em spe-
cifies t he field name, not t he label of t he field.

For example, t he following direct ive will cause t he delivery processor t o search for a Cont act object wit h mat ching
Last Name and Email:

"my-contact": {
"type": "Contact",
"matchFields":["LastName","Email"],
...

Configure a Delivery Processor in Salesforce - 676 -


The insertFields Directive (Required)
The insert Fields direct ive is required for all object definit ions and allows you t o explicit ly define which fields will be
used in an insert scenario (when an Id value is not available).

l The field list should be provided as a comma separat ed list wit h no spaces or new lines where each it em spe-
cifies t he field name, not t he label of t he field.
l The field list should not include t he "Id" field.
l A wild card value of "* " may be used t o denot e t hat all sourced fields should be affect ed in t he insert .

The updateFields Directive (Required)


The updat eFields direct ive is required for all object definit ions and allows you t o explicit ly define which fields will be
used in an updat e scenario (when an Id value is available).

l The field list should be provided as a comma separat ed list wit h no spaces or new lines where each it em spe-
cifies t he field name, not t he label of t he field.
l There is no need t o include t he "Id" field - it will be added aut omat ically if it is available.
l A wild card value of "* " may be used t o denot e t hat all sourced fields should be affect ed in t he updat e.

The sourceFields Directive (Required)


The sourcefields direct ive is required for all object definit ions and allows you t o define t he mappings from t he sub-
mit t ed XML dat a int o t he object fields.

"sourceFields" : {
"Id":"[!XML://Contact/ContactId]",
"Salutation":"[!XML://Contact/Title]",
"FirstName":"[!XML://Contact/FirstName]",
"LastName":"[!XML://Contact/LastName]",
....
}

Configure a Delivery Processor in Salesforce - 677 -


l Hard-coded values may be used inst ead of XML mappings where appropriat e, for example, "Ori-
gin":"Web"
l XML mappings can be specified such t hat values from t he XML submission dat a are inject ed int o t he fields at
processing t ime. XML mappings must be st ruct ured, for example, [!XML://<xml location>]

where <xml locat ion> is t he URI t o t he XML element cont aining t he required value. Not e t he root XML
node is not specified in t he locat ion.
If your dat a cont ains repeat ing nodes t han you may t arget a specific node index t o pull dat a from a spe-
cific node by specifying t he node index (st art ing at zero) in parent heses. For example t he following map-
ping will pull t he Email dat a element from t he 2nd Applicant node in t he XML:
[!XML://Applicants/Applicant(1)/Email]

l Version 1.8 . Lookup fields can be populat ed wit h record Ids of relat ed object s by specifying a LOOKUP func-
t ion t hat must be st ruct ured, for example, [!LOOKUP://<object-name>?<field-name>=<field-
value>[&<field-name>=<field-value>]
For example, t he following lookup funct ion will search for a Cont act record wit h mat ching first name and
last name and insert t he result ing record Id int o t he Cont act __c lookup field: "Contact__c":"
[!LOOKUP://Contact?FirstName=[!XML://Contact/FirstName]&LastName=
[!XML://Contact/LastName]]"

The value will be left empt y if no mat ching record is found. If mult iple records are found, an except ion will
result .

The relations Directive (Optional)


The relat ions direct ive is opt ional and allows you t o specify object relat ionships t o ot her object s defined in t he con-
figurat ion.

"relations": {
"Account": "parent-account",
"Contact": "my-contact"
}

For each relat ionship specified, t he key value should mat ch t he name of a relat ionship against t he object and t he
reference value should mat ch an object label of t he correct t ype specified in t he configurat ion.

XML Consumption
The example configurat ion above will consume t he following XML submission dat a st ruct ure t o creat e t he new
Case object and make updat es t o t he cont act informat ion for t he Cont act :

Configure a Delivery Processor in Salesforce - 678 -


<?xml version="1.0" encoding="UTF-8"?>
<AvokaSmartForm>
<Account>
<AccountId>00128000002gH6DAAU</AccountId>
<AccountName>Big Top Enterprises</AccountName>
<Industry>Entertainment</Industry>
<Website>www.bigtop.com</Website>
<AccountRep>Ben Warner</AccountRep>
</Account>
<Contact>
<ContactId>00328000001tCzaAAE</ContactId>
<Title>Mr.</Title>
<FirstName>Jolly</FirstName>
<LastName>Roger</LastName>
<Position>CEO</Position>
<Department>Management</Department>
<Phone>+61 2 9955 6600</Phone>
<Mobile>0411 803 240</Mobile>
<Email>jolly@bigtop.com</Email>
</Contact>
<IssueDetails>
<IssueType>Problem</IssueType>
<Reason>Instructions not clear</Reason>
<Summary>Can't find where screw C3 goes</Summary>
<Description>It is holding together but for how long?</Description>
</IssueDetails>
</AvokaSmartForm>

Custom Delivery Processors


Where t he default delivery processor does not provide t he level of cont rol required, you may define your own deliv-
ery processor by developing an APEX class t hat implement s t he ITransact DeliveryProcessor int erface. To ut ilize
your cust om delivery processor, simply specify t he class name in t he relevant Delivery Processor record and any
configurat ion required by t he class.

Configure a Delivery Processor in Salesforce - 679 -


global interface ITransactDeliveryProcessor {

/**
* This function processes the delivery record based on the config provided.
*
* @param delivery The Transact Delivery object to be processed
* @param processorConfig The string containing the processing config
*/
void processDelivery(Transact_Delivery__c delivery, String config);
}

The following cust om delivery processor class is configured t o send an email t o an inbox when t he submission is
delivered t o Salesforce.

global class CustomDeliveryProcessor implements avoka.ITransactDeliveryProcessor {

public void processDelivery(avoka__Transact_Delivery__c delivery, String pro-


cessorConfig){
System.debug('Custom Delivery Processor: ' + delivery.Name);

Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();


String[] toAddresses = new String[] {'salesforce@avoka.com'};
mail.setToAddresses(toAddresses);
mail.setSubject('Custom Delivery Processor: ' + delivery.Name);
mail.setPlainTextBody('Processing complete: ' + delivery.Name);
Messaging.sendEmail(new Messaging.SingleEmailMessage[] { mail });
}
}

To configure your cust om delivery processor t o be used you must ent er t he class name in t he Delivery Processor
object wit h t he appropriat e form code. The default value is 'Transact DeliveryProcessor' - you can modify t his t o be
your own class name and it will be used inst ead of t he default . You can also specify your own configurat ion dat a if
required - your processor class will receive t his configurat ion in t he 'config' st ring paramet er in t he processDelivery
() met hod signat ure.

If you have any t rouble get t ing your cust om delivery processor class t o be used, use t he global keyword in t he
class declarat ion t o ensure it is visible t o t he package.

Next , learn how t o configure Manager to support the Transact for Salesforce App .

Configure a Delivery Processor in Salesforce - 680 -


Restrict Access for Selected Forms to User Groups
Journey Platform | All Personas | 5.1 & Higher

You can configure access rest rict ions for select ed forms t o specific user groups. By default , access t o forms is unres-
t rict ed wit hin t he securit y cont ext of t he form. To rest rict access for select form t o cert ain user groups we need t o
first creat e a form group and t hen allocat e users and forms int o t hat group.

Create the Form Group


1. Log ont o Manager.

2. Select Securit y > Groups.


3. Click N ew .
4. Ent er t he name t hat you'd like t o call t he group, relevant t o t he t ype of users who will be members of t he
group.
5. Select Form in t he Type dropdown list .
6. Ent er a descript ion and select t he required group user access cont rol set t ings.
7. It s recommended t o enable all set t ings unless t here are specific reasons not t o.

8. Click Save t o updat e t he changes.

Add Users to the Form Group


Users will not have access t o forms in form group unt il t hey are added t o t he form group.

1. Log ont o Manager.

2. Select Securit y > Groups.


3. Select t he group you wish t o manage and click t he M embers t ab and add users t o t he group as required.
4. Click Save t o updat e t he changes.

Assign Forms to the Form Group


1. Log ont o Manager.

2. Select Forms > Forms.


3. Select t he form you wish t o manage.

4. Click t he Group Access t ab and assign t he form int o t he available groups as required.
5. Click Save t o updat e t he changes.

Next , learn how t o retrieve the consumer key and secret for the Salesforce app.

Rest rict Access for Select ed Forms t o User Groups - 681 -


Enable Access to Restricted Forms
Journey Platform | All Personas | 5.1 & Higher

Salesforce administ rat ors can enable access t o restricted forms t o cert ain user groups wit hin Salesforce if t he
rest rict ed form groups have already been est ablished in Manager.

To enable access t o rest rict ed form groups, a Salesforce Public Group must be creat ed wit h t he ident ical name t o
t he Form Group in Manager.

1. Under Administ rat ion Set up, select M anage Users, and click Public Groups.
2. Click N ew .
3. Ent er t he label and name of t he group, ensuring t hat t he Label is ident ical t o associat ed Form Group
name in Manager.
4. Configure t he membership t o t he group.

5. Click Save t o updat e t he changes.

Now, users who are members of t he public group will aut omat ically gain access t o t he rest rict ed forms t he next
t ime t hey load t he Canvas app.

Next , learn how t o enable access to Transact for Salesforce App

Enable Access t o Rest rict ed Forms - 682 -


Receive Administrator Alerts when Delivery Processing Fails
Journey Platform | All Personas | 5.1 & Higher

You can act ivat e administ rat or alert s t o one or more users, when a delivery processing failure occurs.

When delivery processing for a part icular t ransact ion fails, it will be ident ified in t he Delivery Log wit h a st at us of
'Failed' and failure reason will be available in t he Processing Message field.

Delivery processing failure alert s are sent out t o anyone who has t he Transact Administ rat or permission set on
t heir account . To add t his permission set t o a user account :

1. Select Administ rat ion Set up > M anage Users > Users.
2. Locat e and open t he user account .

3. Select Permission Set Assignment s and click Edit Assignment s.


4. Move t he Transact Administ rat or permission set from t he Available t o t he Enabled column.
5. Click Save t o updat e t he changes.

Next , learn how t o remove password expiry on a Salesforce user account.

Receive Administ rat or Alert s when Delivery Processing Fails - 683 -


Transact for Salesforce App Troubleshooting
Journey Platform | All Personas | 5.1 & Higher

If t he int egrat ion bet ween Manager and Salesforce is not working as expect ed, you can st art t roubleshoot ing by
reviewing t he error log, which can quickly reveal t he cause of t he issue.

The list of t he common problems - solut ions is list ed below.

Content cannot be displayed: You do not have sufficient privileges to access


the page: /apex/Avoka_Transact_Lead
Problem
Some of your users are get t ing a message displayed when t hey t ry t o access t he Transact for Salesforce App visu-
alforce page in a page layout :

Cont ent cannot be displayed: You do not have sufficient privileges t o access t he page: / apex/ Avoka_Trans-
act _Lead

This issue may occur if you have enabled securit y around t he visualforce page t hat does not include t he profile of
t he user t rying t o access t he page.

Solut ion
To resolve t his issue you must enable page access t o t he users profile:

1. Select Set up > Develop and t hen select t he Visualforce Pages.


2. Click t he Securit y link next t o t he t arget page.
3. Add t he profiles t hat require access t o t he page.

4. Click Save t o updat e t he changes.

Reference
https://help.salesforce.com/apex/HTViewHelpDoc?id=pages_security_page_def.htm&language=en_US

Could not identify SObject type <X>


Problem
When processing a delivery an except ion is t hrown wit h error message:

Could not ident ify SObject t ype <X>

where <X> is an object t ype specified in your delivery processor configurat ion.

Transact for Salesforce App Troubleshoot ing - 684 -


Solut ion
This issue indicat es t hat t here is a problem wit h t he delivery processor configurat ion. You need t o check t hat you
have specified all t he SObject t ypes correct ly in your configurat ion.

Delivery Error: No such column 'avoka__Delivery_Trigger_Type__c' on sobject of


type avoka__Transact_Delivery__c
Problem
The Manager delivery process fails wit h error message:

SalesForceExcept ion[response=[ { "message" : "No such column 'avoka__Delivery_Trigger_Type__c' on sob-


ject of t ype avoka__Transact _Delivery__c", "errorCode" : "INVALID_FIELD" } ], operat ion=perform

This issue relat es t o insufficient permissions on t he Salesforce side and is caused by missing permissions for Man-
ager administ rat or permission set prior t o version 1.10 of t he in t he Transact for Salesforce App.

The Manager administ rat or permissions should have full permissions on t he Delivery Log, Delivery Processing, Post
Log, and Prefill Generat ion object s . In Transact for Salesforce App versions prior t o 1.10, you will not ice a number
of missing permissions when you view t he object set t ings of t his packaged permission set , as shown below.

Transact for Salesforce App Troubleshoot ing - 685 -


Solut ion

This issue is only applicable t o versions of t he Transact for Salesforce App prior t o 1.10. The permission set in
version 1.10 has t he missing permissions added.

Transact for Salesforce App Troubleshoot ing - 686 -


As t he Manager administ rat or permission set is part of a managed package, it cannot be modified in your org. To
resolve t his issue, you will need t o creat e a new permission set t hat has all permissions enabled for t he 4 object s.

1. Under Administ er, click Manage Users > Permission Set s


2. Under Permission Set s, click New and ent er t he label of t he new permission set

l Label - Transact Administ rat or 1


l Descript ion - Used t o act ivat e missing permissions in t he Manager administ rat or permission set
l User License - blank
3. Click Save t o updat e t he changes.
4. Edit t he Object Set t ings of t he permission set t o act ivat e all object and field permissions for t he 4 Avoka
object s:

l Delivery Log
l Delivery Processing
l Prefill Generat ion
l Post Log
5. Ensure all read and edit permissions are grant ed t o t hese object s.

6. Click Save t o updat e t he changes.


7. Allocat e t his new permission set t o t he Manager user.

Delivery Error: The requested resource does not exist


Problem
The Manager delivery process in fails wit h error message:

SalesForceExcept ion[response=[ { "errorCode" : "NOT_FOUND", "message" : "The request ed resource does


not exist " } ]

Solut ion
This error indicat es t hat t he delivery process cannot find t he delivery t arget object s in Salesforce. To resolve t his
issue:

1. Ensure t hat t he app is installed in Salesforce.


2. If t he license is limit ed t o a number of seat s, t hen t he API user must be licensed for t he app in order t o access
t he Manager delivery object s.

Delivery Processing Error: Field <X> on <Y> is not CREATEABLE by <Z>


Problem
When processing a delivery an error is report ed wit h message:

Transact for Salesforce App Troubleshoot ing - 687 -


Delivery Processing Error: Field <X> on <Y> is not CREATEABLE by <Z>

X is t he t arget object name, Y is t he field being updat ed and Z is t he user name. The same error may also appear
wit h t he key word UPDATEABLE.

Solut ion
This is a permission relat ed problem and relat es t o t he securit y around field updat es on t he object . Ensure t he act -
ive user specified in t he error message has t he appropriat e permissions t o t he t arget field.

Insufficient Privileges: You do not have the level of access necessary to perform
the operation you requested...
Problem
While t rying t o access t he Transact for Salesforce App Visualforce page component some users are denied access
wit h t he following message:

Insufficient Privileges
You do not have t he level of access necessary t o perform t he operat ion you request ed. Please cont act t he
owner of t he record or your administ rat or if access is necessary. For more informat ion, see Insufficient Priv-
ileges Errors.

This problem may be encount ered if t he package was inst alled for access by Admins Only or Select ed Profiles
inst ead of for All Users.

Solut ion
To resolve t his issue, add t he Manager user permission set t o all required user account s:

1. In t he Set up menu search for Permission Set s and select t he menu it em t o open t he Permission Set s page.

2. Find t he Journey Manager User permission set and open it , t hen select t he M anage Assignment s but t on.
3. Select Add Assignment s and assign all required users t o t he permission set .

Transact for Salesforce App Troubleshoot ing - 688 -


Missing "Reset My Security Token" Option
Problem
Aft er creat ing t he Manager user in Salesforce, no securit y t oken was emailed out and when logged in as t hat user
t he opt ion t o Reset M y Securit y Token is not available as described here.

Solut ion
If you do not see t he opt ion t o reset your t oken, you may be using IP Login Rest rict ions in Salesforce. For more
informat ion on why t his menu opt ion may not be available t o your user, see t he Salesforce documentation .

If you have furt her quest ions about IP Login Rest rict ions, cont act Salesforce support for furt her assist ance.

Post Request: 403 Forbidden - You don't have permission to access /man-
ager/secure/GroovyServiceServlet on this server
Problem
When at t empt ing t o push a t ask from Salesforce t o Manager using t he post request object in Salesforce you may
receive an error indicat ing t hat t he HTTP request failed:

403 Forbidden - You don't have permission t o access / manager/ secure/ GroovyServiceServlet on t his
server.

This may be due t o IP whit e-list ing on t he Manager server reject ing access from t he Salesforce server.

Solut ion
Add t he Salesforce IP ranges t o t he Manager IP while-list as described here.

Salesforce API Authentication Failure (Invalid Grant)


Problem
Calls t o Salesforce from Manager are failing wit h an aut hent icat ion error:

SalesForceExcept ion[response={"error_descript ion":"aut hent icat ion failure","error":"invalid_grant "}

If you are receiving delivery error when t rying t o deliver t o Salesforce, check t he error log for t he error message
above.

Solut ion
This issue can be caused due t o one of t he following reasons:

Transact for Salesforce App Troubleshoot ing - 689 -


l Invalid or incorrect credent ials being used in t he Salesforce Connect ion paramet ers
l Insufficient privileges assigned t o t he API user in Salesforce

To resolve t his issue, t ry t he following st eps:

1. Re-ent er t he username, password and security token for t he Salesforce Service Connect ion.
2. Ensure t hat t he Salesforce API user has t he following required permissions:
l The user must have API access.
l The user must have permission t o writ e t o t he Manager cust om object s.
l Ensure t he user is associat ed wit h a profile t hat is Admin approved for use of t he Manager connect ed
app.
3. If you have IP Rest rict ions in place in your Salesforce environment , double check t hat t he IP ranges cover t he
Manager environment you are receiving t he error on. You can check wit h t he Manager cloud host ing t eam t o
verify t he IP ranges for your environment s.

Sorry, you are not licensed to use the Transact solution


Problem
Trying t o access t he Transact for Salesforce App Visualforce page component and get t ing a message saying:

Sorry, you are not licensed t o use t he Transact solut ion. Please consult your Salesforce Administ rat or.

Solut ion
Your user is not licensed for use of t he package, a Salesforce administ rat or needs t o add you as a licensed user.

Next , learn about Transact for Salesforce App .

Transact for Salesforce App Troubleshoot ing - 690 -


Transact for Salesforce App Installation
Journey Platform | All Personas | 5.1 & Higher

For any new deployment of Transact for Salesforce App , you should use t he lat est available version compat ible
wit h your Manager inst ance, as shown in t he compat ibilit y mat rix below.

Transact for
Release Manager
Salesforce App Improvements
Date Version
Version

August 24,
1.11 Resolved issue with encoding of Post Request data 4.3
2017

Mar ch 7th, Point r elease to accommodate customer dr iven fea-


1.10 4.3
2016 tur es and bug fixes

December Point r elease to accommodate customer dr iven fea-


1.8 4.3
16th, 2015 tur es and bug fixes

Minor patch r elease to impr ove per missions ar ound


December
1.6 Apex class access. No functional changes ar e 4.3
2nd, 2015
included.

November Point r elease to pr ovide client r equested featur es


1.5 4.3
28th, 2015 and bug fixes.

September This is the or iginal AppExchange ver sion containing


1.4 4.2
23r d, 2015 baseline featur es.

The lat est Salesforce port al war files are list ed below.

Manager
Portal WAR File
Version

Manager ver sion 4.3.4 and higher has the Salesfor ce form space war file built into the
4.3.4+
Jour ney Manager installer .

avoka-sf-por tal-salesfor ce433.war

4.3.3
Jour ney Manager ver sion 4.3.3 is EOL, so you must upgr ade to newest Jour ney Man-
ager , which includes the Salesfor ce por tal.

avoka-sf-por tal-salesfor ce432.war

4.3.2

Transact for Salesforce App Inst allat ion - 691 -


Jour ney Manager ver sion 4.3.2 is EOL, so you must upgr ade to newest Jour ney Man-
ager , which includes the Salesfor ce por tal.

The Salesforce app can be inst alled int o t he Salesforce Organizat ion by clicking t his link and following t he prompt s.

Service Definition Import Options


When import ing service definit ions deselect t he Preserve Exist ing Services opt ion in t he import wizard while
leaving t he Preserve Exist ing Service Connect ions opt ion select ed:

Once you have import ed new versions of t he services you are required t o manually act ivat e t hese service versions
and where appropriat e, updat e t he configurat ions t hat refer t o t he old version of t he service t o point t o t he new
version.

Security Manager Import Options


When import ing t he securit y manager, deselect t he Preserve Exist ing Securit y M anagers opt ion, as shown
below.

Import ing t he securit y manager in t his way will overwrit e t he paramet ers you have specified against t his securit y
manager, so make a backup copy of t hem first . In part icular, t he Client Id and Client Secret propert ies should be
backed up and re-set aft er import .

Transact for Salesforce App Inst allat ion - 692 -


Once you have import ed new versions of t he services you are required t o manually act ivat e t hese service versions
and where appropriat e, updat e t he configurat ions t hat refer t o t he old version of t he service t o point t o t he new
version.

Next , learn about Transact for Salesforce App troubleshooting.

Transact for Salesforce App Inst allat ion - 693 -


Installation Assets Version 1.4
Journey Platform | All Personas | 5.1 & Higher

The Salesforce app version 1.4 is t he original AppExchange version cont aining baseline feat ures.

Release dat e is Sept ember 23rd, 2015.

It requires Manager version 4.2 and higher.

This release version has been superseded. Please inst all t he lat est version of t he App.

New Features
None

Issues Resolved
This is t he original AppExchange version cont aining baseline feat ures.

Installation Assets
The Salesforce App can be inst alled int o t he Salesforce Organizat ion by clicking t his link and following t he prompt s:

l Product ion: https://login.salesforce.com/packaging/installPackage.apexp?p0=04t900000002ZZ8

Next , learn how t o install Transact for Salesforce App .

Inst allat ion Asset s Version 1.4 - 694 -


Installation Assets Version 1.5
Journey Platform | All Personas | 5.1 & Higher

The Salesforce app version 1.5 is a point release t o provide client request ed feat ures and bug fixes.

Release dat e is November 28t h, 2015.

It requires Manager version 4.3 and higher.

New Features
l SAE-085 Mat ch Fields - You can now opt ionally specify t he set of unique fields for an object t ype (e.g.
Last Name and Email for a Lead) and t he delivery processor will find t he exist ing record for updat e rat her
t han insert . This feat ure was added t o assist in t he management of duplicat e records.
l SAE-151 Administ rat or Alert s - Anyone wit h t he Transact Administ rat or permission set in Salesforce will
receive email not ificat ions when delivery processing fails.
l SAE-055 Form Cat egory Filt er - In t he visual force page t o include t he Canvas UI you can now opt ionally spe-
cify which cat egories you want t o appear on t he N ew Form page. This can be different for each inst ance of
t he Canvas. If not specified, all cat egories will be present ed.
l SAE-146 Abandoned Forms – Abandoned forms will now appear in t he search result s (requires Transact ion
Manager 4.3). When a form becomes abandoned, cust omers cannot access it anymore. We've added a
React ivat e link t hat is present ed for abandoned forms where t he dat a has not yet been purged. The react -
ivat e link will re-open t he form for access.

l SAE-147 Enhanced Cust omer Link - Provided t he abilit y t o copy a port al specific URL for an act ive form by
select ing t he port al from a drop down. This is t o cat er for t he sit uat ion where cust omers int eract wit h a dif-
ferent port al t o st aff.
l SAE-152 Reload page but t on - On all UI pages ot her t han Search, t he reload but t on will refresh t he cont ent of
t he page.

Issues Resolved
l SAE-135 Aut hent icat ion Provider Issues - Resolved issues where exist ing users were not get t ing added t o t he
current organizat ion and port al when t hey re-aut hent icat e under cert ain condit ions.
l SAE-148 Incorrect Creat ed Time - Resolved issue where t he creat ed t ime of a form was showing incorrect val-
ues under cert ain condit ions.

Installation Assets
The Salesforce App can be inst alled int o t he Salesforce Organizat ion by clicking t his link and following t he prompt s:

l Product ion: https://login.salesforce.com/packaging/installPackage.apexp?p0=04t900000002ZjX

The following inst allat ion archives should be used t o set up Manager:

Inst allat ion Asset s Version 1.5 - 695 -


l Service Definit ions: AT4SF-Services-1.5.zip

l Securit y Manager: AT4SF-SecurityManager-1.5.zip

l Canvas UI Form Version: AT4SF-Canvas-1.5.zip

l Test Form Version: AT4SF-TestForm-1.0.zip

Next , learn how t o install Transact for Salesforce App .

Inst allat ion Asset s Version 1.5 - 696 -


Installation Assets Version 1.6
Journey Platform | All Personas | 5.1 & Higher

The Salesforce app version 1.6 is a minor pat ch release t o improve permissions around Apex class access. No func-
t ional changes are included.

Release dat e is December 2nd, 2015.

It requires Manager version 4.3 and higher.

New Features
None

Issues Resolved
l Improves permissions around Apex class access.

Installation Assets
The Salesforce App can be inst alled int o t he Salesforce Organizat ion by clicking t his link and following t he prompt s:

l Product ion: https://login.salesforce.com/packaging/installPackage.apexp?p0=04t90000000Y1N0

No change t o t he Manager inst allat ion asset s since version 1.5 .

Next , learn how t o install Transact for Salesforce App .

Inst allat ion Asset s Version 1.6 - 697 -


Installation Assets Version 1.8
Journey Platform | All Personas | 5.1 & Higher

The Salesforce app version 1.8 resolves issues t o accommodat e cust omer driven feat ures and bug fixes.

Release dat e is December 16t h, 2015.

It requires Manager version 4.3 and higher.

New Features
l SAE-166 Lookup Fields - Add support for t he mapping of form dat a t o lookup field references.

Issues Resolved
l SAE-161 Relat ionship bet ween t he t ransact ion and t he current object not creat ed where no prefill service is
specified for t he form
l SAE-163 Except ion t hrown if Delivery Processor not configured for specified form code
l SAE-164 Null Point er if SObject Type not found
l SAE-167 Except ion in delivery mapping t o Boolean, Decimal or Dat e fields

Installation Assets
The Salesforce App can be inst alled int o t he Salesforce Organizat ion by clicking t his link and following t he prompt s:

l Product ion: https://login.salesforce.com/packaging/installPackage.apexp?p0=04t90000000Y1SP

The following inst allat ion archives should be used t o set up Manager:

l Service Definit ions: AT4SF-Services-1.8.zip

l Securit y Manager: AT4SF-SecurityManager-1.5.zip

l Canvas UI Form Version: AT4SF-Canvas-1.5.zip

l Test Form Version: AT4SF-TestForm-1.0.zip

Next , learn how t o install Transact for Salesforce App .

Inst allat ion Asset s Version 1.8 - 698 -


Installation Assets Version 1.10
Journey Platform | All Personas | 5.1 & Higher

The Salesforce app version 1.10 resolves issues t o accommodat e cust omer driven feat ures and bug fixes.

Release dat e is March 7t h, 2016.

It requires Manager version 4.3 and higher.

New Features
l SAE-173 - Support for dat e t ime fields in delivery mapping

l SAE-175 - New Preprocessor service opt ion


l SAE-176 - New Complet ed Processor service opt ion

Issues Resolved
l SAE-168 - Except ion if relat ionship parent is not found in delivery processing
l SAE-169 - Aut o role assignment not working in Aut h Provider due t o error code
l SAE-174 - Manual Delivery Processing ignores t rigger t ype (always execut es Complet ed Transact ion pro-
cessing)

Installation Assets
The Salesforce App can be inst alled int o t he Salesforce Organizat ion by clicking t his link and following t he prompt s:

l Product ion: https://login.salesforce.com/packaging/installPackage.apexp?p0=04t90000000Y1cA

l Sandbox: https://test.salesforce.com/packaging/installPackage.apexp?p0=04t90000000Y1cA

The following inst allat ion archives should be used t o set up Manager:

Inst allat ion Asset s Version 1.10 - 699 -


l Service Definit ions: AT4SF-Services-1.10.zip

l New service AT4SF-PushToSalesforce - performs submission delivery t o Salesforce and is used as a sub
process by ot her services
l New service AT4SF-Complet edProcessor - provides a service opt ion for delivery t o Salesforce on t he Sub-
mission Complet ed event
l New service AT4SF-Preprocessor - provides a service opt ion for delivery t o Salesforce on t he Submission
Preprocessor event
l Updat ed service AT4SF-DeliveryPush (v3) - now offloads delivery process t o AT4SF-PushToSalesforce
l Updat ed service AT4SF-SaveProcessor (v2) - now offloads delivery process t o AT4SF-PushToSalesforce
l Securit y Manager: AT4SF-SecurityManager-1.10.zip

l Canvas UI Form Version: AT4SF-Canvas-1.5.zip

l Test Form Version: AT4SF-TestForm-1.0.zip

Next , learn how t o install Transact for Salesforce App .

Inst allat ion Asset s Version 1.10 - 700 -


Installation Assets Version 1.11
Journey Platform | All Personas | 5.1 & Higher

The Salesforce app version 1.11 resolves issue wit h encoding of Post Request dat a.

Release dat e is August 24, 2017.

It requires Manager version 4.3 and higher.

New Features
None.

Issues Resolved
l SAE-179 Post log fails if dat a cont ains '&' symbol - When using t he Post Log wit h prefill dat a from Salesforce
object s t hat cont ains special symbols like '&' (e.g. "Walker & Sons") t he post request cont ent is corrupt ed.

Installation Assets
The Salesforce App can be inst alled int o t he Salesforce Organizat ion by clicking t his link and following t he prompt s:

l Product ion: https://login.salesforce.com/packaging/installPackage.apexp?p0=04t90000000JDR9

l Sandbox: https://test.salesforce.com/packaging/installPackage.apexp?p0=04t90000000JDR9

The following inst allat ion archives should be used t o set up Transact ion Manager:

l Service Definit ions: AT4SF-Services-1.10.zip

l Securit y Manager: AT4SF-SecurityManager-1.11.zip

l Canvas UI Form Version: AT4SF-Canvas-1.5.zip

l Test Form Version: AT4SF-TestForm-1.0.zip

Next , learn how t o install Transact for Salesforce App .

Inst allat ion Asset s Version 1.11 - 701 -


Transact Integration Gateway Overview
Journey Platform | System Manager / DevOps | v4.3 & Higher

Alt hough Transact Int egrat ion Gat eway (TIG) cont inues t o receive support , it is recommended t hat Journey
Plat form solut ion builders move away from using TIG and inst ead use Journey Manager REST APIs t o build
Journey Plat form solut ions. Cont inuing t o use TIG may complicat e an upgrade pat h when TIG is event ually
deprecat ed in a fut ure release.

Overview
Transact Int egrat ion Gat eway (TIG) is a light weight gat eway for performing on premise business int egrat ion. Cus-
t omers using a cloud environment oft en have int egrat ion requirement s for:

l Dynamic dat a lookups or dat a validat ions t o int ernal syst ems.
l St raight t hrough processing, when cust omers submit applicat ions.
l Background t ransact ion delivery int egrat ion in int ernal syst ems.
l Uploading form prefill reference dat a t o t he cloud servers.

Using t he Transact Int egrat ion Gat eway, cust omers can implement int egrat ions like t hese quickly wit hout addi-
t ional soft ware licenses.

If you already have int egrat ion gat eway capabilit ies wit h solut ions such as IBM Power Gat eway or Mulesoft API
Gat eway, you may choose t o use t hese. However, if you don't need t he complexit y of t hese solut ions, t he simpler
Transact Int egrat ion Gat eway may be suit able, and is an excellent opt ion for performing delivery int egrat ion.

The Journey SDK for Java provides a Java API for Manager services, so you can build applicat ions t hat int egrat e dir-
ect ly wit h t hem. Journey SDK document at ion is available online as well as being included in t he Journey SDK down-
load package (aut hent icat ion required) available from our resources web site. (aut hent icat ion required).

TIG is largely unchanged since TIG v4.3, so it is compat ible wit h current Transact and Journey plat form
releases.

Usage and Deployment Models


The deployment model for TIG is t o inst all t he applicat ion on premise inside a DMZ or a secure locat ion. The applic-
at ion is designed t o be very easy t o inst all and configure. You can lit erally inst all t he applicat ion and perform t rans-
act ion dat a delivery wit hin minut es.

Transact Int egrat ion Gat eway Overview - 702 -


For High Availabilit y (HA) deployment models you would t ypically inst all t he t wo TIG applicat ions on separat e serv-
ers in different availabilit y zones. TIG uses a st at eless archit ect ure, wit h configurat ion maint ained in local JSON 1
configurat ion files. There is no requirement for a shared dat abase t o support HA usage.

Delivery Int egrat ion


A t ypical use of TIG is t o perform t ransact ion delivery int egrat ion. In t his deployment model, TIG is used t o pull
down complet ed t ransact ions from t he Cloud Host ed Journey Manager servers, and deliver t his dat a int o int ernal
syst ems.

This usage model is illust rat ed in t he diagram below.

For st raight delivery int egrat ion, t here is no requirement for TIG t o be ext ernally accessible. All net work calls are
out going from TIG t o Manager servers. To complet e t ransact ion delivery, TIG needs t o be able t o writ e t ransact ion
dat a files t o a secure and high availabilit y file st ore such as a SAN, or it should be able t o call ot her int ernal syst ems
t o complet e delivery.

1JSON (JavaScript Object Not at ion) is a synt ax for st oring and exchanging dat a and is used in Maest ro t o st ore

forms. If a Form Builder want s t o t ransfer t heir form t o anot her syst em, t hey can do so by using t he Download
JSON file but t on.

Transact Int egrat ion Gat eway Overview - 703 -


When int ernal t ransact ion delivery has been complet ed, TIG will send a posit ive delivery confirmat ion message t o
t he Manager server. Once t his has been done, t he t ransact ion dat a on t he server can eit her be delet ed imme-
diat ely or made available for scheduled data purging.

Service API Gat eway


TIG can be used as a Service API Gat eway t o enable Cloud Manager servers t o make real-t ime (synchronous) API
calls t o int ernal business syst ems. These calls are t ypically t o perform operat ions like:

l perform a securit y check before t he user opens a saved form


l prefill a form wit h t he cust omer's profile dat a
l make a form dynamic dat a call t o perform dat a verificat ion, such as Ident it y Verificat ion (IDV)

l st raight t hrough processing, when a cust omer submit s an applicat ion result ing in an account being opened
and t he det ails ret urned t o t he user

This usage model is illust rat ed in t he diagram below.

Operat ing as a Service API Gat eway, TIG support s t wo modes of operat ion:

Transact Int egrat ion Gat eway Overview - 704 -


l Service API Proxy - TIG act s as a proxy rout ing t he ext ernal call t o an int ernal syst em
l Groovy Service Execut ion - TIG calls a Groovy 1 script t o perform one or more calls t o int ernal syst ems

By using TIG as a Service API Gat eway, access t o int ernal syst ems can be st rict ly cont rolled and no int ernal net work
informat ion is exposed ext ernally.

Gat eway Securit y


To provide securit y access cont rol policies t o prot ect int ernal Service APIs, we recommend a combinat ion of t he fol-
lowing securit y cont rols:

l Transport Layer Securit y (TLS) prot ect ion for all net work calls
l IP address whit e list wit h TIG only accept ing calls from configured Manager servers (configured on swit ch and
TIG)
l BASIC aut hent icat ion over TLS, wit h TIG only allowing aut hent icat ed request s
l Virt ual Privat e Net work (VPN) bet ween business dat a cent er and AWS Virtual Private Cloud (VPC)

l Mut ual SSL aut hent icat ion bet ween Manager calls and TIG

TIG ut ilizes Apache for TLS t erminat ion and uses ModSecurit y as an Web Applicat ion Firewall (WAF) t o provided
addit ional prot ect ion t o t he Service API Gat eway.

Reference Dat a Int egrat ion


Anot her use for TIG is t o upload reference dat a from business syst ems int o Cloud Host ed Manager servers where
it can be used for form prefill or form dynamic dat a.

This usage model is illust rat ed in t he diagram below.

1Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.

Transact Int egrat ion Gat eway Overview - 705 -


For uploading reference dat a, t here is no requirement for TIG t o be ext ernally accessible. All net work calls out going
from TIG are t o Manager servers.

TIG provides a Quart z Job scheduler facilit y which is used for performing background jobs. The job scheduler sup-
port s sophist icat ed CRON 1 expressions and simple int erval based scheduling t o invoke Groovy 2 script s t o per-
form int egrat ion t asks.

Next , learn about installing and configuring Transact Integration Gateway.

1Cron is a t ime-based job scheduler in Unix-like comput er operat ing syst ems. People who set up and maint ain soft -

ware environment s use cron t o schedule jobs (commands or shell script s) t o run periodically at fixed t imes, dat es,
or int ervals.
2Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.

Transact Int egrat ion Gat eway Overview - 706 -


Transact Integration Gateway Setup
Journey Platform | System Manager / DevOps | v4.3 & Higher

Alt hough Transact Int egrat ion Gat eway (TIG) cont inues t o receive support , it is recommended t hat Journey
Plat form solut ion builders move away from using TIG and inst ead use Journey Manager REST APIs t o build
Journey Plat form solut ions. Cont inuing t o use TIG may complicat e an upgrade pat h when TIG is event ually
deprecat ed in a fut ure release.

Prerequisites
You need a JDK inst alled on t he syst em where you are inst alling Transact Int egrat ion Gat eway (TIG). The JDK ver-
sion you need is dependent upon t he version of TIG you are inst alling, and can be ident ified as follows.

1. Ident ify t he TIG version (tig-version) t hat you want t o inst all. For example, if you want t o inst all TIG
v18.11 (tig-version will be v18.11).
2. Ident ify t he JDK version (jdk-version) t hat is required when inst alling t he tig-version version of Jour-
ney Manager. For example, if you use Journey Manager 18.11, t he JDK will be JDK 11 (jdk-version = JDK 11).
3. jdk-version is t he JDK version required when inst alling t he TIG version ident ified in t he first st ep. In t his
example, we need JDK 11 inst alled on our syst em in order t o inst all TIG v18.11

TIG and Journey Manager have been designed so t hat any version of TIG can communicat e wit h any Journey
Manager version. That is, you do not need t o inst all t he same version of TIG and Journey Manager.

Transact Client SDK


If you're using TIG in your Journey Plat form solut ion, you may also want t o use Transact Client SDK when building
t hat solut ion. While Transact Client SDK is no longer under act ive development , it is compat ible wit h lat er Journey
Plat form versions, just like TIG. You can download t he lat est Transact Client SDK release which includes reference
document at ion t hat is also available online.

Installation
A TIG Set up Wizard applicat ion is provided t o enable fast and easy inst allat ion.

On a Windows server wit h a JRE available, TIG can be inst alled and running as a Windows Service wit hin a few
minut es.

Transact Int egrat ion Gat eway Set up - 707 -


Configuration
TIG is configured t hrough a series of JSON configurat ion files. These files are locat ed in t he configurat ion direct ory:
C:\avoka\transact\tig\config\

Config File Description

deliver y-config.json Tr ansaction deliver y channel configur ations

pr oxy-config.json Ser vice API Gateway pr oxy configur ations

ser vices-config.json Gr oovy Ser vices configur ations

scheduler -config.json Scheduled Gr ooovy scr ipt job configur ations

stor age-config.json Submission data stor age configur ation

The Groovy script s direct ory is also under t he configurat ion direct ory: C:\a-
voka\transact\tig\config\groovy\

Transact Int egrat ion Gat eway Set up - 708 -


This direct ory cont ains a number of sample Groovy script s which are referenced in t he groovy-config.json file
including:

l delivery-email.groovy
l delivery-example.groovy
l google-search.groovy
l job-example.groovy
l template-example.groovy

Delivery Config
The delivery configurat ion file defines t ransact ion delivery channels t o ret rieve complet ed form t ransact ions using
t he Manager REST Delivery APIs.

The sample delivery-config.json inst alled wit h TIG is shown below.

{
"pollingIntervalMins": 1,
"deliveryChannels": [
{
"deliveryUrl": "http://localhost:9080/manager/secure/rest/delivery/v1/maguire/re
vice/",
"user": "administrator",
"password": "password",
"dataDir": "C:/tig/delivery/",
"subDir": "${submissionId}",
"processingStatus": "Thank you your application is being processed",
"serviceName": "delivery-example"
}
]
}

This configurat ion specifies a 1 minut e polling int erval t o call t he Manager REST Delivery API t o see whet her any
new t ransact ions are available.

The next element is a collect ion of delivery channels. A single TIG service can perform deliveries against many Man-
ager Delivery Channels. For more informat ion on how t o configure a delivery channel, see t he Transact Services
Guide > REST API > Delivery API.

The JSON delivery channel at t ribut es include:

Name Description

Transact Int egrat ion Gat eway Set up - 709 -


Deliver y channel URL as defined for the Manager or ganization deliver y channel's
deliver yUr l
REST Ser vice URL

Manager user login name.

user
User s must have the REST Delivery r ole assigned to them, be assigned to Man-
ager console access, and or ganization access.

Manager user passwor d

passwor d
It is r ecommended that you configur e specific REST deliver y user s, with only the
REST Delivery r ole and no other per missions.

dataDir Base data dir ector y wher e for m tr ansaction data will be wr itten

A patter n sub dir ector y under the base dataDir

subDir This folder is used to separ ate differ ent tr ansactions. Ther e ar e a lar ge number
of patter ns which can be used to cr eate sub dir ector ies for data deliver y (see
below).

A pr ocessing status message which is r etur ned to the Manager ser ver when deliv-
er y is confir med and may be displayed to the end user who submitted the for m.

pr ocessingStatus
This is typically use to pr ovided a message infor ming them that their application is
being pr ocessed. This message has a maximum length of 100 char acter s; longer
values will be tr uncated.

A flag infor ming the Manager ser ver to delete the tr ansaction data immediately
when it r eceives the deliver y confir mation message.
deleteData
Use this option only if you have deliver ed data into a high available stor age sys-
tem, and you have ver y str ict data r etention policies.

A flag to specify whether to cr eate a zer o length completed.txt file in the data
deliver y dir ector y once all the tr ansaction data has been deliver ed.
completedMar ker
This option is useful for folder watch deliver integr ation systems which will per -
for m ELT oper ations when a mar ker signal file appear s in a dir ector y.

The name of a Gr oovy scr ipt ser vice to call when all the tr ansaction data has
been wr itten into the deliver y dir ector y.
ser viceName

Only deliver y type ser vices can be used for deliver y integr ation.

The subDir pat t ern opt ions include:

Transact Int egrat ion Gat eway Set up - 710 -


Pattern Variable Description

clientCode For m's or ganization client code identifier

for mCode Unique for m code identifier

for mVer sion For m ver sion number

for mStatus Tr ansaction for m status: [ Completed | Abandoned ]

por tal Name of the por tal or for m space

submissionId Tr ansaction submission identifier

r eceiptNumber Tr ansaction r eceipt number

submitKey Tr ansaction submit key GUID

tr ackingCode Tr ansaction tr acking code

tr ansRefNumber Tr ansaction Tr n Ref Number

yyyy Year ; for example, 2015

mm Month of year ; for example, 08

dd Day of month; for example, 01

Not e t hat TIG will monit or any changes t o t he delivery configurat ion file and make t hese available immediat ely.
However if you change t he polling int ernal configurat ion, you will need t o rest art t he TIG service for t his change t o
t ake effect .

Proxy Config
The proxy configurat ion file defines int ernal services which may be called via Gat eway Proxy calls.

The sample proxy-config.json inst alled wit h TIG is shown below.

Transact Int egrat ion Gat eway Set up - 711 -


[
{
"route": "google-search",
"serviceUrl": "https://ajax.googleapis.com/ajax/services/search/web",
"connectionTimeout": 10000,
"returnErrors": true,
"parameters": [
{ "name": "v", "value": "1.0" }
]
}
]

This configurat ion specifies a collect ion of proxy services rout es. The proxy at t ribut es include:

Name Description

r oute Pr oxy ser vice r oute URL path

ser viceUr l Inter nal ser vice API URL to call

header s HTTP header s to add to the inter nal Ser vice API call

par ameter s HTTP r equest par ameter s to add to the inter nal Ser vice API call

The HTTP Basic authentication header r equir ed to execute the call when per -
basicAuth for ming a Ser vice API Gateway call. The basic auth header is a Base64 encode
user name:passwor d value.

The connection and socket tr ansfer timeout in milliseconds for the inter nal Ser -
connectionTimeout
vice API call. The default timeout is 10 seconds.

Retur n Gr oovy scr ipt er r or s to the caller when per for ming a Ser vice API Gate-
r etur nEr r or s way call. Use this option when developing scr ipts, but not in pr oduction. Default
value is true.

An example of t he proxy rout ing configurat ion is shown below:

1. URL request from Manager t o TIG:

GET https://service.mycorp.com/tig/proxy/google-search/?q=Avoka

2. TIG ext ract s gat eway rout e pat h:

Transact Int egrat ion Gat eway Set up - 712 -


address-lookup

3. TIG looks up proxy rout e and makes int ernal call using t he serviceUrl, for example:

GET https://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=Avoka

Services Config
The services configurat ion file defines Groovy script services which may be invoked via Gat eway Service calls, via
Deliveries or via Scheduled Jobs.

The sample services-config.json inst alled wit h TIG is shown below.

Transact Int egrat ion Gat eway Set up - 713 -


[
{
"serviceName": "delivery-email",
"serviceType": "delivery",
"groovyScript": "$tig/config/groovy/delivery-email.groovy",
"parameters": [
{ "name": "emailUrl", "value": "https://outlook.office365.com/EWS/Exchange.asmx"
{ "name": "emailUser", "value": "username@server.com" },
{ "name": "emailPassword", "value": "password" }
]
},
{
"serviceName": "delivery-example",
"serviceType": "delivery",
"groovyScript": "$tig/config/groovy/delivery-example.groovy"
},
{
"serviceName": "job-example",
"serviceType": "scheduled",
"groovyScript": "$tig/config/groovy/job-example.groovy"
},
{
"serviceName": "google-search",
"serviceType": "gateway",
"groovyScript": "$tig/config/groovy/google-search.groovy",
"groovyTypeChecked": false,
"executionTimeout": 10000,
"returnErrors": true,
"parameters": [
{ "name": "urlBase", "value": "http://ajax.googleapis.com/" }
]
},
{
"serviceName": "template-example",
"serviceType": "gateway",
"groovyScript": "$tig/config/groovy/template-example.groovy",
"parameters": [
{ "name": "Test Mode", "value": "false" }
]
}
]

This configurat ion specifies a collect ion of Groovy services. The service at t ribut es include:

Name Description

Transact Int egrat ion Gat eway Set up - 714 -


ser viceName Gr oovy ser vice name, should be unique

The type of Gr oovy ser vice: [ delivery | gateway | scheduled ]

ser viceType l delivery services can be used for performing t ransact ion delivery
l gateway services can be called via REST service API
l scheduled services can be called by scheduled Quart z Jobs

A Gr oovy scr ipt file path


gr oovyScr ipt
The $tig var iable is the TIG r elative path location.

Per for m str ict Java style Gr oovy type checking befor e executing the scr ipt.
gr oovyTypeChecked
Default value is false.

End execution of the Gr oovy scr ipt if it takes longer than the specified number
executionTimeout
of milliseconds. Default value is 0 meaning no timeout.

Retur n any Gr oovy scr ipt er r or s to the caller when per for ming a Ser vice API
r etur nEr r or s Gateway call. Use this option when developing scr ipts, but not in pr oduction.
Default value is true.

The HTTP Basic authentication header r equir ed to execute the call when per -
for ming a Ser vice API Gateway call
basicAuth

The basic auth header is a Base64 encode user name:passwor d value.

Collection of par ameter s to pass to the Gr oovy scr ipt as a par ameter s map.
par ameter s
This is useful for exter nalizing configur ation values.

TIG will monit or any changes t o t he Groovy configurat ion file and Groovy script files and make t hese available
immediat ely.

Gat eway Services Config


Groovy services wit h t he t ype gateway can be called ext ernally from Manager using t he gat eway service URL. The
URL pat h is used t o resolve t he name of t he service t o execut e.

An example of t he gat eway service configurat ion is illust rat ed below:

1. URL request from Manager t o TIG:

GET https://service.mycorp.com/tig/service/google-search/?q=Avoka

Transact Int egrat ion Gat eway Set up - 715 -


2. TIG ext ract s service name pat h:

google-search

3. TIG looks up service name called "google-search" and invokes t he gateway service t ype.

Only services wit h t he t ype gateway can be called ext ernally. At t empt ing t o call a delivery or scheduled t ype
service will result in a HTTP 404 Not Found st at us code being ret urned.

Scheduler Config
The scheduler configurat ion file defines Quart z job schedules for invoking Groovy services. Only services wit h t he
scheduled service t ype can be called by Quart z scheduled jobs.

The sample scheduler-config.json inst alled wit h TIG is shown below.

[
{
"jobName": "Cron Job",
"jobType": "cron",
"cronExpression": "0 30 1 * * ?",
"serviceName": "job-example"
},
{
"jobName": "Simple Job",
"jobType": "simple",
"repeatIntervalMins": 10,
"serviceName": "job-example"
}
]

This configurat ion specifies a collect ion of Groovy service job schedules. The job schedule at t ribut es include:

Name Description

jobName Name of the job

jobType Job type: [ cron | simple ]

A cr on scheduling expr ession, for cron type jobs only. For details, see Quartz
cr onExpr ession
Tutorials, Lesson 6: CronTrigger .

r epeatInter valMins Repeat inter val in minutes, for simple type jobs only

Transact Int egrat ion Gat eway Set up - 716 -


ser viceName Name of the Gr oovy ser vice to call when the job is tr igger ed

If you make changes t o scheduler-config.json, you must rest art t he TIG server for t hese changes t o
t ake effect .

St orage Config
The st orage configurat ion file defines cust omer t ransact ion dat a st orage opt ions.

The sample storage-config.json inst alled wit h TIG is shown below.

{
"user": "administrator",
"password": "tuart!23",
"dataDir": "C:/tig/storage/"
}

The st orage at t ribut es include:

Name Description

The BASIC authentication login user


user
This value should match the Manager TIG Ser vice Connection User name.

The BASIC authentication login passwor d


passwor d
This value should match the Manager TIG Ser vice Connection User name.

dataDir The customer tr ansaction data stor age ar ea

If you make changes t o storage-config.json, you must rest art t he TIG server for t hese changes t o t ake
effect .

The image below shows t he Manager configurat ions for a Transact Int egrat ion Gat eway Service Connect ion.

Transact Int egrat ion Gat eway Set up - 717 -


The image below shows a Manager configurat ion for t he Hybrid Cloud Submission Dat a St orage service using
Transact Int egrat ion Gat eway.

Next , learn about developing with Transact Integration Gateway.

Transact Int egrat ion Gat eway Set up - 718 -


Transact Integration Gateway Development
Journey Platform | System Manager / DevOps | v4.3 & Higher

Alt hough Transact Int egrat ion Gat eway (TIG) cont inues t o receive support , it is recommended t hat Journey
Plat form solut ion builders move away from using TIG and inst ead use Journey Manager REST APIs t o build
Journey Plat form solut ions. Cont inuing t o use TIG may complicat e an upgrade pat h when TIG is event ually
deprecat ed in a fut ure release.

Groovy Development
TIG provides t he same int egrat ion libraries as Manager for performing Groovy script development . This provides a
wide range of opt ions for performing simple and sophist icat ed int egrat ions.

For det ails on t he Groovy language, see t he Groovy Language Syntax Specification .

Securit y Rest rict ions


The TIG Groovy 2.4.5 runt ime is t he same one provided wit h Manager and includes a number of securit y rest ric-
t ions t o prevent script s from t erminat ing t he applicat ion server.

Script Developm ent


A good way of developing TIG Groovy script s and making configurat ion changes is t o use a code edit or and point it
at t he TIG config direct ory. Any changes you make t o your Groovy script s will be loaded immediat ely by TIG, and
your script s will be int erpret ed dynamically. This enables you t o quickly develop and t est script s wit hout having t o
go t hrough lengt hy compile and deployment cycles. The development experience is much like writ ing JavaScript .

A good code edit or t o use for t his is t he free Microsoft Visual Studio Code. In Visual St udio Code, open a TIG con-
figurat ion direct ory t o edit your Groovy script s and configurat ions.

Transact Int egrat ion Gat eway Development - 719 -


Delivery Service Script
A delivery t ype service Groovy script example is shown below. This script det ails t he Groovy script paramet ers
and error handling.

Transact Int egrat ion Gat eway Development - 720 -


/** Groovy Delivery Script

This Groovy script should perform any transaction delivery.

If the delivery integration fails, then the script can throw an exception and the
delivery will not be completed in Transaction Manager and can be retried again at a
later point.

If the script does not throw an exception, the transaction will be considered
to have been delivered, and TM will be notified that delivery has been completed.

At this point Transaction data will be available for purging.

Script parameters:
serviceName : String
parameters : Map<String, String>
transaction : com.avoka.transact.service.delivery.Transaction
deliveryDir : String
*/
import com.avoka.core.groovy.GroovyLogger as logger

def deliveryInfo = """


serviceName: $serviceName
parameters: $parameters
transaction.id: $transaction.id
deliveryDir: $deliveryDir
"""

logger.info deliveryInfo

The Groovy delivery service example below performs an Email delivery t o t he Microsoft Exchange Email server
and includes t he form XML, PDF receipt and file uploads as at t achment s t o t he email. The example ext ernalizes
email service configurat ions t o service paramet ers.

Transact Int egrat ion Gat eway Development - 721 -


/** Groovy Delivery Script

This Groovy script should perform any transaction delivery.

If the delivery integration fails, then the script can throw an exception and the
delivery will not be completed in Transaction Manager and can be retried again at a
later point.

If the script does not throw an exception, the transaction will be considered
to have been delivered, and TM will be notified that delivery has been completed.

At this point Transaction data will be available for purging.

Script parameters:
serviceName : String
parameters : Map<String, String>
transaction : com.avoka.transact.service.delivery.Transaction
deliveryDir : String
*/
import com.avoka.core.groovy.GroovyLogger as logger
import com.avoka.transact.service.delivery.Transaction
import com.avoka.transact.service.delivery.Transaction.Attachment
import microsoft.exchange.webservices.data.core.*
import microsoft.exchange.webservices.data.credential.*
import microsoft.exchange.webservices.data.core.service.item.EmailMessage
import microsoft.exchange.webservices.data.core.enumeration.misc.ExchangeVersion
import microsoft.exchange.webservices.data.property.complex.MessageBody

logger.debug """$serviceName parameters: $parameters"""

// Create Exchange WS client


ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP2)
service.setUrl(new URI(parameters.emailUrl))
service.setCredentials(new WebCredentials(parameters.emailUser, para-
meters.emailPassword))

// Create email subject line and message body


def subject = """$transaction.formCode Submission: $transaction.id"""

def body = """


<pre>
Form Name: $transaction.formName
Tracking Code: $transaction.trackingCode
Email: $transaction.contactEmailAddress

Transact Int egrat ion Gat eway Development - 722 -


</pre>
"""

// Send email with attachments


EmailMessage msg = new EmailMessage(service)
msg.getToRecipients().add(parameters.emailUser)
msg.setSubject(subject)
msg.setBody(MessageBody.getMessageBodyFromText(body))
msg.getAttachments().addFileAttachment("form.xml", transaction.xmlData)
msg.getAttachments().addFileAttachment("receipt.pdf", transaction.receiptData)
for (Attachment attachment : transaction.attachments) {
def name = "attachment-" + attachment.id + "-" + attachment.fileName
msg.getAttachments().addFileAttachment(name, attachment.fileData)
}
msg.send()

// Log message
logger.info """$subject email sent to: $parameters.emailUser"""

Gat eway Service Script


A gateway t ype service Groovy script is shown below. This script det ails t he Groovy script paramet ers and error
handling.

Transact Int egrat ion Gat eway Development - 723 -


/** Groovy Servlet Script

This Groovy script should perform its business logic using request context information
and return its textual results.

To render the response directly the script can use the HttpServletResponse response
object
and then return null. The GroovyServlet will then consider the operation to be com-
pleted.

When handling internal errors, an error code should be send on the response object
and the script should return null.

If the script throws an exception the GroovyServlet will write the error to the
server log file and return a HTTP 500 Server Error to the caller.

Script parameters:
serviceName : String
parameters : Map<String, String>
request : javax.servlet.http.HttpServletRequest
response : javax.servlet.http.HttpServletResponse

Script return:
textual string data
*/
import com.avoka.core.groovy.GroovyLogger as logger
import com.avoka.component.http.GetRequest

def url = parameters.urlBase + 'ajax/services/search/web?v=1.0&q=' + request.getParameter


('q')

def httpResponse = new GetRequest(url).execute()

response.setContentType('application/json')

return httpResponse.getTextContent()

Scheduled Service Script


A scheduled t ype service Groovy script is shown below. This script det ails t he Groovy script paramet ers and error
handling.

Transact Int egrat ion Gat eway Development - 724 -


/** Groovy Job Script

This scheduled Groovy script should perform its business logic.

Any exceptions thrown will be logged to the server log file.

Script parameters:
jobName : String
serviceName : String
parameters : Map<String, String>
*/
import com.avoka.core.groovy.GroovyLogger as logger

def jobInfo = """


jobName: $jobName
serviceName: $serviceName
parameters: $parameters
"""

logger.info jobInfo

Adding JAR Libraries


To include addit ional Java libraries (JAR) for use by Groovy script s, place t hese libraries in t he placeholder JBoss mod-
ules folder:

C:\avoka\transact\tig\server\modules\com\avoka\custom\main

Next , edit t he modules.xml file t o reference your included JAR files:

C:\avoka\transact\tig\server\modules\com\avoka\custom\main\modules.xml

For example:

Transact Int egrat ion Gat eway Development - 725 -


<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.0" name="com.avoka.custom">
<resources>
<!-- Include your JAR libraries here. -->
<resource-root path="custom.jar" />
</resources>
<dependencies>
<!-- Included your library module dependencies here. -->
<module name="system" />
</dependencies>
</module>

You must rest art t he TIG service for t hese libraries t o become available.

If your JAR file has dependencies on t hird part y libraries, you should also include t hese files in t his modules dir-
ect ory.

If t he server has t roubles loading your JAR files, you will t ypically see t hese when t he server st art s up or when you
call your Groovy script .

Logging
To monit or t he act ivit y of TIG, see t he server log file:

C:\avoka\transact\tig\server\standalone\log\server.log

When developing Groovy script s, you can use t he GroovyLogger t o log DEBUG, INFO, WARN and ERROR mes-
sages t o t he server log file

import com.avoka.core.groovy.GroovyLogger as logger

logger.debug 'Started service call'

// ...

logger.debug 'Completed service call'

To t une t he server logging out put , edit t he standalone.xml configurat ion file in:

Transact Int egrat ion Gat eway Development - 726 -


C:\avoka\transact\tig\server\standalone\configuration\standalone.xml

By default , t he GroovyLogger will only log INFO and above level messages.

See t he JBoss st andalone XML element s below for t he various configurat ion opt ions:

<subsystem xmlns="urn:jboss:domain:logging:1.1">
<console-handler name="CONSOLE" autoflush="true">
<level name="INFO"/>
<formatter>
<pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
</formatter>
</console-handler>
<periodic-rotating-file-handler name="FILE" autoflush="true">
<level name="INFO"/>
<formatter>
<pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
</formatter>
<file relative-to="jboss.server.log.dir" path="server.log"/>
<suffix value=".yyyy-MM-dd"/>
<append value="true"/>
</periodic-rotating-file-handler>
<logger category="com.avoka.core.groovy.GroovyLogger">
<level name="INFO"/>
</logger>
<root-logger>
<level name="INFO"/>
<handlers>
<handler name="CONSOLE"/>
<handler name="FILE"/>
</handlers>
</root-logger>
</subsystem>

Next , t ake a look at an overview of the Temenos Journey Platform.

Transact Int egrat ion Gat eway Development - 727 -


Transact M anager Previous Releases
Journey Platform

You can find document at ion for earlier version releases of Journey Manager (Transact Manager) using t he following
links:

l Transact Manager v4.3


l Transact Manager v5.0

You must have an exist ing KB user accound t o access t hese links. The KB account is different t o t he com-
munit y account .

Transact Manager Previous Releases - 728 -


Transact Fluent SDK Overview
Journey Platform | Platform Developer | 5.1 & Higher | Deprecated in 17.10

Journey Manager is designed t o be int egrat ed wit h ext ernal syst ems. This makes t he Journey platform highly
ext ensible, allowing it t o meet t he growing demands of t he most complex financial and government environment s
wit h low or no code changes by using configurat ion rat her t han development act ivit ies. Client s can ext end t he Man-
ager core capabilit ies t o achieve goals t hat aren't possible wit h built -in funct ionalit y, such as int egrat ion wit h a cus-
t om back-end syst em.

Manager comes wit h t he Transact Fluent SDK, which developers can use t o ext end t he Journey plat form by writ ing
Groovy 1 script s t hat hook int o Manager's services and ext ension point s.

Transact Fluent SDK includes:

l Transact Fluent API references.


l Manager Fluent libraries.
l Manager Fluent project t emplat es t o develop Groovy services using modern IDE2s.

l Tools t o help int eract wit h Manager Rest APIs t o support deployment and t est ing of services.

The Fluent Groovy APIs have been designed t o enable a simplified Fluent programming style, improve learning,
reduce programming complexit y, increase product ivit y, and improve code readabilit y. Upgrades and maint enance
become smoot her because of t he simplified and unchanging Transact Fluent API. Finally, t he new APIs provide
enhanced levels of securit y and performance.

1Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.
2Int egrat ed Development Environment .

Transact Fluent SDK Overview - 729 -


Transact Fluent SDK support s IDE1-based development t hat includes:

l Source cont rol int egrat ion for t eam development project s
l Code modularizat ion and reuse
l Unit t est ing
l Real-t ime code complet ion and error checking

Transact Fluent SDK creat es a development environment for client s, part ners, and t he Cust omer Service t eam t o
rapidly ext end Manager funct ionalit y wit h new back office Int egrat ions, workflows, and service connections t o vari-
ous FinTech 2 services.

Next , learn about t he benefits of using Groovy in Manager.

1Int egrat ed Development Environment .


2Financial Technology, also known as FinTech, is a new indust ry t hat uses new t echnology and innovat ion t o

improve act ivit ies in finance. It aims t o compet e wit h t radit ional financial met hods in t he delivery of financial ser-
vices t o cust omers by improving cust omer experience, reducing t ime-t o-market , decreasing cost t o ment ion a few.

Transact Fluent SDK Overview - 730 -


Benefits of Using Groovy in Journey M anager
Journey Platform | Platform Developer | 5.1 & Higher | Deprecated in 17.10

Journey Manager is writ t en in Java 1 and runs on Java Virt ual M achine 2 (JVM). Manager provides ext ensive sup-
port for using Groovy 3 language, which enables developers t o quickly implement business and integration logic
wit hout having t o deploy cust om code as jar files and rest art Manager servers.

Groovy has t he following benefit s, over ot her script ing languages, t hat make it t he right candidat e for Manager:

1Java is a programming language t hat produces soft ware for mult iple plat forms. When a programmer writ es a Java

applicat ion, t he compiled code (known as byt ecode) runs on most operat ing syst ems (OS), including Windows,
Linux and Mac OS. Java derives much of it s synt ax from t he C and C++ programming languages.
2Java Virt ual Machine (JVM) is a soft ware-based machine t hat runs Java programs. It can be inst alled on several dif-

ferent operat ing syst ems, including Windows, OS X, and Linux. JVMs allow Java apps t o run on almost any com-
put er.
3Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.

Benefit s of Using Groovy in Journey Manager - 731 -


l Groovy is a dynamic script ing language, which allows developers t o implement and cust omize Groovy script s
wit hout re-compiling and re-deploying Manager applicat ions. The script s can be st ored as files or as object s
in t he DB1. Manager ext ensively ut ilizes Groovy script s t o implement Transact Services. It has t he advant age
t hat t he service does not need t o be compiled nor t he cont aining component rebuilt prior t o use. For more
informat ion, see t he service definit ions ext ension point s list ed below.
l Groovy is developed for Java, so it runs on JVM and most of t he code writ t en in Java will compile and work as
expect ed when you t ry t o run it as a Groovy script . It seamlessly and t ransparent ly int egrat es and is com-
pat ible wit h Java and any t hird-part y libraries.
l Groovy is Java synt ax compat ible, so learning Groovy won’t be challenging for someone who knows Java
already.
l Groovy has concise, brief and direct synt ax, which makes it easy t o learn, develop and read t he code. It
requires less lines of code t o implement t he same funct ionalit y as compared wit h Java.
l Groovy has nat ive support for markup languages, such as XML and HTML, wit h which developers can quickly
creat e sophist icat ed applicat ion logic and in less code. It also enables t he definit ion and manipulat ion of
many t ypes of dat a asset s, which is handy in dat a preparat ion and manipulat ion.
l Groovy comes wit h int egrat ed support for convert ing bet ween Groovy object s and JSON 2.

l Groovy is a t est ing-orient ed development language, which is great for writ ing concise and maint ainable t est s,
and for all your build and aut omat ion t asks.
l Groovy has powerful feat ures - closures, builders, runt ime and compile-t ime met a-programming, funct ional
programming, t ype inference, and st at ic compilat ion - which allows developers t o implement complex applic-
at ion rules in a concise and well defined way.

Groovy was first int roduced in Manager v3.3.0 and it has been ext ensively used since v3.5.0. Manager v17.10
support s Groovy v2.4.15. Every major Manager release includes t he lat est Groovy release. If you want t o keep
up-t o-dat e wit h Groovy releases, refer t o http://groovy-lang.org/index.html.

Manager uses service definit ions, which provide Groovy ext ension point s for t he following service types.

1A dat abase is a dat a st ruct ure t hat st ores organized informat ion. Most dat abases cont ain mult iple t ables, which

may each include several different fields. For example, a company dat abase may include t ables for product s,
employees, and financial records. Each of t hese t ables would have different fields t hat are relevant t o t he inform-
at ion st ored in t he t able.
2JSON (JavaScript Object Not at ion) is a synt ax for st oring and exchanging dat a and is used in Maest ro t o st ore

forms. If a Form Builder want s t o t ransfer t heir form t o anot her syst em, t hey can do so by using t he Download
JSON file but t on.

Benefit s of Using Groovy in Journey Manager - 732 -


l Delivery Process.
l Dynamic Dat a.
l Form Prefill.
l Form Saved Processor.
l Groovy Service.
l Receipt Number.
l Scheduled Service.
l Submission Complet e Processor.
l Submission Preprocessor.
l Task Expiry.

All t hese services have Groovy tab t hat allows developers t o writ e a Groovy script t o implement specific require-
ment s.

The script can be t est ed using t he Unit Test tab , which significant ly speeds up t he development process and helps
t o find most of t he errors before making use of t his service.

Benefit s of Using Groovy in Journey Manager - 733 -


Next , learn about benefit s of using Fluent Groovy services.

Benefit s of Using Groovy in Journey Manager - 734 -


Fluent Groovy Services vs Groovy Services
Journey Platform | Platform Developer | 5.1 & Higher | Deprecated in 17.10

Journey Manager is based on an ext ensible service-orient ed archit ect ure, which enables developer t o implement
highly configurable services writ t en in Groovy 1 language. There are t wo t ypes of service t o choose from t o imple-
ment a new Groovy service: Fluent Groovy service and Groovy service. The main difference bet ween t hem is:

l Fluent Groovy service uses Transact Fluent API.


l Groovy service uses Transact Core API.

It is st rongly recommended t o use t he Fluent Groovy service for any new client s, services and applicat ions
development . If t his can't be done due t o limit at ions in t he Fluent APIs, Groovy services must be used.
However, some effort s must be made t o migrat e exist ing Groovy services t o Fluent ones, whenever possible,
because Manager fut ure version will force everyone t o only use t he Fluent APIs.

The det ailed difference bet ween t he services is out lined below.

Fluent Groovy Service


The Fluent Groovy service is a service t hat can only use Transact Fluent API. It is impossible t o call any Transact
Core API from t his service. The reasons are as follows:

1Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.

Fluent Groovy Services vs Groovy Services - 735 -


l Simplify and speed up service implement at ion for developers because t hey need t o know only limit ed set of
Fluent APIs (34 Fluent API classes vs 1042 Core API classes)
l Enable t o use t he Fluent programming model, see t he example below:

import com.avoka.tm.svc.*
def params = [:] params.refNumber = ...
def result = new GroovyServiceInvoker()
.setServiceName("Ref Lookup")
.setClientCode("maguire")
.setVersion("0.2.1")
.invoke(params)

l Allows t o use short names, and immut able value object s


l Reduce t ime t o market and reduce development cost s
l Fast er t o t rain developers and scale t eams
l More support able and st able API cont ract , because t hey are bet t er regression t est ed
l Easier upgrades
l Improved syst em performance
l Bet t er archit ect ure for writ ing server-side business logic where services are t ied t o a single t rigger point and
can be used across a range of t riggers and arbit rary invocat ions
l Allows Groovy t ypes checking
l Rest rict ed from using Transact Core APIs t o prevent developers from running int o implement at ion t roubles
or design confusions. For example, object mapping API is rest rict ed, but value object s API is allowed.
l Enforces t he Java-like class synt ax, as opposed t o script -like synt ax. It makes development more st ruct ured.
In t he above example, if you creat e a new service from Fluent Dynamic Dat a t emplat e, your new Groovy
script will look like t his (compare t o t he script example in t he Groovy Service sect ion):

import com.avoka.tm.util.*
import com.avoka.tm.vo.*
import javax.servlet.http.*

class FluentDynamicData {
public Logger logger
String invoke(SvcDef svcDef, Txn txn, HttpServletRequest request, User user) {
String data = '''{ "address": { "firstLine": "123 Wall Street" } }'''
return data
}
}

Fluent Groovy Services vs Groovy Services - 736 -


Developers are encouraged t o creat e new services as Fluent Groovy services. Developers might encount er a
few sit uat ions when it is difficult , if yet possible, t o implement a service using Fluent Groovy service (due t o
Transact Fluent API limit at ions). However, it can be resolved on case by case basis. For more informat ion, see
Fluent Groovy Service Developer Guide.

Fluent service can only invoke Dynamic Groovy services, if t he inst all t ime Groovy Secure API rest rict ion is not
enforced.

Groovy Service
The Groovy Service uses bot h Transact Core API and Transact Fluent API, which allows developers t o implement
nearly any service possible. However, t here are number of disadvant ages t hat are list ed below:

l Implement at ion can become complex and labor ext ensive because t here are hundreds of APIs t o learn and
use. This significant ly increase t he development cost .
l Developers should have deep underst anding of t he APIs t o be able t o writ e services.
l High possibilit y t o execut e pot ent ially dangerous code t hat can crash t he whole Manager server, for example
System.exit(), or direct ly manipulat e wit h dat abase object s.
l Groovy code is not st able because it relays of Transact Core API t hat can change and will change over t ime t o
accommodat e for bug fixes and Manager new feat ures.

l There is no t ype checking or any ot her st at ic checks on t he Groovy service code, so oft en t he first t ime you
would find out somet hing had broken was when it failed at runt ime.
l Provides t he script -like synt ax. In t he above example, if you creat e a new service from Groovy Dynamic Dat a
t emplat e, your new Groovy script will look like t his:

import com.avoka.core.groovy.GroovyLogger as logger


def data = '''{
"address": {
"firstLine": "123 Wall Street"
}
}'''
return data

Developers are discouraged t o creat e new services using core Groovy services, which are considered t he leg-
acy API and have been deprecated since Journey Manager version 19.11. Inst ead, whenever possible, use Flu-
ent Groovy Service .

Fluent Groovy Services vs Groovy Services - 737 -


As t he core API are deprecat ed, you can find all legacy Groovy services, which use t hese core API, by running t he fol-
lowing script in t he Groovy console wit h t he Secure Fluent API Only checkbox unselect ed.

import com.avoka.fc.core.dao.*
import com.avoka.tm.query.*
import com.avoka.tm.vo.*

List<SvcDef> svcDefs = new SvcDefQuery()


.withCurrentVersion()
.setFetchLimit(50000)
.listValues()

println "all services: " + svcDefs.size()

def legacyServices = svcDefs.collect{ svcDef ->


def svc = DaoFactory.serviceDefinitionDao.getServiceDefinitionForPK(svcDef.id)
return !svc.isFluentApiService() ? svc : null
}.findAll {it && it.getClassnameBeanname().contains("Groovy") }

println "all non fluent services: " + legacyServices.size()

legacyServices.collect { it.serviceName + " >> " + it.serviceType }.each {


println it
}

Configuration Example
To creat e a new Dynamic Dat a service (Groovy service) from Services menu, you have an opt ion t o creat e t his ser-
vice based on t he Fluent Dynamic Dat a Templat e (Fluent Groovy service), or Groovy Dynamic Dat a Templat e
(Groovy service), as shown below.

Fluent Groovy Services vs Groovy Services - 738 -


It is recommended t o use Fluent Groovy service.

Next , learn about Transact Fluent SDK.

Fluent Groovy Services vs Groovy Services - 739 -


Fluent API REST Service
Journey Platform | Platform Developer | 21.05

As you know, Journey Manager comes wit h an ext ensive set of private Fluent API enabling you t o implement vari-
ous complex business requirement s. All you need t o do is t o just writ e a Groovy scrip t hat calls a few API and run it
wit hin your service. And it all works. However, what happens when you want t o invoke t he same Fluent API out side
Manager. Now, we have a solut ion for you!

The 21.05 release of Journey Manager has int roduced a new service (com.a-
voka.fc.admin.service.FluentApiService.java) which exposes some of Manager's Fluent API via REST1
end point s. This service is simple t o underst and and use and yet it provides you wit h abilit y t o invoke rich in func-
t ionalit y Fluent API.

This is t he Bet a release of t he Fluent API REST service, which implement s only a limit ed number of Fluent API.
We may need t o updat e or even change some service funct ionalit y or implement at ion depending on REST per-
formance, usabilit y, and your feedback.

Now, you are probably curious t o find out how it all works. Well, it 's rat her simple. The Fluent API REST service is
included in t he new Transact Manager WAR module, along wit h ot her REST services, so if you've inst alled or
upgraded Journey Manager t o t he 21.05 release, you can st art using t he Fluent API REST service. The new service
archit ect ure is illust rat ed in t he diagram below:

Requests
You int eract ion wit h t he Fluent API REST service st art s by sending a REST request . Each Fluent API class and every
of it s met hods (operat ions) form a single endpoint , which you call by sending a request t o a URL in t he following
format :

https://{SERVER}/manager/secure/rest/fluentapi/{CLASSNAME}/{OPERATION}

Where:

l SERVER is your Manager server inst ance


l CLASSNAME is a case-insensit ive name of Fluent API class, for example, txnupdater for t he TxnUpdater
class
l OPERATION is a case-insensit ive name of a final met hod (orerat ion) t o be called on t his API, for example,
update

1REST or RESTful API design (Represent at ional St at e Transfer) is designed t o t ake advant age of exist ing prot ocols.

While REST can be used over nearly any prot ocol, it usually t akes advant age of HTTP when used for Web APIs.

Fluent API REST Service - 740 -


We have chosen t he combinat ion of class names and met hods t o simplify t he learning curve for developers,
who are already familiar wit h our Fluent API.

You have t o provide a body payload for an operat ion in a JSON 1 format , where each set met hod has it s own
ent ry in t he JSON payload. The Fluent API REST server processes t he request and sends back a response including a
response code and a payload, depending on an operat ion.

Let 's illust rat e it wit h a simple example. Suppose, you want t o updat e a t ransact ion delivery st at us from a Groovy
script . For t hat , you use t he TxnUpdater class, as shown below.

import com.avoka.tm.svc.*
import com.avoka.tm.vo.*

new TxnUpdater(txn)
.setId​
( 733)
.setDeliveryStatus(Txn.DELIVERY_READY)
.update()

You can achieve t he same result by execut ing t his POST request wit h a payload:

POST https://{SERVER}/manager/secure/rest/fluentapi/txnupdater/update
Content-Type:application/json
Accept:application/json
{
"setId" : "733",
"setDeliveryStatus" : "Ready"
}

Let 's examine t he REST POST met hod:

l txnupdater is t he TxnUpdater class


l update is t he last met hod t o be called on t he inst ance of TxnUpdat er class, which is t he update ()
met hod
l setId set s a t ransact ion ID t o be updat ed, which is t he setId() met hod
l setDeliveryStatus set s t he Ready st at us of a t ransact ion, which is t he setDeliveryStatus() met hod
You can see t he REST met hod basically mimics t he Fluent API call, which makes developer's life much easier.

1JSON (JavaScript Object Not at ion) is a synt ax for st oring and exchanging dat a and is used in Maest ro t o st ore

forms. If a Form Builder want s t o t ransfer t heir form t o anot her syst em, t hey can do so by using t he Download
JSON file but t on.

Fluent API REST Service - 741 -


Responses
Each Fluent API REST request has a corresponding response including an HTTP code and dat a in a JSON format or
an error message. We've simplified and minimized t he number of responses, so it 's easy t o use t he service.

The Fluent API REST service ret urns t he following HTTP response codes:

HTTP Code Description

200 OK This code is r etur ned when a Fluent API REST call is successful.

This code is r etur ned when a Fluent API REST call fails due to bad input. The er r or
400 Bad
message in the r esponse includes an er r or log ID so you can find mor e details
Request
about the er r or in the error log.

This code is r etur ned when a Fluent API REST call fails tr ying to update or access
404 Not Found objects that don't match pr ovided ID. The er r or message in the r esponse includes
an er r or log ID so you can find mor e details about the er r or in the error log.

Security
Manager has a new REST Fluent API core permission which you must assign t o roles of users who will invoke t he
Fluent API REST service. The Administ rat or role has t his permission set by default . We recommend creat ing a ded-
icat ed user wit h t his permission.

Class Names
This release of Manager has t he following CLASSNAMEs implement ed:

CLASSNAME Usage Example

ActionRes-
ultBuilder
Deliv-
eryTxnBuild-
er
Emailer
GroupQuery
JobAc-
tionQuery
JobBuilder
JobQuery
JobStepQuer-
y
JobUpdater

Fluent API REST Service - 742 -


Pay-
mentLo-
gQuery

Fluent API REST Service - 743 -


Prop-
ertyQuery

Fluent API REST Service - 744 -


Prop-
ertyBuilder
RefDataSvc
RefDataQuer-
y
RoleQuery
SpaceQuery
SvcCon-
nQuery
SvcDefQuery
SvcCon-
nUpdater
Track-
ingCodeBuil-
der
TxnBuilder
TxnUpdater
TxnHis-
toryQuery

Quer y by ID

https://localhost/manager/secure/rest/fluentapi/txnquery/firstValue
TxnQuery
{
"setId" : "733"
}

UserQuery

https://localhost/manager/secure/rest/fluentapi/userbuilder/create

{
"setEmail" : "person@temenos.com",
UserBuilder
"setUserType" : "Local",
"setLoginName" : "loginName",
"setPassword" : "pAs3W0rd!@#"
}

Fluent API REST Service - 745 -


https://localhost/manager/secure/rest/fluentapi/useremailer/sendEmail

{
UserEmailer "setLoginName" : "loginName",
"setSpaceName" : "Work Space",
"setType" : "WELCOME"
}

Next , learn about Fluent Groovy Services vs Groovy Services.

Fluent API REST Service - 746 -


About Journey Platform New Releases
Journey Platform | All Personas | 5.1 & Higher

Product versioning and product releases go hand in hand wit h each ot her. We updat e and improve t he Temenos
Journey Platform product s on a regular basis and make t hese changes available t o our cust omers t hrough indi-
vidual product releases. We use major and minor releases t o dist ribut e new product versions. The kind of changes
included in a product release depend on whet her it is a major or minor release:

Major Release
A major release adds new product feat ures, enhancement s, libraries, and bug fixes, and, somet imes, can int roduce
behavioral changes t hat may affect Groovy services and int egrat ions wit h ot her syst ems. While we t ry t o minimize
t hese changes, you need t o review all product enhancement s carefully t o det ermine if and how t hey may affect
your exist ing implement at ions.

A major release is denot ed by a 0 as t he t hird number in t he release number, wit h t he t wo first numbers rep-
resent ing t he year and mont h of t he release. For example, 18.05 .0, 19.05 .0, or 20.11 .0 or 21.11 .0.

Maintenance Release
A maint enance release usually includes only bug fixes and minor changes. However, t here can be except ions when
a maint enance release includes new feat ures. If t his is t he case, it will be clearly document ed in t he product release
not es.

A minor release is denot ed by t he t hird number in t he release number being great er t han 0. For example, 18.05.10 ,
or 19.05.5 .

Release Notes Sitemap


Det ailed informat ion on all major and minor releases is available from t he Release Notes Sitemap in our Journey
Platform resources website.

What's New
For a quick summary of What 's New in each major release, see:

What's New in 22.04

What's New in 21.11

What's New in 21.05

What's New in 20.11

What's New in 20.05

About Journey Plat form New Releases - 747 -


What's New in 19.11

What's New in 19.05

Next , learn about our End-of-Life policy.

About Journey Plat form New Releases - 748 -


What's New in 22.04
Journey Platform | All Personas | 22.04

The 22.04 release has a number of new excit ing feat ures and enhancement s across t he whole range of Temenos
Journey Platform product s. The updat ed product s and t heir changes are list ed below.

What 's New in 22.04 - 749 -


Journey M aestro New Features
This release of Maest ro includes long await ed updat es and bug fixes of many early feat ures, so you'll be delight ed
t o upgrade your current product t o t he lat est 22.04 version of our soft ware.

Read t he det ailed Maest ro release notes or check t he main release features.

l Updat ed 3-rd party libraries and dependencies, including support for ECMAScript 2019

l Upgraded t he Font Awesome library t o version 5.15.4 from 4.5.0, so many new icons are now available in t he
icon picker in t he rich text editor

l Improved accessibilit y in several widget s, for example, in t he Dropdown Multi Select component

l Enhanced t he validat ion framework t o properly include component validat ion on pages t hat were not visit ed

l Fixed many bugs from our backlog

Journey Maest ro New Feat ures - 750 -


Journey M anager New Features
We are pleased t o announce our lat est 22.04 release of Journey Manager is ready for you t o download! It 's packed
wit h new feat ures and bug fixes, which you have been wait ing for.

Read t he det ailed Journey Manager release notes or check t he main release features.

l Improved t he exist ing not ificat ion messages int erface t o let you creat e and schedule status change of vari-
ous ent it ies, such as form spaces, organizations, forms, and form versions

l Added a new status management service t o aut omat ically execut e scheduled ent it y st at us changes

l Provided a set of new REST API t o expose exist ing Operat ions as a service. These API will be consumed by
new Workspaces funct ionalit y

l Added new permissions t o t he Workspaces form space t o provide fine-grained cont rol for new Workspaces
Operat ional Port al REST API, such as txn/query, txn/status, txn/task, and txn/purge, as well as t he
exist ing txn/cancel.

l Included a new version of t he SDK, which requires t he Journey SDK Maven Plugin t o run. We've modified t he
underlying framework of t he int egrat ion point s bet ween Manager and t he SDK t o accommodat e t his
change.
l Updat ed 3-rd party libraries

Journey Manager New Feat ures - 751 -


Exchange New Features
We are pleased t o announce t he updat e of five Exchange packages for t he 22.04 release.

Read t he det ailed Exchange release notes or view each updat ed package below:

l Plaid TAF
l Mastersoft Harmony
l Gov.AU
l VIX Verify greenID
l Equifax IDMatrix

Exchange New Feat ures - 752 -


Journey Analytics New Features
We are pleased t o announce t he lat est 22.04 release of Journey Analyt ics is ready! The 22.04 enhancement s
improve exist ing funct ionalit y and incorporat e t he following updat es.

Read t he det ailed Journey Analyt ics release notes or check t he main release features.

l New t oolt ips added t o t he Dashboard View.

l The Scope Selector now displays t he form code wit h each form making it easier t o correct ly ident ify t he form
you want t o analyse.
l Open UX support has been enhanced t o provide Open UX applicat ions wit h full analyt ics capabilit ies. A
sample project is now available from t he Downloads sect ion!

l Various bug fixes.

Journey Analyt ics New Feat ures - 753 -


Journey Workspaces New Features
The Journey Workspaces 22.04 release includes enhancement s t o t he Journey Workspaces port al and Applicant
space, and t he int roduct ion of a new Operat ions port al.

Workspaces port al improvement s include enhancement s t o t he search and not es feat ures, and an updat ed applic-
at ion t imeline, while t he Applicant space now offers t heming capabilit ies and a new not es feat ure. This release also
int roduces a new Operat ions Assist ance port al for operat ions st aff and administ rat ors t hat allows aut hent icat ed
users t o search and view t ransact ions in a Temenos Journey Manager (TJM) syst em when providing operat ional
assist ance t o banks and t heir cust omers.

Read t he det ailed Journey Workspaces release notes or check t he main release feat ures.

Key feat ures included in t his release:

l Improved search and not es feat ures in t he Workspaces port al.


l Applicant space enhancement s, including theme support , timeline improvement s, and a new notes feat ure.

l A brand new Operations portal, allowing operat ions st aff and administ rat ors t o search for t ransact ions, view
t ransact ion det ails, and perform t ransact ion act ions.
l An improved build and deployment process via Product Art ifact ory.
l Migrat ion t o t he Night wat ch framework for API, configurat ion, and UI aut omat ion.

Next , learn more about t he Temenos Journey platform .

Journey Workspaces New Feat ures - 754 -


What's New in 21.11
Journey Platform | All Personas | 21.11

The 21.11 release has a number of new excit ing feat ures and enhancement s across t he whole range of Temenos
Journey Platform product s. The updat ed product s and t heir changes are list ed below.

What 's New in 21.11 - 755 -


Journey M aestro New Features
This release of Maest ro includes long await ed updat es and bug fixes of many early feat ures, so you'll be delight ed
t o upgrade your current product t o t he lat est 21.11 version of our soft ware.

Read t he det ailed Maest ro release notes or check t he main release features.

l Enhanced t he TM Form Version building funct ionalit y so you can choose which brand t o use from t he
Brands Opt ions.
l Improved whit e-labelling1 support so you can set up mult iple brands in a single template much easier.

l Int roduced t he new Avalon Template, which replaces t he Maguire template, and brings a more modern look
and feel and encapsulat es common design pat t ern, helping t o speed development t ime frames.

l We have part nered wit h XLTS.dev who will provide on-going support for AngularJS for Maest ro t o ensures it s
longevit y.

1Whit e-label soft ware is soft ware t hat is purchased by a company from a service provider and re-branded as it s

own.

Journey Maest ro New Feat ures - 756 -


Journey M anager New Features
We are pleased t o announce our lat est 21.11 release of Journey Manager is ready for you t o download! It 's packed
wit h new feat ures and bug fixes, which you have been wait ing for.

Read t he det ailed Journey Manager release notes or check t he main release features.

l Int roduced a new set of st at uses for organizations, form spaces, forms and form versions, so you have fine
cont rol over each of t he ent it ies.
l Updat ed 3rd party libraries in line wit h our cont inuous soft ware development .

Journey Manager New Feat ures - 757 -


Journey Analytics New Features
We are pleased t o announce t he lat est 21.11 release of Journey Analyt ics is ready! The 21.11 enhancement s
improve exist ing funct ionalit y and incorporat e t he following updat es.

Read t he det ailed Journey Analyt ics release notes or check t he main release features.

l The Timeline View now provides users more opt ions for aggregat ing dat a. The t oolt ip displayed on hover of
t he bar chart has also been improved t o order t he colour sequence t o mat ch t he bar chart for bet t er read-
abilit y.
l Users can now select a custom date range in a single view in t he calendar.

l Abilit y t o allow users t o see near-t ime dat a from t he current day by adding a new Today opt ion t o t he
period selector .
l For t hose cust omers wit h forms across mult iple organisat ions, t he organisat ion name will now be displayed
above t he form name in t he Scope Selector t o help different iat e bet ween forms of t he same name across dif-
ferent organisat ions.
l The User Journey View segment at ion chart has been ext ended t o accommodat e t he display of t he t op 10
segment at ion values.

Journey Analyt ics New Feat ures - 758 -


Journey Workspaces New Features
We are pleased t o announce t he lat est 21.11 release of Journey Workspaces. This release int roduces a new space
for aut hent icat ed applicant s in addit ion t o improving t he Workspaces experience for processing agent s, helpdesk
agent s, assist ed channel st aff, and group managers.

Read t he det ailed Journey Workspaces release notes or check t he main release feat ures.

Key feat ures included in t his release:

l A new space for authenticated applicants as a self-service port al for managing applicat ion creat ion, follow-
ups, and keeping t rack of applicat ion progress.
l An improved build and deployment process for Workspaces which is now available direct ly from t he product
Artifactory.
l Support for job properties t o configure t he Workspaces key info sect ion and cust om cards.

l Support for swit ching bet ween languages used for t he Workspaces UI, and ot her enhancement s t o t he loc-
alizat ion framework.
l An enhanced focused search feat ure t hat now allows searching on fields t hat are not displayed in t he it em
list .

Journey Workspaces New Feat ures - 759 -


What's New in 21.05
Journey Platform | All Personas | 21.05

The 21.05 release has a number of new excit ing feat ures and enhancement s across t he whole range of Temenos
Journey Platform product s. The updat ed product s and t heir changes are list ed below.

What 's New in 21.05 - 760 -


Journey M aestro New Features
This release of Maest ro includes long await ed updat es and bug fixes of many early feat ures, so you'll be delight ed
t o upgrade your current product t o t he lat est 21.05 version of our soft ware.

Read t he det ailed Maest ro release notes or check t he main release features.

l Maest ro Dashboard improvement s


l Component s space separat or
l Securit y hardening
l Maest ro Edit or improvement s

Journey Maest ro New Feat ures - 761 -


Journey M anager New Features
We are pleased t o announce our lat est 21.05 release of Journey Manager is ready for you t o download! It 's packed
wit h new feat ures and bug fixes, which you have been wait ing for. One of t he excit ing feat ures is a Fluent API REST
service. As you know, Manager comes wit h an ext ensive set of privat e Fluent API enabling you t o implement vari-
ous complex business requirement s. All you need t o do is t o just writ e a Groovy scrip t hat calls a few API and run it
wit hin your service. And it all works. However, what happens when you want t o invoke t he same Fluent API out side
Manager. Now, we have a solut ion for you!

Read t he det ailed Journey Manager release notes or check t he main release features.

l A new REST service - Proof of Concept


l Fluent API

l Manager inst aller


l Report s

Journey Manager New Feat ures - 762 -


What's New in 20.11
Journey Platform | All Personas | 20.11

The 20.11 release has a number of new excit ing feat ures and enhancement s across t he whole range of Temenos
Journey Platform product s:

What 's New in 20.11 - 763 -


Journey M aestro New Features
Read t he det ailed Journey Maest ro release notes t o learn about t hese new feat ures and enhancement s.

l Int roduced t he new concept of shared organ- l Securit y improvement s


ization libraries l Performance improvement s
l Added drag and drop funct ionalit y t o order lib- l Developer experience enhancement
raries in t he list
l Library exclude opt ion ret ains t he order of lib-
raries

Journey Maest ro New Feat ures - 764 -


Journey M anager New Features
Read t he det ailed Journey Manager release notes or click t he links below t o learn about each new feat ure.

l A new magic byte scanning service l Updat ed 3rd party libraries

l A new Attachment File Name Regex deployment


propert y

Journey Manager New Feat ures - 765 -


SpringboardSmall Business (SM B) New Features
Read t he det ailed Springboard release notes or click t he links below t o learn about each new feat ure.

l Int roduces a new Springboard Solut ion for small l Improved documentation to accommodate mul-
businesses - SMB tiple Springboard solutions

SpringboardSmall Business (SMB) New Feat ures - 766 -


What's New in 20.05
Journey Platform | All Personas | 20.05

The 20.05 release has a number of new excit ing feat ures and enhancement s across t he whole range of Temenos
Journey Platform product s:

What 's New in 20.05 - 767 -


Journey M aestro New Features
Read t he det ailed Journey Maest ro release notes t o learn about t hese new feat ures and enhancement s.

l Improved t he command line offline build tool l Enhanced component publishing dependency

l Added t he right to left language support

Journey Maest ro New Feat ures - 768 -


Journey M anager v20.05 New Features
Read t he det ailed Journey Manager release notes or click t he links below t o learn about each new feat ure.

Azure Cloud support : Aut omat ic deployment and t est ing:

l Encryption key management using Azure Key l The ExampleImport Service, which was used t o
Vault import example art ifact s int o Manager on init ial
l At t achment and Receipt st orage using Azure st art up, now support s all archive t ypes. This is
Blob Storage useful t o import t est art ifact s for aut omat ion
t est ing.
l System Event Publisher using Azure Queue
l The bulk user import spreadsheet is expanded
t o support Groups, Roles and Organization . This
is also incorporat ed int o t he ExampleIm-
port Service.

Journey Manager v20.05 New Feat ures - 769 -


Journey Analytics New Features
Read t he det ailed Journey Analyt ics release notes or click t he links below t o learn about each new feat ure.

l Journey Analyt ics int egrat ion for Kony Visualiser l New Milest one Funnel report
web apps l UX and Design Improvement s
l Springboard Out -of-t he-Box Journey Analyt ics
support

Journey Analyt ics New Feat ures - 770 -


Journey Workspaces New Features
Read t he det ailed Journey Workspaces release notes t o learn about t hese new feat ures and enhancement s.

l Improved build and deployment process l Improved session logout aft er a period of inact iv-
l Switch between timeline tasks when viewing it y
applicat ion det ails l Dat e picker enhancement s: single dat e, cust om
l Task-specific actions, and a new View Notes format s
act ion l Search/ Filt er opt ions on it em list ret ained in ses-
l A new focused and fast er search opt ion sion

l A fresh new user int erface l Assignee full name displayed when assigning a
t ask
l Improved cust om card – permission cont rol,
hide empt y dat a l Enhanced applicat ion/ t ask list – configure line
wrapping in t ables
l At t achment name now shown in Document s
panel

Journey Workspaces New Feat ures - 771 -


Exchange New Features
Read t he det ailed Exchange release notes or click t he links below t o learn about each new feat ure.

l New Socure TAF package l Updated FIS ChexSystems TIF package


l Updated AuthenticID TAF package l Updated Iovation TAF package
l Updated Worldpay TAF package l Updated Plaid TAF package
l Exchange Framework

Exchange New Feat ures - 772 -


Springboard v3.0.0 New Features
Read t he det ailed Springboard release notes or click t he links below t o learn about each new feat ure.

l A new Product Selector form wit h seamless t rans- l Updated documentation


it ion t o DAO form l Addressed some t echnical debt
l Upgrade t o Maest ro v19.11
l iOvat ion call removed for Workspaces

Springboard v3.0.0 New Feat ures - 773 -


What's New in 19.11
Journey Platform | All Personas | 19.11

The 19.11 release has a number of new excit ing feat ures and enhancement s across t he whole range of Temenos
Journey Platform product s:

What 's New in 19.11 - 774 -


Journey M aestro New Features
Read t he det ailed Journey Maest ro release notes t o learn about t hese new feat ures and enhancement s.

Improvement s t o shared component s including: l Securit y hardening t o address securit y issues


uncovered during penet rat ion t est ing
l View a component 's order of inherit ance and
source det ails
l View a component 's propert ies and t heir source
l Display child component s at any level
l Revert local overrides from properties panel or
properties display

Journey Maest ro New Feat ures - 775 -


Journey M anager New Features
Read t he det ailed Journey Manager release notes or click t he links below t o learn about each new feat ure.

l General Fluent API enhancement s l Adobe LiveCycle support removed


l Fluent API receipt ing enhancement s l Card Payment page removed from t he Work-

l Fluent Securit y Managers support added space


l Form version import opt ions include Form
Funct ion now

Journey Manager New Feat ures - 776 -


Journey Analytics New Features
Read t he det ailed Journey Analyt ics release notes or click t he links below t o learn about each new feat ure.

l New A/B Testing View (now Custom Reports l Improved User Journey save, zoom and seg-
View) save feature and improved metrics mentation features
l Dropoff View improvements l Scope selector improvements

Journey Analyt ics New Feat ures - 777 -


Journey Workspaces New Features
Read t he det ailed Journey Workspaces release notes t o learn about t hese new feat ures and enhancement s.

l Improved int erface for applicat ions wit h mult iple l Det ailed console report ing t o aid debugging of
applicant s/ product s configurat ion issues (NEW)
l Support ed act ions offer cust om act ions and per- l Monit or crucial service indicat ors, e.g. applicat ion
mission cont rol SLAs, on t he list ing screen (NEW)
l Wit hdraw a saved applicat ion (NEW) l Document s card enhancement t o include/ ex-
l Recover abandoned applicat ions (NEW) clude document s using pat t ern mat ching
l Improved out -of-t he-box t emplat es for review,
helpdesk, assist ed channel, and manager

Journey Workspaces New Feat ures - 778 -


Exchange v19.11 New Features
Read t he det ailed Exchange release notes or click t he links below t o learn about each new feat ure.

l New AuthenticID package l Updated Yodlee package


l New Worldpay package l Updated Mitek Tiden package
l Exchange Framework l Securit y hardening

Exchange v19.11 New Feat ures - 779 -


What's New in 19.05
Journey Platform | All Personas | 19.05

The 19.05 release has a number of new excit ing feat ures and enhancement s across t he whole range of Temenos
Journey Platform product s:

What 's New in 19.05 - 780 -


Journey M aestro New Features
Read t he det ailed Journey Maest ro release notes or click t he links below t o learn about each new feat ure.

l Receipt Designer
l Offline Builds (BETA)

Journey Maest ro New Feat ures - 781 -


Journey M anager New Features
Read t he det ailed Journey Manager release notes or click t he links below t o learn about each new feat ure.

l Journey Workspaces API security enhancements l COR and security headers added to the form
l Chromium Puppeteer Receipt Service space standard properties
l A new TxnUpdat er Ret urn Behavior propert y
added t o deployment properties

l Theorganizat ion Report Scheduler feat ure


removed

Journey Manager New Feat ures - 782 -


Journey Analytics New Features
Read t he det ailed Journey Analyt ics release notes or click t he links below t o learn about each new feat ure.

l A/B Testing View (now Custom Reports View) l Export

Journey Analyt ics New Feat ures - 783 -


Journey Workspaces New Features
New and improved feat ures - see Journey Workspaces release notes or click t he links below t o learn about each
new feat ure.

l New role-based spaces – Helpdesk, Manage and l Enhanced UI – Key app info , Applicants and Back-
Assisted Channel ground checks
l New management feat ures – Assign and Unas- l Improved application timeline support ing com-
sign tasks plex workflow
l Kick-start applications on behalf of cust omers l Out-of-the-box templates t o get you going fast er

Journey Workspaces New Feat ures - 784 -


Exchange New Features
Read t he det ailed Exchange release notes or click t he links below t o learn about each new feat ure.

l New Iovation TAF package l Updated Equifax IDMatrix package


l New Plaid TAF package l Updated Mitek Tiden package
l New Yodlee TAF package l Updated Gov.au package

Exchange New Feat ures - 785 -


Journey M anager Features
Journey Manager (JM) | System Manager / DevOps | 22.04

Journey Manager comes packed wit h t he wide range of feat ures empowering you t o creat e complex cust omer
onboarding and user journey solut ions. Some of t he main product feat ures have now become it s core func-
t ionalit y. Click on each feat ure t o learn more.

Main Features
l Forms for bot h anonymous and aut hent icat ed users
l Form prefill wit h user dat a
l Form save and resume

l Form delivery and provisioning

l Receipts and at t achment management


l Services and service connections t o various 3rd part y services
l Form dat a access using t he Unified Application Data Document Model and transaction properties

l Digit al signat ure int egrat ion


l Collaboration workflows and product bundling orchest rat ion
l Form and process analytics t o improve cust omer journey

l Form t est ing, including A/B form testing

l Security management , including Single sign-on 1 and a user ident it y verificat ion
l Management of in-flight t ransact ions and t ransient dat a
l Error handling, monitoring, and logging for auditability and compliance regulat ions
l Int egrat ion wit h syst ems of records
l Configurable support of full redundancy, qualit y of service and disast er recovery
l Encrypt ion of in-flight dat a for enhanced securit y
l Management of complex PII2 dat a and encrypt ion keys
l Email notifications for various form's event s

1Single sign-on (SSO) is a propert y of access cont rol of mult iple relat ed, yet independent , soft ware syst ems. Wit h

t his propert y, a user logs in wit h a single ID and password t o gain access t o any of several relat ed syst ems.
2Personally Ident ifiable Informat ion (PII) is informat ion about an individual t hat can be used t o dist inguish or t race

an individual‘s ident it y, such as name, social securit y number, dat e and place of birt h, mot her‘s maiden name, or
biomet ric records; and any ot her informat ion t hat is linked t o an individual. In Europe, PII is known as personal
dat a.

Journey Manager Feat ures - 786 -


Features by Release
Each release of Manager is shipped wit h new feat ures and bug fixes t o provide you wit h t he best -in-class soft ware
and t o accelerat e business agilit y and improvement s across t he board.

The key feat ures for each major Manager release are list ed below. Click on each release number t o view t he com-
plet e release not es and learn about all feat ures and bug fixes.

22.04
Release Key Features Description

Impr oved the existing notification messages inter face to let you cr eate
and schedule status change of var ious entities, such as form spaces,

Status Management organizations, form s, and form versions.

Added a new status m anagem ent service to automatically execute


scheduled entity status changes.

Pr ovided a set of new REST API to expose existing Oper ations as a ser -
vice. These API will be consumed by new Wor kspaces functionality.

Wor kspaces API updates Added new perm issions to the Wor kspacesfor m space to pr ovide
fine-gr ained contr ol for new Wor kspaces Oper ational Por tal REST API,
such as txn/query, txn/status, txn/task, and txn/purge, as well
as the existing txn/cancel.

Included a new ver sion of the SDK, which r equir es the Journey SDK
Maven Plugin to r un. We've modified the under lying fr amewor k of the
Maven SDK
integr ation points between Manager and the SDK to accommodate this
change.

Upgrades & Security Updated 3-rd party libraries

For more informat ion see Manager 22.04 Release Notes.

21.11
Release Key Features Description

New Statuses added for Intr oduced a new set of statuses for organizations, form spaces,
or ganizations, for m spaces, form s and form versions, so you have fine contr ol over each of the
for m ver sions and for ms entities.

Scheduled Gr oovy ser vices now r un using the Ser viceUser role, which
New Ser viceUser r ole defaults to a admin level r ole. This r ole can be limited to enhance the
secur ity ar ound these ser vices, if r equir ed.

Journey Manager Feat ures - 787 -


New CSRF Pr otection Added the CSRF Protection option to the Wor kspaces, Wor kspace and
option Web-plug spaces.

For more informat ion see Manager 21.11 Release Notes.

21.05
Release Key Features Description

A new REST ser vice - Pr oof A new service which exposes some of Manager 's Fluent API via REST1
of Co ncept end points.

We've fur ther expanded the Fluent API to expose mor e featur es to
help r educe the dependency on the depr ecated Cor e Gr oovy API:

l Form VO - Included t he form t ype t hrough t he getFormType()


met hod.
l TxnUpdater, JobUpdater and TxnQuery - Included feat ure t o
Fluent API
view and manager comment s against Transact ions and Jobs
l TxnUrlBuilder - Included t he capabilit y t o generat e secure URL
for forms/ t ransact ions t hrough t he setSecured() accessor
met hod.
l TxnUpdator - Included t he capabilit y t o lock and unlock t he save
Challenge lock st at e for a t ransact ion

We've enhanced the installer so that for AWS installs using MySQL SSL is
enabled by default to impr ove ser ver secur ity. For mor e infor mation,
see the SSL JDBC Connection Enfor cement for MySQL section of the
installation guide.
Manager installer
Due to components r equir ing commer cial licenses, iText, Or acle and
Luna dependencies ar e not included with installs by default. These will
need to be deployed separ ately. For mor e infor mation, see the Manual
Libr ar ies Deployment section of the installation guide.

Remove the PDF expor t option fr om the Transaction and Job Licens-
Reports
ing r epor ts because it uses iText, which r equir es a commer cial license.

For more informat ion see Manager 21.05 Release Notes.

1REST or RESTful API design (Represent at ional St at e Transfer) is designed t o t ake advant age of exist ing prot ocols.

While REST can be used over nearly any prot ocol, it usually t akes advant age of HTTP when used for Web APIs.

Journey Manager Feat ures - 788 -


20.11
Release Key Features Description

Added suppor t for :

Cor e ser vices


l A new magic byte scanning service

l A new Attachment File Name Regex deployment propert y

For more informat ion see Manager 20.11 Release Notes.

20.05
Release Key Features Description

Added suppor t for :

Azur e Cloud suppor t l Encryption key management using Azure Key Vault
l At t achment and Receipt st orage using Azure Blob Storage

l System Event Publisher using Azure Queue

Added suppor t for :

l The ExampleImport Service, which is used t o import example art i-


Automatic deployment and fact s int o Manager on init ial st art -up, now support s all archive t ypes.
testing This is useful t o import t est art ifact s for aut omat ion t est ing.
l The bulk user import spreadsheet is expanded t o support Groups,
Roles and Organization . This is also incorporat ed int o t he ExampleIm-
port Service.

For more informat ion see Manager 20.05 Release Notes.

19.11
Release Key Features Description

Added suppor t for :

Gener al Fluent API l TxnUpdater, TxnQuery, TxnBuilder and Txn VO t o improve


enhancements t he t ransact ion level capabilit y of t he Fluent API
l Emailer and UserEmailer
l Added a new Job Builder class

Fluent API r eceipting


Added suppor t for :
enhancements

Journey Manager Feat ures - 789 -


l Calling a named receipt render service from wit hin a Fluent Receipt
Service t o enable receipt merging while st ill generat ing a receipt for
t he associat ed t ransact ion.
l Generat ing a Web and Email received from a Fluent Receipt Service.
l Ext ernalizat ion of t he Core PDFUt ils met hods t o merge receipt in Flu-
ent .

Added suppor t for :

l A Fluent User Aut hent icat ion Provider, wit h a t emplat e for a skelet on
Fluent Groovy User Aut h Provider.
Fluent Secur ity Manager s l A Fluent Securit y Manager, which includes a t emplat e for a skelet on
suppor t added SSO Securit y Manager and an out -of-t he-box ADFS Securit y Man-
ager.
l Fluent Securit y Managers implement at ion has result ed in a number
of new Fluent API classes t o support t he script ing wit hin a Securit y
Manager.

For m ver sion impor t


For m ver sion impor t options include For m Function now.
enhancements

Removed:

Removed featur es
l Adobe LiveCycle support removed
l Card Payment page removed from t he Workspace

For more informat ion see Manager 19.11 Release Notes.

19.05
Release Key Features Description

Enhanced to suppor t the development of the new help desk per sona
for the Workspaces, including:

Wor kspace API


l Transact ion search using mult iple crit eria
l Addit ional updat es t o Txn and Job Queries
l Security enhancements

Enhanced to r educe the dependency on the Cor e API and impr ove
upgr ade suppor tability, including:

Fluent API l New Payment Log Query class


l Improved TxnQuery t ransact ion search capabilit ies
l New feat ure t o support collaborat ion jobs
l Added form expiry informat ion t o t he Form object

Journey Manager Feat ures - 790 -


Secur ity enhancements Impr oved CORS suppor t for form spaces

Chr omium puppeteer Added a new Chrom ium puppeteer receipt service to r ender for ms
r eceipt ser vice as PDF r eceipts

Upgr aded the dependent libr ar ies, including:

Libr ar y upgr ades l Apache Cayenne 4.0


l Spring Securit y 4
l Wildfly 16

Removed:

Removed featur es l Birt and PayPal Payment gat eway. It is replaced wit h t he Transact ion
and Job Licensing screens for t ransact ion usage informat ion.
l PayPal Payment gat eway.

For more informat ion see Manager 19.05 Release Notes.

18.11
Release Key Features Description

Intr oduced new REST API to suppor t the development of r ich UI exper -
iences for ‘Back of House’ staff who suppor t complex wor kflows and
Wor kspace API
pr ovide help desk functions to end user s. The API utilizes Swagger and
Spr ing Secur ity.

Added a new Maestr o for m r ender ing mode which significantly r educes
Static content extern- the time it takes to load lar ge for ms. This is impor tant as long applic-
alization ation loading times can significantly incr ease the bounce r ate with user s
simply closing the br owser window befor e star ting the application.

Added a new user authentication event feed to send user login


System Event Publisher events. Enhanced scheduled pur ge time and actual pur ge time for a
transaction .

Added suppor t for :

l Added Validat ion of dat e field t o t he workspace port al t o fix int ernal
error when provided dat e is invalid.
Secur ity har dening
l Securit y around service connect ion password in t he manager UI.

Removed confir mation page and r eceipting fr om the Ser ver Monitor
For m configur ation.

Journey Manager Feat ures - 791 -


Upgr aded the dependent libr ar ies, including:

l Open JDK 11
l User Agent Ut ils 1.21
l Spring Framework 4.3.19
l Spring Securit y 43.1.7
Libr ar y upgr ades
l Bouncycast le 1.60
l SDK 3.9
l org.apache.xmlgraphics bat ik 1.10

Removed:

l JLine

Added suppor t for :


Platfor m suppor t enhance-
ments l Microsoft SQL Server 2017 dat abase.
l Microsoft Windows Server 2016 operat ing syst em.

Fluent API Added new API.

Behavior changes Enhanced management of submissions' lifetime.

Removed:

l FopRenderReceipt Service receipt render service and org.a-


Removed featur es
pache.xmlgraphics library
l Use of Flash in t he Manager UI
l Apache Camel Support for Groovy Services

For more informat ion see Manager 18.11 Release Notes.

18.05
Release Key Features Description

Intr oduced the System event publisher to connect exter nal systems
thr ough an AWS SQS queue, in near r eal time, wher e the messages can
System event publisher
be picked to pr ovide up to date infor mation about the states of for m
tr ansactions in Jour ney Manager .

Libr ar y upgr ades Upgr aded the dependent libr ar ies, including:

Journey Manager Feat ures - 792 -


l Apache Groovy Lang 2.4.15
l Eclipse BIRT Runt ime 4.6.0
l JDBC Dat abase Drivers (MySql, Oracle and SQL Server)
l JUnit 4.12
l Oracle Java JDK 1.8u172

Added suppor t for new Insights, including:


Platfor m suppor t enhance-
ments l Cent rally st ored ECCL Script
l Fluent API t o send Insight s Segment s from server side Groovy Script s

Fluent API Added new API

Enhanced the tr ansaction abandonment and data pur ging to ensur e PII
Behavior changes
data is r emoved accor digly.

For more informat ion see Manager 18.05 Release Notes.

17.10
Release Key Feature Description

Intr oduced Fluent Functions to allow you to use functional pr o-


Tr ansact Functions gr amming within Jour ney Manager , so you can now wr ite a function
once and simply tr igger it at whatever points or points you need.

Pr ovided impr oved CI-based testing suppor t. Cr eated a definition of


Continuous Integr ation what is included in the application package and ver sioned in GIT or
another SCM tool.

Combined developer tools into a unified Tr ansact SDK to pr ovide a


Tr ansact SDK single set of tools to help developer s make the most of integr ating with
Tr ansact API while using Continuous Integr ation (CI/CD).

Intr oduced Tr ansact Refer ence Data to decouple r efer ence data fr om
Refer ence data the for m, decr ease the for m loading time, and enable you to deploy
once and use in many for ms.

Unified ver sioning acr oss the platfor m for consistency including full
semantic ver sioning acr oss all for ms and ser vices. Semantic Ver sioning
Semantic ver sioning enables two teams to wor k in par allel on mor e than one for m solution
and per mits hier ar chical management of ver sions. Additional featur es
include suppor t for up to 3 levels of ver sions and ver sion br anching.

Journey Manager Feat ures - 793 -


Add suppor t for Str ict Secur ity Header s to enfor ce that each HTTP
r equest within authenticated user session is checked to make sur e it is
Secur ity har dening
the or iginated sour ce that cr eated the session. The HTTP r equest's IP
Addr ess and Br owser User Agent ar e checked.

Collabor ation Jobs Enhanced collaboration jobs to suppor t gr oup shar ing.

For more informat ion see Manager 17.10 Release Notes.

5.1
Release Key Features Description

Retention dur ation time is r educed to make sur e Jour ney Manager is
used as a system of engagement and not a system of r ecor ds:
Data retention policy
enhancements
l Transact ions - reduced from 180 days t o 90 days.
l Transact ion hist ory - reduced from 2 years t o 180 days.

Added the following publishing ser vices to publish tr ansaction histor y dir -
ectly to a data war ehouse:
Tr ansaction histor y data
war ehouse integr ation l AWS S3
l File syst em
l Fluent Groovy

Intr oduced a new scr ipt-able install or upgr ade mode for deployment
automation, which suppor ts Continuous Integr ation (CI) testing. This
Automated deployments mode is beneficial to both hosted ser vices and IT pr ofessionals in that it
helps to automate pr ovisioning and upgr ading, which in tur n can
impr ove quality by r educing oper ator er r or s.

Fine gr ained for m space Enhanced for ms authentication policies, which depend on for m space
authentication policies they ar e in.

Added new Fluent ser vice types.

l Form version Select or


Fluent Gr oovy API
l Receipt Render
l Transact ion Hist ory Publisher
l Virus Scan Service

Added new configur ations for Or ganization Pr oper ties, Deliver y Chan-
Application packages
nels, and Ser vice Connections.

Journey Manager Feat ures - 794 -


Intr oduced a new Secur ity Manager logger that can be used in all Secur -
Secur ity manger logging
ity Manager Gr oovy scr ipts.

Enhanced Maestr o for m updates fr om Jour ney Manager , so it uses the


Update to latest Maestr o
latest build of the Maestr o for m without expor ting a Maestr o For m Ver -
for m fr om within Manager
sion Ar chive and then impor ting it Manager .

Intr oduced localization to Jour ney Manager and Maestr o, which allows
Maestr o localization sup-
multiple languages to be added to a single for m. This featur e allows a
por t
for m to change languages based on the user s of the for m.

For m and ser vice ver sion pinning:

l The form code for Review Tasks is no longer necessary. Task Assign
Collabor ation Jobs act ions t hat do not specify a Form Code will by default use t he same
form code and version as t he previous submission.
l The Form Version can be explicit ly set in t he Job Definit ion.
l The Job Act ion Version can be explicit ly set in t he Job Definit ion.

Histor y logging, so the state of the job is r ecor ded and logged at the end
Collabor ation Jobs
of each br anch of pr ocessing completes.

For more informat ion see Manager 5.1 Release Notes.

5.0
Release Key Features Description

Intr oduced completely new and impr oved API, which can be used fr om
Fluent Gr oovy API
Gr oovy scr ipts.

Added suppor t for Maestr o for m ver sion impor t defaults, which
Maestr o for m ver sion
pr ovides specialized impor t behavior if a for m ver sion ar chive was cr e-
impor t
ated in Maestr o.

For more informat ion see Manager 5.0 Release Notes.

4.3
Release Key Features Description

Application packages Added suppor t for :

Journey Manager Feat ures - 795 -


l Form bundle and form chaining
l Receipts wit h Groovy script s
l Dynamic t ask assignment
l Cancellable t asks
l Publish and subscribe dat a ext ract sharing
l Unified navigat ion support

Added suppor t for AWS Key Management System (KMS) data encr yp-
AWS KMS
tion in the Cloud Ser vice Enter pr ise VDC edition.

Added compr ehensive Gr oovy Ser vices test fr amewor k to suppor t


Gr oovy ser vice tests
acceler ated development and development best pr actices.

Added Tr ansactions, Ser vice Definitions and Gr oovy Ser vice Invoke
REST API
REST API.

Added secur ity r ole and gr oup gr ant leases, impr oved SEM logging sup-
Secur ity har dening
por t and Apache Mod Secur ity configur ations.

Added For m Secur ity Filter , Gr oovy Receipt ser vice types, ser vice ver -
sioning suppor t, Gr oovy Ser vice Logging, impr oved documentation, ser -
Ser vice impr ovements
vice editing and for m and ser vice definition Or ganization Application
Packages.

Intr oduced TIG, which pr ovides a light weight on-pr emise integr ation
Tr ansact Integr ation Gate-
module for per for ming deliver ies and pr oxy calls to inter nal systems.
way
This module r eplaces the TIA and TDA modules.

For more informat ion see Manager 4.3 Release Notes.

Det ailed informat ion on Manager releases is available from the Release Notes Sitemap in our Journey Plat-
form resources website.

Next , learn more about deprecated features.

Journey Manager Feat ures - 796 -


M aestro Features
Maestro | Form Builder Platform Developer | 21.11

Journey Maestro comes packed wit h t he wide range of feat ures empowering you t o creat e complex cust omer
onboarding and user journey solut ions. Some of t he main product feat ures have now become it s core func-
t ionalit y. Click on each feat ure t o learn more.

Main Features
l Ready-t o-use form components and complex native widgets t hat support st andard JavaScript 1

l Internationalization and right-to-left (R2L) language support


l Configurable form accessibility

l Securit y permissions and roles t o access and design forms


l Advanced Maestro editor including WYSIWYG, undo edit ing operat ions, copy and past e across several forms,
and source code edit ing funct ionalit y
l Seamless form building and deployment t o Journey Manager using FAR files

l Offline Build t o develop forms in your favorit e IDE


l External source control
l Templates and brands t o accelerat e form development process
l Logging and error handling t o simplify form t roubleshoot ing
l Opt imized performance

l All t ools are accessible via a web browser so no local soft ware inst allat ion is required

Features by Release
Each release of Maest ro is shipped wit h new feat ures and bug fixes t o provide you wit h t he best -in-class soft ware
and t o accelerat e business agilit y and improvement s across t he board.

The key feat ures for each major Maest ro release are list ed below. Click on each release number t o view t he com-
plet e release not es and learn about all feat ures and bug fixes.

22.04
Release Key Features Description

1Javascript (JS) is a script ing languages, primarily used on t he Web. It is used t o enhance HTML pages and is com-

monly found embedded in HTML code. JavaScript is an int erpret ed language. Thus, it doesn't need t o be compiled.

Maest ro Feat ures - 797 -


Upgr aded the Font Awesome libr ar y to ver sion 5.15.4 fr om 4.5.0, so
many new icons ar e now available in the icon picker in the rich text

Libr ar ies editor

Updated 3-rd party libraries and dependencies, including suppor t for


ECMAScr ipt 2019

Impr oved accessibility in sever al included widgets

Components
Enhanced the validation fr amewor k to pr oper ly include component val-
idation on pages that wer e not visited

For more informat ion see Maestro 22.04 Release Notes.

21.11
Release Key Features Description

Intr oduced the new Avalon Tem plate, which r eplaces the Maguire
tem plate, and br ings a mor e moder n look and feel and encapsulates
common design patter n, helping to speed development time fr ames.
Templates and br ands

Impr oved w hite-labelling1 suppor t so you can set up multiple


brands in a single tem plate much easier .

For more informat ion see Maestro 21.11 Release Notes.

21.05
Release Key Features Description

To impr ove the management of user s' organizations, projects, for ms,
form versions, libraries, and resources, we've added ability to select
multiple r esour ces and per for m the available actions on them, such as
delete, expor t and publish.
Maestr o Dashboar d

You, as a for m developer , can now delete published pr ojects, for ms and
for m designs fr om the Maestr o dashboard as you may not have access
to the Manager dashboard on the shar ed envir onment.

1Whit e-label soft ware is soft ware t hat is purchased by a company from a service provider and re-branded as it s

own.

Maest ro Feat ures - 798 -


We've intr oduced the Upload new Resources button to the libr ar y
r esour ce list so you can easily add a r esour ce to your pr oject.

We've added suppor t to have a " " (space) as the thousand separ ator to
Components
the Decim al , Percentage and Currency Field components.

Security We've updated all required libraries to harden our software security.

We've added the ability to copy and paste a block of content fr om one
for m to another . It only wor ks in a Chr ome br owser or any Chr omium
including Micr osoft Edge.

We've added an Icon Picker 1 in the r ich text editor , which is used in
Maestro editor
many component's pr oper ties, for example a label .

We've added suppor t for scr olling thr ough the entir e list of Br and
options (Br anding for For m) to find a r equir ed configur ation without
clicking on each individual entr ies.

For more informat ion see Maestro 21.05 Release Notes.

20.11
Release Key Features Description

Intr oduced the new concept of shared organization libraries

Libr ar ies Added dr ag and dr op functionality to or der libr ar ies in the list

Libr ar y exclude option r etains the or der of libr ar ies

For more informat ion see Maestro 20.11 Release Notes.

20.05
Release Key Features Description

SCM Improved the command line offline build tool

Language Added the right to left language support

Components Enhanced com ponent publishing dependency

For more informat ion see Maestro 20.05 Release Notes.

1The Icon Picker is a select ion dialog allowing you t o pick an icon from t he range of images shipped wit h Maest ro.

Maest ro Feat ures - 799 -


19.11
Release Key Features Description

Impr ovements to shar ed components:

l View a component 's order of inherit ance and source det ails
Shar ed components
l View a component 's propert ies and t heir source
l Display child component s at any level
l Revert local overrides from properties panel or properties display

Secur ity har dening to addr ess secur ity issues uncover ed dur ing pen-
Security
etr ation tests

For more informat ion see Maestro 19.11 Release Notes.

19.05
Release Key Features Description

Video Capture component added to pr ovide you with a r eliable user


Components
ver ification option

Receipts Receipt Designer

SCM Offline Builds (BETA)

For more informat ion see Maestro19.05 Release Notes.

18.11
Release Key Features Description

Libr ar ies Library Tagging

SCM Maestro SCM Feature Branching

Form Dependencies
Forms
Form Resource Sum m ary

For more informat ion see Maestro 18.11 Release Notes.

Det ailed informat ion on Maest ro releases is available from the Release Notes Sitemap in our Journey Platform
resources website.

Maest ro Feat ures - 800 -


Next , learn more about Manager features.

Maest ro Feat ures - 801 -


Journey Analytics Features
Journey Analytics | Analytics User | Latest Version

Journey Analytics comes packed wit h a wide range of feat ures empowering you t o analyze complex cust omer
onboarding and user journey solut ions. The main product feat ures have now become core funct ionalit y in t he
lat est cloud-host ed version. Click on each feat ure t o learn more.

Main Features
l The Dashboard provides a high-level overview of applicat ion performance.

l View an individual form's t ransact ion met rics and bet t er underst and complet ion rat es wit h Dropoff.

l Ident ify abandonment hot spot s and t rends in Field Analysis - wit h det ailed field-level st at ist ics.

l Visualize t he User Journey milest ones while segment ing users.

l Use t he Timeline t o compare applicat ion st at uses over t ime.

l Custom Reports provides a cust omizable dashboard for many different met rics in a single view.
l Visualize a Collaboration Job and view it 's key met rics for t he job, st ep, act ion, sect ion or field.

l Export analyt ics report s t o CSV.


l Segmentation analysis t o help underst and t he behavior of specific groups of users.
l Follow significant event s in t he user's journey t hrough Custom Milestones.

Features by Release
Each release of Journey Analyt ics is host ed wit h new feat ures and bug fixes t o provide you wit h t he best -in-class
soft ware and t o accelerat e business agilit y and improvement s across t he board. All cloud-host ed cust omers are
aut omat ically provided wit h t he lat est release.

The key feat ures for each major release of Journey Analyt ics are list ed below. Click on each release number t o view
t he complet e release not es and learn about all feat ures and bug fixes.

22.04
Release Key Features Description

The Scope Selector now displays the for m code with each for m making
Scope Selector
it easier to cor r ectly identify the for m you want to analyse.

Dashboard View improve-


New tooltips added to the Dashboard View.
ments
Open UX support has been enhanced to provide Open UX applications
Open UX Support with full analytics capabilities. A sample project is now available from the
Downloads section.

For more informat ion see Analytics 22.04 Release Notes.

Journey Analyt ics Feat ures - 802 -


21.11
Release Key Features Description

Custom per iod date selector displays a single view for star t and end
date selection.

Today option pr ovided for the per iod with Last Day being r enamed to
Yester day.

Scope Selector
For multi-or ganisation clients the or ganisation name is displayed with
the for m name in the for m ver sion selector .

Sor ting for ms in the for m ver sion selector is also available for multi-
or ganisation clients. For ms can be sor ted by or ganisation name or for m
name.

The Timeline View now provides users more options for aggregating data.
Timeline View improvements The tooltip displayed on hover of the bar chart has also been improved to
order the colour sequence to match the bar chart.
User Journey View seg- The User Journey View segmentation chart has been extended to display
mentation chart ten segmentation values compared to the previous five.

For more informat ion see Analytics 21.11 Release Notes.

21.05
Release Key Features Description

A/B Testing was r enamed to Custom Reports.

This view is a customizable dashboar d that makes it easy to compar e


the per for mance of your application ver sions, acr oss many differ ent
metr ics in a single view. Additional r epor ts have been added to the
view, such as:

Best, Worst, Avg - gauge t he best , worst and average t ime t aken t o com-
plet e applicat ions wit hin t he select ed scope.
Custom Reports View Completion Rate - examine applicat ion performance in t erms of user
complet ion for t he select ed scope in a bar chart .
Duration Summary - compare and sort t he best , worst , average, and
median t imes t o complet e each version in t he select ed scope using a
t able.
Median Time - compare t he median t ime t o complet e each version in
t he select ed scope as a bar chart .
Milestone Funnel - compare standard and custom milestone hit rat es
for t he select ed scope wit h a bar chart .

Journey Analyt ics Feat ures - 803 -


Section Completion - see complet ion across sect ions for t he select ed
scope using a line graph.
Section Summary - compare and sort by sect ion-level st at s for each ver-
sion in t he select ed scope in a t able.
Segment Split - discover t he breakdown of values of a segment t ype for
all t ransact ions wit hin t he select ed scope using a pie chart .
Segment Switch - examine how users t raverse values of a segment t ype
for all t ransact ions wit hin t he select ed scope using a sankey graph.
Session Map - invest igat e t he number of sessions occurring per count ry
for t he select ed scope using a choroplet h graph.
Top Fields - compare and sort by field-level st at s for each version in t he
select ed scope in a t able.
Transaction Summary - compare Transaction Statuses for t he select ed
scope using t his bar chart .
Improved analysis and met- Tooltip enhancements for the Field Analysis and Dropoff Views to provide
ric readability more detailed statistics.

For more informat ion see Analytics 21.05 Release Notes.

20.05
Release Key Features Description

A new Milestone Funnel report was introduced to the A/B Testing View.
Use this report to understand how milestones are encountered across one
Milestone Funnel report
or more applications. The chart is a bar chart where each bar represents
the number of milestone transactions.
Springboard Provided built-in analytics used by the Springboard solutions.

For more informat ion see Analytics 20.05 Release Notes.

19.11
Release Key Features Description

New reports available in the Segment Split, Duration Summary, Best, Worst Average Duration, and Ses-
A/B Testing View sions Map. Also rates have been added to the Segment Switch report.

Tr ansaction Recover y Suppor t - Quer y changes wer e made to the Jour -


ney Analytics backend to suppor t Wor kspace tr ansaction r ecover y. This
means that Abandoned tr ansactions that wer e subsequently com-
pleted (r ecover ed), will be r eflected accur ately in the Jour ney Analytics
Other enhancements views.

Help Tooltips - We impr oved help tooltips by ensur ing a consistent look
and feel to tooltips thr oughout the application. We also added mor e
clar ity to some ar eas via help text, namely the Per iod selector .

Journey Analyt ics Feat ures - 804 -


Expor t Column Or der ing - This new enhancement ensur es that the
or der in which metr ics (columns) ar e selected in the Export View UI, is
r eflected in the downloaded CSV.

For more informat ion see Analytics 19.11 Release Notes.

19.05
Release Key Features Description

The new Journey Analytics A/B Testing View brings a customizable dash-
A/B Testing View board that makes it easy to compare the performance of your application
versions, across many different metrics in a single view.
The new Custom Data Export allows you to export analytics reports to CSV
Custom Data Export with the ability to select the granularity of your reports and retrieve
exports for multiple applications in a single file.

Segment filter ing - Added to the Global Filter Panel to allow user s to
view differ ent segments of their analytics data.

Job filter ing - Added to the Cohor ts filter on the Global Filter Panel to
allow user s to filter by one or mor e collabor ation jobs, or ver sions of
Additional enhancements
jobs.

Last Analysis - Added to the Jour ney Analytics banner to show the date
and time the analytics data was last consolidated and updated. It typ-
ically r uns hour ly.

For more informat ion see Analytics 19.05 Release Notes.

18.11
Release Key Features Description

Insights has a br and-new user inter face that br ings together moder n
best pr actices to deliver a r efr eshed user exper ience. This was
achieved by a major r edesign of the Insights' fr ontend.
Visualizer user interface

This new user interface is called Visualizer , and will r eplace the Dash-
boar d user inter face fr om pr evious ver sions.

Insights extends suppor t for event collection to include Open UX applic-


ations, including Out Of The Box React implementations, such as Spr ing-
boar d implementations and fr amewor k agnostic wr apper s for ECCL
Open UX support integr ation.

This means that open UX applications can now be analyzed using


Insights, the same way Maestr o applications can be analyzed.

Journey Analyt ics Feat ures - 805 -


Insights now provides Collaboration Job analytics to monitor workflow
Collaboration Job support
level analytics.

For more informat ion see Analytics 18.11 Release Notes.

Next , learn more about Manager features.

Journey Analyt ics Feat ures - 806 -


Journey Workspaces Features
Workspaces | Workspaces User | 18.11 | 22.04
Journey Workspaces comes packed wit h a wide range of feat ures empowering you t o improve your cust omers'
experience wit h onboarding assist ance, rapid applicat ion resolut ion, and communicat ion of progress, regardless of
t he channel t hey are applying from. Out of t he box, Workspaces includes t he feat ures you need t o accomplish
your business object ives.

Main Features
l Review: Review capabilit ies for pending applicat ions t hat need manual act ion.
l Helpdesk: Support st aff can quickly and easily find any applicat ion t o provide assist ance.
l Assist : Assist ed channel st aff can kick st art t he applicat ion process and monit or progress.
l M anage: Task management capabilit ies for managers and supervisors.
l Applicant s: A self-service port al where aut hent icat ed applicant s can manage applicat ions.
l Operat ions: A view for Operat ions st aff t o search and manage TJM t ransact ions when providing operat ions
assist ance.

Features by Release
Each release of Journey Workspaces has new feat ures and bug fixes t o provide you wit h t he best -in-class soft ware
and t o accelerat e business agilit y and improvement s across t he board.

The key feat ures for each major Workspaces release are list ed below.

Journey Workspaces 22.04


To view t he release not es and learn about all t he new feat ures, improvement s, and bug fixes in t his release, see
Journey Workspaces 22.04 .

Key Feat ures Descript ion

Improved build
Improved version control in Product Artifactory that allows easy access to a specific
and deployment
Workspaces release.
process
A brand-new Operations portal that allows operations staff and administrators to
Operations
search and view TJM transactions when providing operational assistance to banks and
Space
their customers.
Theme support
in Applicant Apply a theme to the Applicant space to match bank branding and color schemes.
space
Notes feature in A new notes feature in the Applicant space that allows applicants to communicate dir-
Applicant space ectly with bank staff for assistance during the application process.
Search improve- Improvements to the Workspaces search feature, allowing the user to return to the
ments parent view quickly after completing a search.

Journey Workspaces Feat ures - 807 -


Key Feat ures Descript ion

Timeline Improvements to the Application timeline feature to filter out tasks or transactions
improvements that are not required.
Notes improve- Improvements to the Workspaces notes feature to make it easier for bank staff to com-
ments municate with applicants in the Applicant space.
Migration to
Migration from the old web driver framework to the Nightwatch framework for API,
new automation
config, and UI automation.
framework
Journey Workspaces 21.11
To view t he release not es and learn about all t he new feat ures, improvement s, and bug fixes in t his release, see
Journey Workspaces 21.11 .

Key Feat ures Descript ion

Impr oved build and An impr oved build and deployment pr ocess for Wor kspaces is now avail-
deployment pr ocess able fr om the Pr oduct Ar tifactor y.

Applicant Space tem- A fully configur able wor kspace for authenticated non-bank user s to man-
plate age the application jour ney.

Suppor t for Job Pr op- Suppor t for configur ing the Key Info car d and custom car ds using the applic-
er ties ation's job pr oper ties.

Localization impr ove- Suppor t for switching the UI language within Wor kspaces, and other minor
ments enhancements to the localization fr amewor k.

Configur e the sear ch featur e to include fields that ar e not par t of the item
Sear ch impr ovements
list data.

Journey Workspaces 20.05


To view t he release not es and learn about all t he new feat ures, improvement s, and bug fixes in t his release, see
Journey Workspaces 20.05 .

Key Feat ures Descript ion

Impr oved build and An impr oved build and deployment pr ocess for Wor kspaces that suppor ts
deployment pr ocess seamless integr ation to your dev-ops pr actices such as CI/CD.

Task-specific actions ar e pr esented alongside each task in an application to


Task-specific actions
give you confidence you'r e acting on the r ight task.

Journey Workspaces Feat ures - 808 -


Key Feat ures Descript ion

A new focused sear ch option that lets you sear ch on a specific application
Focused sear ch
data item and get r esults faster .

Impr oved UI / UX A fr esh new user inter face for an impr oved user exper ience.

Impr oved custom Impr oved custom car d configur ation including per mission contr ol and an
car d configur ations option to hide empty or null data.

Impr oved session


Automatic session logout after a defined per iod of inactivity.
logout

Date picker enhance- Enhancements to the date picker to suppor t single date selection and custom
ments date for mats.

Enhanced sear ch/- New sear ch and filter behaviour on the List pages, with the latest sear ch/filter
filter behavior r etained in each space until clear ed or the session ends.

Enhanced application
The assignee full name is displayed when assigning a task to a user .
assignment

Enhanced application An enhanced view configur ation, extending contr ol over line wr apping in data
listing tables.

Enhanced documents
Attachment name is now included for each item in the Documents panel.
panel

Journey Workspaces 19.11


To view t he release not es and learn about all t he new feat ures, improvement s, and bug fixes in t his release, see
Journey Workspaces 19.11 .

Key Feat ures Descript ion

Multi-applicant /
An impr oved inter face for viewing applications with multiple applicants and
multi-pr oduct inter -
pr oducts.
face

Enhancements to the suppor ted actions, now offer ing custom actions and per -
Wor kspaces actions
mission contr ol.

Withdr aw an applic-
The ability to withdr aw a saved application fr om Wor kspaces.
ation

Journey Workspaces Feat ures - 809 -


Key Feat ures Descript ion

Recover an applic-
The ability to r ecover an abandoned application fr om Wor kspaces.
ation

Console er r or Detailed console r epor ting of configur ation er r or s that eases the effor t
r epor ting r equir ed by solution builder s when debugging configur ation issues.

The ability to add a visual indicator in the application listing scr een to keep tr ack
Application SLA
of cr ucial ser vice indicator s like application SLA.

An enhanced documents car d inter face and configur ation that suppor ts
Documents car d
options to include or exclude cer tain documents using patter n matching.

Impr oved out-of-the-box templates for pr ocessing staff, helpdesk staff,


Templates
assisted channel staff, and manager per sonas.

Journey Workspaces 19.05


To view t he release not es and learn about all t he new feat ures, improvement s, and bug fixes in t his release, see
Journey Workspaces 19.05 .

Key
Descript ion
Feat ures

Role based
An impr oved inter face for viewing applications with multiple applicants and pr oducts.
spaces

Task man- Enhancements to the suppor ted actions that now offer s custom actions and per -
agement mission contr ol.

Kickstar t
The ability to withdr aw a saved application fr om Wor kspaces.
applications

Key Info car d The ability to r ecover an abandoned application fr om Wor kspaces.

Multi applic- Detailed console r epor ting of configur ation er r or s that eases the effor t r equir ed by
ant suppor t solution builder s to debug configur ation issues.

Application The ability to add a visual indicator in the application listing scr een to keep tr ack of cr u-
Timeline cial ser vice indicator s like application SLA.

Documents An enhanced documents car d inter face and configur ation that suppor ts options to
car d include or exclude cer tain documents using patter n matching.

Journey Workspaces Feat ures - 810 -


Key
Descript ion
Feat ures

Impr oved out-of-the-box templates for pr ocessing staff, helpdesk staff, assisted chan-
Templates
nel staff and manager per sonas.

Journey Workspaces 18.11


To view t he release not es and learn about all t he new feat ures, improvement s, and bug fixes in t his release, see
Journey Workspaces 18.11 .

Key
Descript ion
Feat ures

A view is a pr e-cr eated filter that allows agents to get to the tasks that they must wor k
on quickly.

Views offer the following benefits:


Views
l An efficient way t o keep t rack of pending applicat ions t hat need t o be processed.
l High visibilit y on t he applicat ions t hat ent er and exit t ask queues.
l Reduce overall t ime t o find t he t asks t hat need t o be processed.

Views can be fur ther r efined to suppor t the needs of pr ocessing agents by filter ing
and/or sor ting on specific task list columns.

Filter s offer the following benefits:


Filter s
l Augment a view's pre-configured crit eria.
l Allows furt her narrowing down on search crit eria.
l Specify mult iple filt er condit ions t o hone in on specific applicat ions.

Applicant info summar izes the key infor mation about the applicants.

Applicant Info offer the following benefits:


Applicant
Info l A simple summary about t he applicant s in an applicat ion.
l See key applicant det ails like name and phone number at a glance.
l Easily different iat e bet ween applicat ions wit h a single applicant or joint applicant s.

Validation r esults fr om thir d-par ty ser vices can be seamlessly integr ated and viewed
Backgr ound in Tr ansact Wor kspaces.
Checks
Backgr ound Checks offer the following benefits:

Journey Workspaces Feat ures - 811 -


Key
Descript ion
Feat ures

l Summarise t he result s from int egrat ed t hird-part y services.


l Visual indicat ors t hat aid in ident ifying t he act ions required on pending applicat ions.

A simple application timeline with the ability to add and r eview notes.

Application The Application Timeline offer s the following benefits:


Timeline
l A st reamlined way t o t rack t he st ages t hat an applicat ion has complet ed.
l A space for processing agent s t o add and review not es about t he applicat ion.

Add and r eview the attached documents captur ed at var ious application stages.

Attached Documents offer the following benefits:


Attached
Documents
l A cent ralized place for reviewing document s at t ached t o t he applicat ion at various
st ages.
l At t ach addit ional support ing document s while reviewing t he applicat ion.

Journey Workspaces Feat ures - 812 -


Temenos Journey Platform Features Compatibility
Journey Platform

Temenos Journey Platform soft ware has t wo major releases per year, wit h several minor releases in bet ween. A lot
of effort goes int o t he product development t o ensure t here is backward compat ibilit y bet ween t hese releases.
However, you may need t o have a cert ain Journey Manager version inst alled t o enable and use t he following
product feat ures.

Manager
Manager Product
Compatibility Issue
Version Feature

Jour ney
You can only use the Journey Analytics Visualizer UI alongside Manager
Analytics
18.11 ver sion 18.11. For ear lier Manager ver sions, the or iginal Jour ney Analytics
Visualizer
Dashboar d UI is used.
UI.

You can only send segments fr om Manager to Jour ney Analytics fr om


Manager
18.05 18.05 or later . It is not possible to send segments fr om any ear lier ver -
segments.
sions of Manager .

Manager You can only send custom milestones fr om Manager to Jour ney Analytics
17.10 custom fr om ver sion 17.10 or later . It is not possible to send custom milestones
milestones. fr om any ear lier ver sions of Manager

You can use semantic versioning1 in Maestr o and Manager older than
Maestr o ver sion 17.10, pr ovided the form version number is no longer than 10
17.10 semantic char acter s. For example, a ver sion "1.0.1" is 5 char acter s and will wor k,
ver sioning. but a ver sion "1.0.2-develop" is 13 char acter s and won't wor k. However , if
you tr uncate it to "1.0.3-dev", it will wor k.

Maestro
As we const ant ly updat e and improve our Maest ro product , we make sure it can run on most recent Manager ver-
sions. You can check t he compat ibilit y mat rix below t o confirm which Maest ro version you can run on your current
Manager installation .

1Semant ic Versioning is a formal convent ion for specifying compat ibilit y using a t hree-part version number: major

version; minor version; and pat ch. The pat ch number is increment ed for minor changes and bug fixes which do not
change t he soft ware's applicat ion programming int erface (API). The minor version is increment ed for releases
which add new, but backward-compat ible, API feat ures, and t he major version is increment ed for API changes
which are not backward-compat ible. For example, soft ware which relies on version 2.1.5 of an API is compat ible
wit h version 2.2.3, but not necessarily wit h 3.2.4.

Temenos Journey Plat form Feat ures Compat ibilit y - 813 -


Maestro Manager
Compatibility Issue
Version Version

Jour ney Manager 21.11 intr oduced the CSRF Protection option for XSRF
tokens suppor t in the wor kspaces, wor kspace and web-plug for m spaces. If
19.05+ this option is enabled, for ms other than the latest Maestr o maintenance
21.11 r eleases 19.05+ or for ms with custom ver sion of the Attachm ent Field wid-
21.11 get will be unable to upload attachments in the for m. To r esolve this, you will
need to upgr ade and r e-deploy the for m with this fix, available with the Maes-
tr o maintenance r eleases 19.05+, including 21.11.

18.11.2
19.11.2 and None
later

18.11 17.10 None

17.10
The formInit event, which is used for per for mance metr ics, is only sup-
18.05 and
por ted in Manager ver sion 17.10.8 and later .
later

The for m ver sion number field has changed fr om 10 to 20 char acter s, so a
new for m with a long ver sion, for example, 1.0.1-develop, will not wor k in Man-
17.10 17.10 ager pr ior to ver sion 17.10.

Tr ansact Functions ar e only suppor ted in Manager ver sion 17.10 and later .

Composer
Composer Version Manager Version Compatibility Issue

4.1 19.11 If you want to use FTX for ms.

Also, check Temenos Journey Platform deprecation schedule.

Temenos Journey Plat form Feat ures Compat ibilit y - 814 -


Product Suite Common Vulnerabilities and Exposures
Journey Platform | All Personas

Every product of t he Temenos Journey platform is vigorously t est ed and validat ed in accordance wit h t he current
list of Common Vulnerabilit ies and Exposures (CVE1). As a part of soft ware development cycle, we scan all our soft -
ware libraries night ly t o ensure we deliver as secure t he product as possible and t o guarant y our client s and applic-
ant s safe and risk-free journey when t hey use form applicat ions built and run using our product suit e.

Each CVE report is diligent ly analyzed against Temenos security policies defining what fixes wit hin what t ime
frames we need t o apply for each level of vulnerabilit y. For example, Crit ical and High level vulnerabilit ies must be
resolved before a release can go int o product ion, whilst Medium level vulnerabilit ies can be fixed wit hin a mont h
wit h a minor soft ware release. For more informat ion, see vulnerabilit y levels.

Each release of product suit e is accompanied wit h release notes det ailed vulnerabilit ies resolved or proact ively
addressed by new soft ware. We also maint ain t he list of libraries by each product release. This is t o provide a clear
pict ure of how we manage current and possible secure risks and t hreat s t o all our soft ware users, being it a
developer, DevOps or a sales represent at ive.

The following list shows all 3rd part y libraries used in our product suit e:

l Manager libraries

l Maest ro libraries

l Workspaces libraries, which use Manager libraries

Next , learn about Temenos Journey Platform features compatibility.

1Common Vulnerabilit ies and Exposures (CVE) is a list of publicly disclosed comput er securit y flaws, where each

securit y flaw has a CVE ID number assigned t o it for furt her reference.

Product Suit e Common Vulnerabilit ies and Exposures - 815 -


Journey Platform for Developers
Journey Platform | All Personas

As a developer, you want t o build user experiences1 t hat different iat e your digit al product s from compet it ors.
Unfort unat ely, t hat also means t hat you need t o handle many t hings t hat cross from front -end t o back-end ser-
vices and develop feat ures t hat a front -end can't always manage. That ’s where t he Temenos Journey Platform
comes in handy as it gives you t he abilit y t o creat e best in class cust omer journeys for financial services.

Journey plat form provides crit ical services for cust omer acquisit ion and onboarding, including:

l Save & resume


l Receipt generation
l PII2 securit y
l Bundling of mult iple forms int o a submission
l Accessibilit y compliance
l Mult iple applicant s

Because we t ake care of developing, t est ing, and maint aining t hese complex feat ures, organizat ions can focus on
designing an effect ive cust omer journey wit hout dealing wit h t he complexit y of t he underlying plat form.

Each cust omer journey is made of one or several web applicat ions, also referred t o as forms, which are host ed on
and managed by Journey Manager . Our plat form provides developers wit h t wo dist inct pat hs for building web
applicat ions:

Journey Maestro Design Environment


Journey Maestro is t he cust omer experience development environment of t he Journey plat form, purpose-built for
t he creat ion of financial cust omer experiences. It 's a design t ool t hat enables t rained developers and forms design-
ers t o creat e, visualize, int egrat e t hird-part y services, t est , deploy, and it erat e a financial cust omer journey. Typ-
ically, a user act ion t riggers an integration . And oft en, t here is a moderat ely sophist icat ed user int erface t hat needs
t o communicat e wit h t he service. These can somet imes be challenging t o design, build and t est . To simplify t his, we
provide well-designed and implement ed user int erfaces for each of our int egrat ions. And while not every int eg-
rat ion has a user int erface, many do.

1Cust omer Experience (CX) is t he product of an int eract ion bet ween an organizat ion and a cust omer over t he dur-

at ion of t heir relat ionship. This int eract ion is made up of t hree part s: t he cust omer journey, t he brand t ouchpoint s
t he cust omer int eract s wit h, and t he environment s t he cust omer experiences (including digit al environment ) dur-
ing t heir experience. A good cust omer experience means t hat t he individual's experience during all point s of con-
t act mat ches t he individual's expect at ions.
2Personally Ident ifiable Informat ion (PII) is informat ion about an individual t hat can be used t o dist inguish or t race

an individual‘s ident it y, such as name, social securit y number, dat e and place of birt h, mot her‘s maiden name, or
biomet ric records; and any ot her informat ion t hat is linked t o an individual. In Europe, PII is known as personal
dat a.

Journey Plat form for Developers - 816 -


To build applicat ions in Maest ro, developers are required t o have t he following skills:

l JavaScript 1
l AngularJS2
l HTM L5 3
l CSS4
l LESS5
l Maest ro product t raining

Open UX Environment
The Temenos Open UX is an Software Development Kit (SDK), including REST APIs6, t hat enables skilled React JS7
developers t o creat e complex web applicat ions t hat run on Manager. React JS developers, wit h t heir own IDE8 and
development t ools, may choose our Open UX as t he most efficient pat h t o creat ing different user experiences.
Banks wit h est ablished UX development t eams, especially t hose using JavaScript frameworks such as React JS, can
use t he services of Open UX t o focus on t heir cust omer onboarding experience, while t reat ing infrast ruct ure as a
“solved problem”, eliminat ing much of t he rout ine complexit y accompanying UX development . Open UX is t rans-
parent t o exist ing development pipelines, allowing bank t eams t o reuse and ret ain t heir invest ment in UX, design,
and development environment s while t aking advant age of t he Journey plat form services.

To build Open UX web applicat ions, developers are required t o have t he following skills:

1Javascript (JS) is a script ing languages, primarily used on t he Web. It is used t o enhance HTML pages and is com-

monly found embedded in HTML code. JavaScript is an int erpret ed language. Thus, it doesn't need t o be compiled.
2AngularJS is a st ruct ural framework for dynamic web apps. It let s you use HTML as your t emplat e language and

let s you ext end HTML's synt ax t o express your applicat ion's component s clearly and succinct ly. AngularJS's dat a
binding and dependency inject ion eliminat e much of t he code you would ot herwise have t o writ e. For more inform-
at ion, see ht t p:/ / angularjs.org/
3Maest ro forms are fundament ally built using HTML 5. The st ruct ure of t he form and t he t ext displayed in t he

form are all configured and est ablished using HTML5. HTML is t he st andard markup language for creat ing Web
pages and st ands for Hypert ext Markup Language. HTML 5 describes t he st ruct ure of a Maest ro form.
4CSS st ands for Cascading St yles Sheet s and is used t o define st yles for a Maest ro Form, including t he design, lay-

out , and variat ions in t he form’s display on different devices and screen sizes. The CSS on a Maest ro form is primar-
ily t aken care of by t he Templat e Designer. The Templat e Designer will implement t he branding and/ or st yling of
t he form’s asset s.CSS can be applied t o t he t emplat e of t he form, individual component s, and any ot her asset asso-
ciat ed wit h a Maest ro form.
5LESS is a dynamic preprocessor st yle sheet language t hat can be compiled int o Cascading St yle Sheet s (CSS) and

run on t he client side or server side.


6REST or RESTful API design (Represent at ional St at e Transfer) is designed t o t ake advant age of exist ing prot ocols.

While REST can be used over nearly any prot ocol, it usually t akes advant age of HTTP when used for Web APIs.
7React JS is a JavaScript library for building user int erfaces.
8Int egrat ed Development Environment .

Journey Plat form for Developers - 817 -


l React JS
l IDEs
l REST API
l UX development expert ise

Integration
The Journey plat form advant age is it s capabilit y t o int egrat e wit h a wide range of t hird-part y services. There are t wo
t ypes of int egrat ions:

Nat ive Int egrat ion


It uses a combinat ion of Groovy script ing language, plus several libraries and services t hat t he Journey plat form
provides. Groovy is a script ing language t hat most developers will find simple t o learn and powerful t o use. The lib-
raries provided alongside Groovy make it easy t o invoke t hird-part y services using SOAP, REST or HTTP, perform
dat a t ransformat ions, and more.

Our Journey plat form also comes wit h a wide range of pre-built t hird part y int egrat ions available from t he
Exchange.

3rd Part y Int egrat ion


Inst ead of doing t he bulk of t he comput at ional work in Groovy and having it run wit hin t he Journey plat form, you
can creat e t he logic in a t hird-part y int egrat ion and simply invoke it from your applicat ion during t he appropriat e
life cycle event . The int egrat ion plat form will perform t he service invocat ions, dat a t ranslat ions, and so on, using it s
capabilit ies. There are ext ensive Transact Fluent API t hat can be called if t he int egrat ion needs t o call back int o t he
plat form t o ret rieve or updat e t ransact ion informat ion.

Developers depend on t he built -in feat ures for rout ine services, pre-built int egrat ions, and apply t heir knowledge
t o rapidly ext end t he funct ionalit y t o meet t heir specific needs. In t his case, t hey require Java and Groovy 1 skills.

Next , learn about t he complete range of soft ware development t echnologies and programming languages you can
use in our plat form.

1Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.

Journey Plat form for Developers - 818 -


Software Development Technologies
Journey Platform | All Personas | 5.1 & Higher

These t echnologies are used across t he ent ire Temenos Journey Platform .

This t opic list s t he soft ware development t echnologies and programming languages used in Journey Maest ro.

A Maestro form is a dynamic HTML page designed t o present informat ion t o users, guide t hem t hrough t he form
t o collect t he required input s, and submit dat a t o Journey Manager for furt her processing. The design and purpose
of a Maest ro form depends on t he organization t hat builds and implement s it . The organizat ion is free t o use t heir
preferred soft ware development processes, and Maest ro support s t he following popular soft ware development
t echnologies and programming languages t o implement forms. They are list ed below in t he order of import ance
for a form builder .

AngularJS
A Maest ro form builder can ut ilize AngularJS1 framework t o build dynamic forms, which implement business logic.
One example is a script t hat ret rieves dat a from Manager or invokes a service t o ret rieve dat a from a t hird-part y sys-
t em. Experience wit h AngularJS is necessary t o creat e cust om nat ive component s.

JavaScript
A Maest ro form builder can implement complex business rules t o enhance a form using t he JavaScript 2 language.

LESS
Maest ro allows a form builder t o use LESS3 (Leaner St yle Sheet s) t o creat e dynamic CSS4 t o implement a form. For
more informat ion, see t he CSS sect ion below.

1AngularJS is a st ruct ural framework for dynamic web apps. It let s you use HTML as your t emplat e language and

let s you ext end HTML's synt ax t o express your applicat ion's component s clearly and succinct ly. AngularJS's dat a
binding and dependency inject ion eliminat e much of t he code you would ot herwise have t o writ e. For more inform-
at ion, see ht t p:/ / angularjs.org/
2Javascript (JS) is a script ing languages, primarily used on t he Web. It is used t o enhance HTML pages and is com-

monly found embedded in HTML code. JavaScript is an int erpret ed language. Thus, it doesn't need t o be compiled.
3LESS is a dynamic preprocessor st yle sheet language t hat can be compiled int o Cascading St yle Sheet s (CSS) and

run on t he client side or server side.


4CSS st ands for Cascading St yles Sheet s and is used t o define st yles for a Maest ro Form, including t he design, lay-

out , and variat ions in t he form’s display on different devices and screen sizes. The CSS on a Maest ro form is primar-
ily t aken care of by t he Templat e Designer. The Templat e Designer will implement t he branding and/ or st yling of
t he form’s asset s.CSS can be applied t o t he t emplat e of t he form, individual component s, and any ot her asset asso-
ciat ed wit h a Maest ro form.

Soft ware Development Technologies - 819 -


HTML5
Maest ro forms are st ruct ured and built using HTM L 5 1. HTML is used as t he st andard markup language for cre-
at ing Web pages, while HTML 5 describes t he st ruct ure of a Maest ro form.

JSON
A Maest ro form builder can use JSON 2 format t o st ore form dat a in Maest ro forms or exchange dat a bet ween dif-
ferent syst ems, such as Manager, and Maest ro. For example, t o t ransfer forms t o anot her syst em, use t he Down-
load JSON feat ure in Maest ro.

CSS
CSS3 is used t o define st yles for a Maest ro form t hat includes t he design, layout , and variat ions in t he form’s dis-
play on different devices and screen sizes. A template designer primarily looks aft er CSS of Maest ro forms by imple-
ment ing t he branding and st yling of t he form’s asset s. CSS can t hen be applied t o a form t emplat e, individual
components, and any ot her asset associat ed wit h a Maest ro form.

CSV
Maest ro st ores all translation files as CSV4 files, which can be edit ed by language t ranslat ors t o add new languages
t o a Maest ro form.

XML
Maest ro uses XM L5 t o st ore and t ransfer form dat a, such as form submissions. However, JSON is now replacing
XML t o perform t hese funct ions.

1Maest ro forms are fundament ally built using HTML 5. The st ruct ure of t he form and t he t ext displayed in t he

form are all configured and est ablished using HTML5. HTML is t he st andard markup language for creat ing Web
pages and st ands for Hypert ext Markup Language. HTML 5 describes t he st ruct ure of a Maest ro form.
2JSON (JavaScript Object Not at ion) is a synt ax for st oring and exchanging dat a and is used in Maest ro t o st ore

forms. If a Form Builder want s t o t ransfer t heir form t o anot her syst em, t hey can do so by using t he Download
JSON file but t on.
3CSS st ands for Cascading St yles Sheet s and is used t o define st yles for a Maest ro Form, including t he design, lay-

out , and variat ions in t he form’s display on different devices and screen sizes. The CSS on a Maest ro form is primar-
ily t aken care of by t he Templat e Designer. The Templat e Designer will implement t he branding and/ or st yling of
t he form’s asset s.CSS can be applied t o t he t emplat e of t he form, individual component s, and any ot her asset asso-
ciat ed wit h a Maest ro form.
4CSV is a comma-separat ed values fil, which s a delimit ed t ext file t hat uses a comma t o separat e values. A CSV file

st ores t abular dat a (numbers and t ext ) in plain t ext . Each line of t he file is a dat a record. Each record consist s of
one or more fields, separat ed by commas.
5XML (Ext ensible Markup Language) is a markup language t hat defines a set of rules for encoding document s in a

format t hat is bot h human-readable and machine-readable.

Soft ware Development Technologies - 820 -


Next , learn about t he Maestro dashboard .

Soft ware Development Technologies - 821 -


Journey Platform Integration
Journey Platform | All Personas

The Temenos Journey Platform enables digit al int eract ion bet ween an organizat ion and it s cust omers. Because of
t he import ance of t his int eract ion, t here is oft en a need t o int egrat e bet ween t he Journey plat form and ot her sys-
t ems. In some cases, t he int egrat ion required can be minimal, but int egrat ion can be quit e ext ensive.

l Int egrat ion areas occur at different st ages wit hin t he int eract ion bet ween a user and t he organizat ion.
l Wit hin each int egrat ion area, t here are different int egrat ion implement at ions, t o support different t ech-
nologies used by different organizat ions.

Integration Areas
There are several key areas or st ages in which int egrat ions generally occur during t ransact ions:

l Transact ions Discovery


l Dat a Pre-populat ion
l Dat a Ent ry St reamlining
l Execut ion
l Save and Resume
l Delivery

This is illust rat ed in t he diagram below.

These int egrat ion st ages are det ailed described below.

Transact ions Discovery


Your users need t o be able t o discover t he t ransact ions t hat you provide. There are a number of ways t o do t his.
The simplest is t o have a link on your web sit e which launches t he t ransact ion.

Journey Plat form Int egrat ion - 822 -


Things can get more sophist icat ed t han t his. For example:

l You may want t o have cust omized links, which are different for different users. Generally t his is so t hat you
can provide cust om pieces of dat a in t he link URL, generally so t hat you can pre-populat e some of t he fields
in t he form from t his dat a. This helps t o make it easier for users t o fill out forms (see Pre-populat ion below).
l If your users are logged int o your web sit e, you may want t o pass t heir ident it y t o t he t ransact ion. This again
allows t he form t o pre-populat e some of t he fields.
l You may want t o embed t he form int o your exist ing web sit e, rat her t han linking t o it . This is generally not
recommended in modern responsive and t ask-orient ed designs, alt hough it is possible t o implement wit h
Transact .
l Anot her opt ion is t o send t he user a link t o t he t ransact ion using some ot her mechanism, such as via an
email. You can send t hem a link t o a blank form, alt ernat ely you can also use Transact ion Manager t o creat e
a cust om link t hat cont ains a part ially pre-filled form t o make t heir lives easier.
l Users can also save a t ransact ion t hat t hey have part ially complet ed. This will generat e a cust om link for
t hem, t hat will enable t hem t o ret urn t o t he t ransact ion at a lat er dat e. There are also ot her ways for t hem t o
get back t o t he t ransact ion if t hey lose t he link. You can configure a challenge quest ion t o ensure t hat only
t he original aut hor can access t heir saved t ransact ion.

Dat a Pre-populat ion


We want t o make it as easy for your users t o complet e a t ransact ion as possible. Transact is specifically designed t o
make t he ent ire experience as int uit ive and simple and engaging as possible.

You can make t he dat a ent ry process even simpler by pre-populat ing (or pre-filling) informat ion int o t he form t hat
you already know about t hem, which means t hat t hey won't have t o t ype t he informat ion t hemselves. Depending
on what informat ion is available, t his can dramat ically

We can generally provide t he pre-fill dat a in one of t he following ways:

l Front -end dat a passing. If your exist ing web sit e knows who t he user is, you can pass specific pieces of dat a
about t hat user direct ly t o t he t ransact ion. This can be done via URL paramet ers, cookies, lookup t okens,
and a variet y of ot her t echniques.
l Back-end look-ups. If t he user has been aut hent icat ed by your web sit e, you can pass t heir ident it y t o t he
Transact ion Manager server. We can t hen use t his ident it y t o look up informat ion in back-end business sys-
t ems, or Transact ion Manager's own profile dat abase, t o pre-fill t he form.

Pre-populat ion is also somet imes provided by using a previous submission's dat a t o populat e a new submission.
This is useful when a t ransact ion has t o be repeat ed every year (or periodically). and t he dat a doesn't change much
from submission t o submission.

Dat a Ent ry St ream lining


During t he dat a ent ry process, we want t o make it as easy as possible for users t o complet e t he form, and get t he
product or service t hey are request ing.

There are a number of ways we can do t his. For example:

Journey Plat form Int egrat ion - 823 -


l We can populat e fields in t he form from t hird part y services, such as LinkedIn or Facebook. (This is similar t o
pre-populat ion, but occurs once t he form has already loaded, rat her t han prior t o loading.)
l We can do calculat ions and lookups t o provide t hem more informat ion, or t o validat e t heir dat a ent ry. For
example, we might verify t he name of t he account holder t hat t hey are t rying t o t ransfer funds t o, or cal-
culat e t he approximat e repayment s for t heir loan.
l We can provide t hem ways of speeding up t heir dat a ent ry. For example, inst ead of forcing t hem t o t ype in
an address laboriously, field by field, we can allow t hem t o just st art t yping an address, and provide a mat ch-
ing set of possible candidat e addresses, and t hen aut o-complet e t he individual fields. (Like t he address
picker in Google Maps.)
l We can ask t he user t o upload a document , such as a phot o of t heir license. We could use OCR t echnology t o
recognize t he t ext on t he document , and used t o populat e fields on t he form.

l We can give t he user real-t ime validat ion of t heir eligibilit y. For example, we could int egrat e wit h a credit scor-
ing service t o provide an indicat ion about whet her t heir loan is likely t o be approved or not .

Dat a ent ry opt imizat ion is usually done using one of t wo t echniques:

l Client -side int egrat ion. This occurs direct ly bet ween t he form (execut ing in t he client 's browser), and t he
informat ion syst em. The LinkedIn pre-populat ion widget is t his t ype - no server-side inst allat ion or con-
figurat ion is required.
l Dynamic Dat a. In t his case, t he form will invoke Transact ion Manager, which will in t urn invoke t he act ual ser-
vice. Several Composer widget s are designed t o work wit h Dynamic Dat a Services. Transact ion Manager can
provide added value, such as dat a and prot ocol t ransformat ion and securit y.

Execut ion
Execut ion is t he process of adding addit ional value t o t he t ransact ion aft er t he dat a ent ry st ep. It can consist of a
number of added-value st eps, some of which require may int egrat ion wit h back-office or t hird part y syst ems.

Some examples of added value int egrat ions include:

l Adding elect ronic signat ures using t hird-part y eSignat ure solut ions.
l Processing payment s using t hird-part y payment gat eways.
l Ret rieving credit scores or ident it y verificat ion result s using t hird-part y services.
l Using Ent erprise Document Management syst ems t o generat e document s or welcome kit s t o provide t o t he
cust omer.
l Providing a review-and-approval st ep prior t o delivery.

Save and Resum e


Saving a form and ret urning t o it t o resume edit ing is an import ant capabilit y. This is shown on t he diagram for
complet eness, but is in fact implement ed purely inside of Transact ion Manager. There are no user-modifiable
ext ension point s.

Journey Plat form Int egrat ion - 824 -


Delivery
Delivery is t he process of delivering t he result s of t he t ransact ion, in bot h human-readable and machine-readable
format , t o t he organizat ion.

Of all t he different point s of int egrat ion, delivery is t he most import ant . The reason is obvious - unless we deliver
t he dat a t hat was collect ed (in some way) t o t he organizat ion, t here is no value achieved for t he organizat ion.

The range of different delivery opt ions is highly varied. It can be as simple as an email cont aining a PDF as an at t ach-
ment which is processed manually, or as complicat ed as direct int egrat ion of different part s of t he dat a int o a num-
ber of different back-end business syst ems. Delivery can even be performed for t ransact ions t hat haven't been
complet ed by t he end user, as t his abandonment informat ion can it self be useful.

Authenticated and Unauthenticated Transactions


Manager support s t he use of bot h aut hent icat ed or unaut hent icat ed t ransact ions. Aut hent icat ion is usually t he
process of ident ifying a user using a user-name and password, or somet imes more sophist icat ed met hods. An
unaut hent icat ed user is a user who hasn't logged int o Transact ion Manager, and doesn't have an ident it y in Trans-
act ion Manager. This does not necessarily mean t hat t hey are unknown, and usually some informat ion will be
known about t hem, oft en including t heir email address.

Similar capabilit ies are available for aut hent icat ed and unaut hent icat ed users, but are implement ed in slight ly dif-
ferent ways:

Capability Authenticated Unauthenticated (Anonymous)

A user's identity can be used to pre-fill Pre-population can still be achieved, but is
forms with information that is already implemented without the user actually log-
Pre-pop-
known about that particular person. This ging in. For example, pre-fill data can be
ulation
assumes that the user's identity already passed to the transaction using URL para-
exists in an existing system. meters.
An authenticated user can save a partially
completed transaction. By logging in again
Save and resume is implemented via a
Save and later, the user can view their partially com-
simple reference code and challenge ques-
Resume pleted transactions (known as drafts), and
tion (similar to an airline booking code).
resume editing. The user can also log in
from a different device.
When an authenticated user logs into Trans- Transaction history can be provided to in a
action Manager, they can see the history of number of different ways, such as a con-
their submissions. (Note that they will usu- firmation email. Historical information is
Transaction
ally only be able to see a summary of the often maintained in other systems that
History
transaction, not the content, because gen- maintain a more complete history of the
erally data retention policies will result in customer's interactions with the organ-
the details being purged.) ization, such as CRM systems.
A task can be assigned to a user who is
Tasks A task can be assigned to an unau-
authenticated in Transaction Manager, and

Journey Plat form Int egrat ion - 825 -


thenticated user via email or any other sys-
tem that can display a URL. The user will
appears in their task list.
simply click on the link in order to perform
the task.

A quest ion t hat is oft en asked is whet her t o use aut hent icat ed or unaut hent icat ed access. Transact ion Manager
support s bot h t ypes ext remely well. However, it is import ant t o not e t he following regarding aut hent icat ed t rans-
act ions.

1. Many organizat ions already have t he concept of ident it y and usernames/ passwords. Usually t he organ-
izat ion will not want t o int roduce a new and different username and password, but rat her re-use t he exist ing
mechanism.
2. Users are oft en reluct ant t o sign up wit h a username and password just in order t o be able t o save and
resume a t ransact ion lat er. (We have dat a t hat support s t his assumpt ion.) This can increase t ransact ion aban-
donment , because users simply don't want t o regist er. It 's usually wise t o allow users t o complet e a t rans-
act ion wit hout requiring t hem t o regist er.
3. Ident it y can also be complicat ed t o implement , especially t he ident it y of your cust omers out side t he firewall.
Transact ion Manager does support bot h common signon using LDAP, and Single Sign On (using SAML), but
t hese can add complexit y t o t he implement at ion.

Because of t he above, we generally recommend t he following:

l Ext ernal cust omers be t reat ed as "anonymous" users, wit hout t rying t o est ablish or confirm t heir ident it y
online. This may have a minor impact on t heir abilit y t o pre-fill t heir forms (alt hough t here are ways t o
achieve t his), but in general, t reat ing t hem as anonymous dramat ically simplifies t he int egrat ion require-
ment s, t he securit y implicat ions, and t he t ime t o market . As out lined above, most feat ures in Transact such
as save and resume, t ask assignment and pre-fill have been designed t o work wit h eit her anonymous or
aut hent icat ed users.
l Int ernal users (such as help desk and call cent er st aff) be t reat ed as aut hent icat ed users. This is usually much
simpler t o implement , since all int ernal users are already aut hent icat ed on t he net work, and bot h LDAP and
SSO are relat ively simple t o implement .

In some cases aut hent icat ed end users may be required for business reasons, and Transact does support t his
ext remely well - but bear in mind t hat it may affect your t ime and cost of implement at ion.

Extension Points
Int egrat ion is performed in various areas of t he t ransact ion life-cycle t hough t he use of defined ext ension point s.
Developers can inject code or ot her invocat ions at t hese defined ext ension point s. The main point s are shown in
t he int eract ion or sequence diagram below, alt hough some ext ension point s have been omit t ed for simplicit y.

Journey Plat form Int egrat ion - 826 -


Journey Plat form Int egrat ion - 827 -
There are many different point s in t he life-cycle of a user int eract ing wit h a form, bet ween t he t ime t hat t he user
first clicks on a link t o open t he form, and t he t ime t hat t he t ransact ion is complet e. We won't go int o all t he
det ails, since t here are over 20 different life-cycle event s, but some of t he key event s are shown in t he diagram
below.

Some of t hese point s are handled by built -in capabilit ies wit hin t he Journey plat form, but ot hers require int eg-
rat ion wit h t hird-part y or organizat ion syst ems.

Manager provides ext ension point s at many of t hese life-cycle event s t o allow int egrat ion bet ween Manager and
t hese ot her syst ems. The example of t hese ext ension point s is shown below.

Journey Plat form Int egrat ion - 828 -


Each of t he drop-down list s specifies a service t hat may be invoked at t hat part icular point in t he t ransact ion life-
cycle. You may select an exist ing ext ension point (as is shown in t he Receipt Render Service in t he screenshot ), or
you may creat e a new ext ension point by clicking t he "New" but t on.

In order t o build a new ext ension point , you aut hor t he ext ension point in a language called Groovy. Groovy is a
simple yet powerful script ing environment t hat most developers find int uit ive and product ive.

When you creat e a new service, you are not simply present ed wit h an empt y screen and begin t yping. Over t he
years, we have collect ed a series of t emplat es from real project s t hat can be used as st art ing point s for devel-
opment of different t ypes of services. A subset of t he available t emplat es is shown in t he screenshot below:

Journey Plat form Int egrat ion - 829 -


The t emplat e will creat e a st art er script which allows a programmer t o simply "fill in t he blanks" for t heir part icular
service.

Calling External Services and API


Once you st art building a service, you will oft en need t o invoke ext ernal services t o act ually perform t he work.
These services will usually be exposed as eit her SOAP or REST web services. These services may already exist , or
t hey may be built as part of t he Manager project . They can be built in a number of different ways, including hand-
built using coding languages, or t he use of specialized int egrat ion syst em or an Ent erprise Service Bus.

Libraries for calling t hese ext ernal services are built int o t he Journey plat form as shown in t he example below.

Journey Plat form Int egrat ion - 830 -


This illust rat es how easy it is t o invoke t hese ext ernal services. Of course, more sophist icat ed services can be
developed.

It is oft en also necessary t o invoke Transact Manager it self in order t o get more informat ion from t he syst em, or t o
updat e t he t ransact ion. This is also available t hrough a set of comprehensive Transact API's.

Web Site Integration and Single Signon


It is almost always required t o int egrat e a form int o an exist ing web sit e. Usually t his is achieve t hrough a simple
link or but t on. In t he past , more complex int egrat ions were performed, such as embedding forms wit hin exist ing
ht ml pages, alt hough in modern sit es t his is rare, largely due t o t he needs of smaller screens and mobile devices.

It is also somet imes necessary t o provide single-sign-on int egrat ion wit h exist ing syst ems. This is provided by an
ext ensible single-sign-on mechanism t hat is part of t he securit y management sub-syst em wit hin Transact . SAML,
oAut h and t wo-fact or aut hent icat ion are support ed. A screenshot is shown below:

Journey Plat form Int egrat ion - 831 -


Form Level Integration
Somet imes it is useful t o perform int egrat ion direct ly bet ween a form and anot her service. This can be performed
in t wo ways:

l Direct ly bet ween t he form and t he service. This can be implement ed direct ly using JavaScript in t he usual
way. Generally t he int egrat ion will be packaged up int o re-usable component t hat can be simply dropped
int o any form t hat needs it .

l Using Transact Manager as a proxy service. This mechanism is known as Transact Dynamic Dat a services. The
form uses a st andard mechanism for passing dat a in and out , which bot h programmers and non-pro-
grammers can easily use and configure. This invokes a service on Transact Manager (writ t en in Groovy). The
Groovy service has all t he power of t he Groovy programming language and supplied libraries, and so arbit -
rary complexit y can be simplified t o ensure t hat t he service exposed t o t he form is easy t o use. There are sev-
eral advant ages t o implement ing t he syst em t his way, including ease of use, cent ralized configurat ion,
int egrat ion wit h Transact licensing audit logs, and more. This is t he t echnique usually used.

Next , learn about the five Journey platform integration areas.

Journey Plat form Int egrat ion - 832 -


Five Journey Platform Integration Areas
Journey Platform | All Personas

The Temenos Journey Platform comes wit h t he following five int egrat ion areas:

1. Delivery
2. Form discovery
3. Pre-Population to accelerate data entry
4. Streamlining of data entry
5. Execution

Let 's t ake a look at each int egrat ion in more det ails.

Delivery
Delivery int egrat ion is ext remely import ant t o every organizat ion. Unless you deliver t he dat a collect ed t o t he
organizat ion in some way, you are ult imat ely not gaining any value. This area is list ed first , because it is almost
always implement ed, whereas many of t he ot her int egrat ion areas are opt ional.

There are generally t hree t ypes of art ifact s t hat are delivered:

l Receipt . A human-readable version of t he form, usually in t he form of a PDF document . This is known as a
receipt , and can be generat ed in several different st yles.
l Dat a. A comput er-readable version of t he dat a, in t he form of an XML document . This is suit able for int eg-
rat ing int o ot her syst ems.
l At t achment s. Any support ing document s, known as at t achment s. These may be phot ographs, scanned
document s, or elect ronic document s of various t ypes.

The Journey plat form has a large number of different ways in which deliveries can be performed, ranging from
simple t o sophist icat ed.

Delivery
Description Examples
Type

The PDF, XML and attachments are attached to an email,


which is then emailed to an individual or group email box for There is really not very
processing. The person/people monitoring this email account much to do, other than
process the PDF, XML and/or attachments manually. This making sure Manager has
Email
approach is usually the simplest option for low volume access to a mail server, and
and/or low value transactions, but it can also be used very suc- identifying the correct
cessfully as a short term solution while more sophisticated email recipients.
integrations are being built.
If your organization already has a fax gateway, then the Avoka have previously
Fax Gate-
inbound faxes will generally be delivered as attachments to integrated with the
way
an email message, or as files in a folder. Manager can easily be RightFax fax gateway.

Five Journey Plat form Int egrat ion Areas - 833 -


configured to do the same.
Managerhas a SOAP API that lets external systems retrieve
Sever al of our customer s
Web Ser- submissions (including their PDF, XML and attachments). This
have used the SOAP API
vices API can be called by any client that is SOAP-compliant. This
in or der to r etr ieve sub-
(SOAP) approach has the advantage that no firewall holes are
missions.
required since this is a pull invocation.
The Australian Dept of
Industry uses TIA to deliver
submissions into a number
The Jour ney platfor m includes a pr e-built (but extensible)
of different agencies in a
application known as the Integr ation Agent. This Java-
multi-tenanted envir-
based application uses the SOAP API to r etr ieve sub-
onment. This provides a
missions fr om Manager , and deliver these into exter nal sys-
TIA level of separation
tems. A number of standar d integr ation end-points ar e
between the Dept of
pr ovided, such as folder dr op, or customer s can customize
Industry who manage and
TIA to per for m any type of integr ation that is possible fr om
administer the system, and
Java.
the agencies who only
receive submissions
destined for them.
MuleSoft is an Enterprise Service Bus. Avoka has developed a
Mule connector which uses the SOAP API to retrieve sub-
missions from Manager. Once a submission has been
ESB / retrieved, it can be easily integrated with any of the systems
Mulesoft that Mulesoft supports, which are listed here:
https://www.mulesoft.org/connectors Mulesoft also has a
sophisticated data mapping tool for mapping data from one
form to another.
Manager has a REST API that that lets external systems
retrieve submissions (including their PDF, XML and attach-
REST API ments). This is similar to the SOAP API, but is a more modern
protocol, easier to use, and supports high availability archi-
tectures.
The Manager REST Deliver Client is a very simple and self-con-
tained application built in the Go language. It uses the REST
API to retrieve submissions from a Manager server. The
TMRDC
default implementation is to store these submissions in a
folder/directory. However, source code is provided, and can
be customized to perform other types of integrations.
Manager allows delivery integrations (and other types of integ-
rations) using the Groovy scripting language. Groovy is a
Groovy simple yet powerful scripting language that has been built Examples!!! They abound.
into Manager. Groovy gives you access to many of the
internal Java API's provided by Manager, and also has cap-

Five Journey Plat form Int egrat ion Areas - 834 -


abilities for calling third party services and systems, including
REST and Web Service API's, so it is a powerful tool for build-
ing sophisticated integrations. Groovy is often used to "glue"
Manager to another system, rather than being used as a pro-
gramming language. A full set of the available Manager API's
can be provided upon request if desired.
For even more sophisticated integrations, Manager allows
Java modules to be developed and uploaded into Manager,
Java where the methods they contain can be invoked at defined
extension points. This provides access to the full power of
Java, plus all of the Manager Java API's.

In addit ion t o t hese general purpose delivery mechanisms, several specific int egrat ions have been developed for
part icular end-point s.

These have been int egrat ed int o Manager as pre-built int egrat ions, and t hey include:

Delivery
Descript ion
End-point

Microsoft
This integration allows submissions to be delivered directly into a Sharepoint instance.
SharePoint

This integr ation allows for :

1. OAut h 2 aut hent icat ion against SalesForce ident it ies.


2. Delivery of submission informat ion direct ly int o SalesForce for marshalling int o des-
t inat ion object s.
3. API level form assignment t o known and anonymous users direct ly from SalesForce,
SalesForce
encapsulat ing APIs on Manager.
4. UI object s t o present a cat egorized list of available forms direct ly inside SalesForce, for
eit her opening immediat ely or pushing t o SalesForce cont act s. These may be aut o-
mat ically pre-filled wit h dat a from SalesForce object s.
5. UI object s t o review t he act ive and complet ed forms for a part icular object wit hin
SalesForce.
Marketo Creates or updates the visitor's Marketo LeadRecord using the submitted form data.
Manager can deliver submissions directly into Adobe LiveCycle Process Management. Pro-
Adobe
cess Management is a BPM system that allows back-office business processes to be easily
LiveCycle
developed.

Finally, Avoka st aff and our cust omers have used some of t he above capabilit ies t o int egrat e wit h a large number of
off-t he-shelf and cust om syst ems. Some of t hese include:

Five Journey Plat form Int egrat ion Areas - 835 -


l PEGA (BPM syst em)
l SAP (ERP syst em)
l Microsoft Dynamics (CRM syst em)
l FTP/ SFTP (file t ransfer prot ocols)
l Shift (a dealer management syst em)
l Carflow (a dealer management syst em)
l Huddle (a document management syst em)
l K2 (a BPM syst em)
l IBM Lombardi (a BPM syst em)
l Telco syst ems (several bespoke syst ems at a large Telco)

The Delivery Service ext ension point wit h Manager provides a number of built -in added value services, including:

l Ret ry capabilit ies. If a delivery fails, it can be aut omat ically or manually ret ried. This can be helpful for
cases when a delivery end-point is t emporarily unavailable.
l Delivery checkpoint s. If a delivery consist s of mult iple st eps (for example, send an email, t hen updat e a
dat abase, and t hen st ore a file in a direct ory), t hen each part of t his delivery can be set up as an individual
checkpoint . If one of t he st eps fails, but a previous st ep has complet ed successfully, t hen when t he delivery is
ret ried, it will st art on t he first incomplet e checkpoint , rat her t han from t he beginning. This would ensure
t hat , for example, only one email ever get s sent .
l Alert s. The delivery subsyst em provides administ rat ive alert s t o not ify syst em administ rat ors when a deliv-
ery has failed so t hat t he underlying cause can be correct ed.

Form Discovery
Every unique form in Manager has an associat ed URL link t hat you can place on your sit e. Any user who clicks on
t he links will launch t he form. You can also use t he form URL in any ot her way such as in an email. You can also link
t o t he form from any t ype of "form finder" t echnology, or a wizard t hat assist s a cust omer t o find t he appropriat e
forms. You can also embed links t o forms in out bound communicat ions such as email or social net works.

Anot her way for cust omers t o complet e a form is t o send a cust omer a link t o a form t hat has already been par-
t ially complet ed on t heir behalf. Manager includes a Task API, t hat allows you t o creat e a part ially complet ed form,
generat e a cust om URL, and t hen pass t hat URL t o t he end user. This can be used t o "push" forms from CRM or
ot her syst ems.

An older approach is t o embed t he Journey plat form form direct ly inside t he organizat ion's web sit e. This approach
is rarely used, most ly because of t he advent of smart -phones, which lack t he screen real est at e t o display bot h t he
exist ing sit e and t he form in t he same screen. There are also ot her issues wit h t his approach, including t he import -
ance of removing dist ract ions and navigat ion links from t he t ask-orient ed process of complet ing t he t ransact ion,
as well as t he difficult y of effect ively designing responsive user int erfaces in t wo separat e web pages t hat effect ively
work t oget her.

Five Journey Plat form Int egrat ion Areas - 836 -


3 Pre-Population - Accelerating Data Entry
Manager provides many different t echniques for pre-filling forms. One of t he simplest ways t o implement t his is t o
pass pre-populat ion dat a as URL paramet ers in t he URL t hat links t o t he form. These paramet ers can be cus-
t omized on a per user basis in your exist ing web sit e if required. Anot her way is t o ret rieve pre-populat ion dat a
from dat a st ored in cookies.

Alt ernat ely, Manager has many ext ension point s where calls can be made t o ext ernal syst ems, and t he result s of
t hese calls can be inject ed int o t he form's dat a before it is present ed t o t he user. The sequence diagram above high-
light s t he key ext ension point s. The ext ension point s can be implement ed as Java or Groovy calls t o ext ernal sys-
t ems. These ext ension point s also have access t o many of t he int ernal Manager API's.

Manager implement s a form receipt -number generat ion service, t o ensure t hat each form has a unique code. This
service can be configured t o aut o-generat e different st yles of receipt number, or it can be ext ended t o call ext ernal
syst ems t o generat e t he receipt number. This allows t he form receipt number t o mat ch a reference number in an
exist ing syst em.

Manager implement s several different t echniques for passing ident it y from an exist ing syst em t o Manager, includ-
ing SSO/ SAML, LDAP int egrat ion, and ot hers. If t he user's ident it y has been est ablished, t hen calls can be made t o
back-end syst em using t his ident it y t o ret rieve user-specific dat a, which can t hen be inject ed int o t he form before
being present ed t o t he user.

Streamlining Data Entry


Once t he user is act ually wit hin t he form, we want t o make t heir experience as st reamlined as possible. One way
we can do t his is by designing and creat ing engaging, simple t o use, guided experiences using Composer.

We can also st reamline t heir experience by providing cont ext ual dat a wit hin t he form t hat :

l Accelerat es t heir dat a ent ry


l Validat es t heir dat a ent ry
l Provides informat ion t o t hem t hat helps t hem t o make decisions

Usually t his t ype of int egrat ion is provided by cust om user int erface widget s wit hin t he form it self. There are gen-
erally t wo different mechanisms t hat t hese widget s use t o communicat e t o ext ernal syst ems.

Mechanism Explanation

The widget communicates dir ectly to the thir d par ty ser vice, usually (but not always)
using JavaScr ipt, REST and JSON.
Direct
This is most useful for cloud-hosted thir d-par ty ser vices that don't r equir e usage keys,
identity ver ification, or license/billing, and ar e not subject to secur ity concer ns.

Five Journey Plat form Int egrat ion Areas - 837 -


A Composer widget communicates with a standar dized dynamic data ser vice within Man-
ager . The dynamic data ser vice pr otocol is pr edefined, and uses JSON data as the pay-
load. The dynamic data ser vice then communicates to the desir ed back-end ser vice to
ver ify or r etr ieve data, per for m a calculation, or ver ify data. The r esults ar e then
passed back to the widget.

Dynamic Dynamic data ser vices ar e useful for sever al scenar ios:
Data Ser-
l Licensing. Some ext ernal services require t he user t o specify a usage key of some sort .
vice
l Billing reconciliat ion.
l Securit y (secure channel t o backend services)

l Dat a t ransformat ion or consolidat ion, prot ocol t ranslat ion.

Composer includes sever al pr e-built widgets that suppor t Dynamic Data calls, and cus-
tom widgets can also be cr eated.

Occasionally it is useful to build widgets that use a combination of direct access and
dynamic data services. For example, an initial call may use Dynamic Data to establish cre-
Hybrid
dentials with a third-party, but then use direct access to the third party service for greatest
efficiency.

Some examples of pre-built services t hat communicat e wit h t hird-part y services include:

l Experian, which provides post al address lookup services.


l GreenID which provides ident ify verificat ion services.

l Manager Reference Dat a, which allows dat a t o be st ored in Manager, and displayed in a variet y of different
ways.

Many our cust omers have used t he generic Dynamic Dat a-aware widget s t o expose t heir back-end web services,
REST services, dat abases and bespoke syst ems in a variet y of ways wit hin t he form.

Execution
Execut ion is largely about adding addit ional value t o t he overall t ransact ion, aft er t he basic dat a complet ion st ep
has been complet ed. Some of t hese int egrat ions are part of t he process of complet ing t he t ransact ion, and are vis-
ible st eps t o t he end users, whereas ot her t ypes of int egrat ions occur behind-t he-scenes.

The following examples list some of t he t ypes of int egrat ions t hat are possible at execut ion t ime wit h Transact .

Integration Description

Five Journey Plat form Int egrat ion Areas - 838 -


Manager can integr ate with Electr onic Signatur e pr ovider s in or der to pr ovide an
impr oved level of signatur e compliance. (Note that Manager pr ovides sever al types of
electr onic signatur e capability dir ectly in our system, without r equir ing thir d-par ty ser -
vices.) Manager has alr eady been integr ated with DocuSign and Silanis, but the same
pr inciples can be extended to similar electr onic signatur e pr ovider s.

Electr onic signatur es ar e usually implemented in one of two ways:

1. Immediat e signat ure. A receipt (or document of record) is creat ed, and submit t ed
t o t he t hird-part y signat ure provider, along wit h signat ory met a-dat a. The signat ure
provider processes t his request , prepares t he document for signing, and ret urns t he
signat ory id t o Manager. It t hen redirect s t he user t o t he signat ure provider web sit e,
where t he document will be present ed for signat ure. The signat ure providers may
Electronic also request addit ional ident ificat ion informat ion. Once t he user has signed t he doc-
Signatures ument , t he signat ure provider will redirect back t o t he Manager web sit e, so t hat t he
t ransact ion can be complet ed, delivered, et c.
2. Signat ure by email. A receipt is submit t ed t o t he signat ure provider, along wit h sig-
nat ory met a-dat a.The signat ure provider will prepare t he document for signing, and
t hen send an email t o t he signer for processing. Manager will not ify t he applicant t o
check t heir email address. The user will click on t he link in t he email, and complet e t he
signat ure process in t he signat ure provider's web sit e. Manager will be not ified of t he
signat ure complet ion, and will complet e t he t ransact ion, including delivery et c.

The immediate signatur e appr oach is a mor e seamless exper ience for the end user .
However , the signatur e by email appr oach can have a higher level of identity for the
signer , because it implicitly validates their email addr ess. It is also gener ally the only way
in which a document can be signed by multiple signer s - this is usually suppor ted by sig-
natur e pr ovider s in either par allel or sequential flows.

Many tr ansactions r equir e an associated payment. The Avoka for m will calculate the
fee, and also specify what payment methods ar e available. When the for m has been
submitted, Manager will r edir ect the user to a payment pr ovider 's website, along with
meta-data about the payment, such as the amount. This site is known as a Payment
Gateway. The Payment Gateway will pr ocess the payment, and then r edir ect back to
Payment Tr ansact, passing payment meta-data. Manager will infor m the user of the outcome, as
processing well as stor e the payment-meta-data to allow for r econciliation r epor ts to be r un.

never stor es or pr ocesses cr edit car d or banking infor mation dir ectly. This is a specialist
ser vice that r equir es specific levels of secur ity and pr ivacy compliance, and is always per -
for med by a specialist payment pr ovider s. Jour ney platfor mhas built-in integr ations
with sever al pr ovider s, and other pr ovider s can be implemented as r equir ed.

Additional Verification of the user's information for purposes such as credit scores or iden-
Additional
tity verification can be implemented within Manager itself. These can also be implemented
Verification
post-delivery in the organization's back-end processes, but performing them within Man-

Five Journey Plat form Int egrat ion Areas - 839 -


ager provides the ability for the end-user to be informed of the result while they are still
within the transaction, and therefore have an opportunity to retry the application and cor-
rect the information.

Manager includes a simple but power ful r eview and appr oval capability known as Col-
labor ation Jobs. Tr ansactions that have been completed by end user s can be pr o-
gr essed thr ough sever al r eview/appr oval steps, by differ ent individuals or gr oups.
Steps can also be designed to r etr ieve infor mation, per for m pr ocessing, or make
decisions. Review and appr oval is often implemented in lar ger and mor e sophisticated
Review and
BPM or Wor kflow systems, but the Review and Appr oval capability in Manager pr ovides
Approval
a number of benefits:

l There is no need t o purchase or maint ain a BPM or Workflow syst em.

l Review and Approval is very simple t o configure, and very easy t o use for t he review-
ers.

Manager pr oduces a r eceipt automatically, in PDF for mat, pr oviding a document of


r ecor d for the customer and for the or ganization. Manager can pr oduce a document of
r ecor d using:

l Composer-generat ed receipt t emplat es (aut omat ically)


l Hand-creat ed Adobe LIveCycle Designer receipt
Document l Hand-creat ed Adobe Acroform receipt (also known as pixel-perfect receipt ).
Gener ation
However , in some cases, the documents that need to be cr eated ar e mor e soph-
isticated or differ ent to what can be achieved in Manager natively. Ther e ar e a number
of systems known as Customer Communication Management systems which ar e
designed to pr oduce customer communication such as offer s, r eceipts, contr acts and
infor mation packs. These systems can be used by Manager to gener ate the document
of r ecor d.

The Economics of Integration


It is very import ant t o remember t he consider why we do int egrat ion - we don't do int egrat ion just for t he sake of
it , we do int egrat ion order t o provide specific value t o t he organizat ion. Int egrat ion can oft en be t he most t ime-con-
suming and cost ly part of any implement at ion. It 's very easy t o fall int o t he t rap of doing int egrat ion because it 's
possible or seems obvious, but it is wise t o always st ep back and consider what value int egrat ion is providing t o t he
overall business object ives relat ive t he cost of implement at ion and fut ure maint enance.

Why do we do int egrat ion?


Usually we do int egrat ion in order t o achieve operat ional efficiencies. Int egrat ion usually saves humans from hav-
ing t o perform manual t asks, which in t urn reduces cost s. These efficiencies may be realized by t he end-user (eg
save t yping and frust rat ion t hrough pre-populat ion) or by t he organizat ion it self (save money and reduce errors by
eliminat ing

Five Journey Plat form Int egrat ion Areas - 840 -


Assess t he Value of Int egrat ion
A survey performed by t he Forrest er group in 2015 asked "What init iat ives are likely t o be your organizat ion's t op
business priorit ies over t he next 12 mont hs?"

The t op t hree responses were:

l Grow revenues (77%)


l Improve t he experience of our cust omers (74%)
l Reduce cost s (61%)

It is int erest ing t hat improving user experience is regarded as significant ly more import ant t han reducing cost s.
And t hat growing revenues is t he most import ant crit erion in t he ent ire survey.

l The Journey plat form is all about improving cust omer experience, and growing revenues (alt hough it also
leads t o improving efficiency).
l Int egrat ion is all about improving operat ional efficiencies, and reducing cost s.

It is import ant t o keep in mind t hat in many cases, t he primary goal of implement ing t he Journey plat form is
improving user experience, and growing revenue. You should t herefore consider very carefully t he value of doing
int egrat ion compared t o t he cost . It may be t hat you can achieve a large proport ion of t he value of t he Journey plat -
form wit hout doing any int egrat ion.

We're not saying t hat you shouldn't do int egrat ion, just t hat you should be aware of t he cost s and t he value.

Consider Deferring Int egrat ion


Anot her fact or t o consider is t ime t o market . Manager can be implement ed very quickly, and realize import ant
benefit s such as improved user experience and improved conversion rat es. However, int egrat ion, because it
t ouches back-office syst ems, needs t o be very carefully developed and t est ed, and t his can oft en t ake a significant
amount of t ime.

One common approach is t o implement Manager wit h lit t le or simple int egrat ion, and realize t he primary benefit s
as early as possible. More sophist icat ed int egrat ion can t hen be performed at a slower and more careful pace - and
because Manager delivers t he dat a in XML format , it 's easy t o add int egrat ion lat er. Int egrat ion can be priorit ized
for t he most import ant t ransact ions first , wit h lower value or lower volume t ransact ions deferred t ill lat er.

Some of our most successful implement at ions had st art ed wit h minimal int egrat ion at t he beginning, but over
t ime t he int egrat ion has been phased in separat ely.

Consider Leveraging Exist ing Paper/ im age-based Processes


Ideally t he goal is t o complet ely replace paper/ images wit h all-digit al t ransact ions. However, in realit y we rarely
achieve 100% success - t here are almost always going t o be some cust omers who insist on hand-writ ing on paper.
This means t hat you almost always needs t o maint ain your exist ing back-office processes which current ly handle
paper or images of paper.

Five Journey Plat form Int egrat ion Areas - 841 -


Since you're going t o need t o maint ain t hese back-office processes anyway, one useful approach is t o augment or
plug int o t hese back-office processes using digit al art efact s, rat her t han t rying t o creat e a complet ely all-digit al
back-office process. In ot her words, deliver a digit al document (generally a PDF) int o your exist ing paper- or image-
based syst ems. If you do t his, int egrat ion is usually very simple and quick.

Hidden Cost s of Process Re-engineering


Process re-engineering is cost ly. This is not just about t echnology, but about people, skills, t raining, management ,
and relat ed cost s. Overall change management is oft en overlooked, and can be hugely cost ly. You don't want t o
int roduce a new digit al channel, and at t he same t ime, complet ely re-engineer your back-office processes. Inst ead,
one opt ion is t o simply plug digit al art efact s int o exist ing back-office syst ems. You get t he benefit s of a new digit al
cust omer-experience, but you don't have t o ret rain anyone, build new processes and procedures and manuals,
hire new st aff wit h different skills, or put new managers in place. You have t he opport unit y t o re-engineer and
opt imize your exist ing back office processes at a lat er t ime.

Our st rong recommendat ion is not t o combine process re-engineering wit h a (user-experience improvement ) pro-
ject , ot herwise t here is a possibilit y t hat bot h project s will fail. Process re-engineering and change management are
hard and expensive, and shouldn't be embarked upon light ly.

Next , learn about Journey platform development .

Five Journey Plat form Int egrat ion Areas - 842 -


Google Analytics Virtual Page Integration
Journey Platform | All Personas

The Temenos Journey Platform allows you t o add page t racking using Google Analyt ics (GA), so each page will fire a
page view event wit h a t it le and URL, which you can analyze t o improve user onboarding. You can easily add GTM 1
t o a Maest ro form using Journey Manager and Journey Maestro t ools. The simplified st eps are out lined below. For
det ailed inst ruct ions, including Google Tag Manager configurat ion, see how to add Google Tag Manager to a Maes-
tro form .

To add GA t o your web app form:

1. Add GA code t o t he head of t he page in Manager.


2. Create a Business Rule t o call t he GA met hod on page change in Maest ro. You need t o configure t he Maest ro
form business rules wit h t he following JavaScript s:

1Google Tag Manager (GTM) is a t ag management syst em (TMS) t hat allows you t o quickly and easily updat e t rack-

ing codes and relat ed code fragment s collect ively known as t ags on your websit e or mobile app.

Google Analyt ics Virt ual Page Int egrat ion - 843 -
l On Form Load:

// Init the global variable used to store the form story for GTM
dataLayer.push({event: "Form started"});

window.addPageToGTMTag = function() {
var currentPage = Form.getCurrentPageId();
dataLayer.push({ event: currentPage});
}

// Function to add Google Tag Manager leaving page event


window.addGTMLeavingPageTag = function() {
// Push this event to GTM
var currentPage = "leaving_" + Form.getCurrentPageId();
dataLayer.push({ event: currentPage});
}

// Function to add the Google Tag Manager iFrame to the form


function addGTMTag() {
$('body').prepend('<noscript></noscript>');
$('body noscript').first().prepend('<iframe src-
c="https://www.googletagmanager.com/ns.html?id=GTM-PTNXXX" height="0" width="0"
style="display:none;visibility:hidden"></iframe>');
}
addGTMTag();

l On Page Load:

// Push this event to GTM


window.addPageToGTMTag();

l On Cont inue (Next Page Act ion):

// Push leave event to GTM


window.addGTMLeavingPageTag();

3. Use Google Analyt ics t ool t o view report s on user form usage.

Next , learn about Journey platform development .

Google Analyt ics Virt ual Page Int egrat ion - 844 -
Continuous Integration Overview
Journey Platform

Cont inuous Int egrat ion 1 (CI) is an essent ial ingredient in a soft ware development process, which helps improve
soft ware qualit y, provide reliable, repeat able, and well designed aut omat ed processes t o save t ime, reduce t he
chance of human errors, and ident ify errors early. The Temenos Journey Platform provides t he services and t ools
t o facilit at e in Cont inuous Int egrat ion of Journey applicat ions.

Cont inuous Int egrat ion is t he frequent building and t est ing of new code changes, assist ed by soft ware t ools t hat
aut omat e t he process. It is oft en referred t o as a pipeline. A t ypical CI environment includes t he following com-
ponent s:

l Version control systems: Git , Subversion, Visual St udio Team Services


l Build automation tools: Ant , Gradle
l Dependency management tools: Maven
l CI servers: Jenkins, TeamCit y, Bamboo, Git Lab CI
l Task aut omat ion t ools: Ant , Maven, Gradle, Gulp, Make
l Unit t est ing frameworks: JUnit
l Mocking libraries: Mockit o
l Deployment and configurat ion aut omat ion t ools: Ansible, Chef
l In-house APIs: t he REST APIs built int o Journey Manager

CI environment s are implement ed using soft ware t ools t hat work alone or t oget her t o support t he creat ion of
pipelines. Implement at ion is usually achieved via configurat ion, rat her t han a specific development . Somet imes, as
is t he case wit h our Transact REST APIs, you might have t o provide support services t o enable applicat ion specific
deployment or configurat ion.

There is oft en crossover in funct ionalit y bet ween t ools, which blurs t he funct ional boundaries. In Git Lab, for
example, version cont rol, build and CI services are all available in a single-source syst em.

We don't prescribe t he use of specific t ools t o apply CI t echniques t o t he Journey plat form applicat ion devel-
opment process. Cust omers are free t o configure t heir exist ing Ant -compat ible CI syst ems wit h Ant t asks from t he
Transact Fluent SDK t o provide t he underlying aut omat ion.

For cust omers who don't have exist ing CI infrast ruct ure, we recommend t he following t ools:

1Cont inuous Int egrat ion (CI) is a development pract ice t hat requires developers t o int egrat e code int o a shared

reposit ory several t imes a day. Each check-in is t hen verified by an aut omat ed build, allowing t eams t o det ect prob-
lems early.

Cont inuous Int egrat ion Overview - 845 -


l GitLab - for source code version cont rol.
l Maven - for dependency management of t hird-part y cont ent , and pot ent ially for st oring out put from t he
build syst em.
l Jenkins - for int egrat ion t o version cont rol syst ems and orchest rat ion of builds, dependency management
and CI services.

Journey Manager support s Cont inuous Int egrat ion pract ices t hrough t he following t hree key feat ures:

l Application packages t hat cont ain primary deployable art ifact s, such as forms and services.
l Transact REST APIs references t hat include services t o facilit at e t he deployment of applicat ion packages.
l Transact Fluent SDK which includes Ant t asks t o leverage on t he REST APIs

Journey plat form implement s CI model as shown below.

Cont inuous Int egrat ion Overview - 846 -


In t his model, applicat ion developers, using Maest ro, Manager, and ot her IDEs, collaborat e in a development envir-
onment . They work wit h asset s including forms, t emplat es, organizat ion propert ies, delivery channels, services,
and service connect ions. They configure JSON files t o define t he cont ent s of applicat ion packages. Changes in t he
development environment are commit t ed t o t he version cont rol syst em, from where t hey can be checked out ,
packaged int o applicat ion packages and deployed t o ot her environment s by Ant t asks int eract ing wit h t he Trans-
act REST APIs. This is summarized below:

1. Check asset s and support ing files int o and out of t he version cont rol syst em
2. Trigger CI pipelines
3. Execut e Ant t asks t hat form part of t he Transact Fluent SDK
4. Package asset s int o applicat ion packages
5. Publish t he applicat ion packages t o Manager services exposed via t he Transact REST APIs

Continuous Integration Workflow


The Manager CI workflow involves t he following st eps:

1. Download and inst all t he Transact Fluent SDK. The Transact Fluent SDK is a part of t he SDK download which
you can find in t he Release N ot es of each Journey Manager release.
2. Define an application package:
l Creat e configurat ion folder st ruct ure.
l Obt ain form version archive files from Manager, if required.

l Create JSON configurat ion files t o describe applicat ion package cont ent s.
3. Configure your CI server wit h Ant t asks from t he Transact Fluent SDK.
4. Creat e your CI workflow:

l Build t he applicat ion package.


l Deploy t he applicat ion package t o one or more servers.
l Run t he remot e t est s on deployed servers.
5. Configure t he CI server t o work wit h source cont rol.
6. Check t he applicat ion package configurat ion files and resources int o source cont rol.
7. Check t he st at e of t he CI workflow on t he CI server.

Next , learn about version control systems.

Cont inuous Int egrat ion Overview - 847 -


CI Version Control Systems
Journey Platform

A version cont rol syst em 1 is t he primary ent ry point for get t ing your new code int o a syst em. A Continuous
Integration pipeline st art s wit h det ect ing changes t o source code, which are t riggered by source code check-ins or
commit s. These changes can also be det ect ed by polling t he version cont rol syst em st at us or by broadcast ing
change event s. You can choose which met hod t o use depending on your preferences and t he capabilit y of your ver-
sion cont rol syst ems. Once t riggered, t he CI pipeline commences collect ing all required asset s from source cont rol
syst em. Aft er t hat , t he build syst em is t riggered t o gat her addit ional dependencies, creat e t he deployment art i-
fact s, and run init ial t est s.

As wit h any soft ware development project , t he version cont rol syst em, used for Journey Manager applicat ion devel-
opment , should hold asset s required t o rebuild ent ire project s from scrat ch, including:

l Source code: Groovy, Java, and JavaScript files.


l Configurat ion: JSON, XML, and propert y files.
l Object Libraries: 3rd part y libraries, in t he absence of a dependency management syst em such as Maven.
l Resources: images, icons, and ot her visual component s.
l Cust om cont ent : propriet ary format cont ent , such as Journey Maestro resources.

l Script s: shell script s t o creat e folders, dat abases, seed t ables, configure services, and execut e any ot her
act ions required t o creat e a development environment .

For more informat ion on how t o st ore cont ent Git Lab, see GitLab CI tutorial.

The version cont rol syst em should not include unprot ect ed sensit ive and credent ial informat ion where it can be
easily viewed. User IDs and, especially, passwords do not belong in unprot ect ed version cont rol syst em. Eit her
don't st ore such cont ent in t he first place or use encrypt ion or vault t echnologies t o secure t he cont ent . For more
informat ion on how t o prot ect your sensit ive cont ent , use t he following links:

l https://github.com/StackExchange/blackbox
l https://github.com/AGWA/git-crypt
l http://docs.ansible.com/ansible/latest/playbooks_vault.html
l https://github.com/hashicorp/vault
l https://square.github.io/keywhiz/

Next , learn about CI servers.

1Source Code Cont rol Syst em (SCCS) is a version cont rol syst em designed t o t rack changes in source code and

ot her t ext files during t he development of a piece of soft ware. This allows t he user t o ret rieve any of t he previous
versions of t he original source code and t he changes which are st ored.

CI Version Cont rol Syst ems - 848 -


CI Servers
Journey Platform

A CI server allows you t o build art ifact s, run t he unit t est s periodically or aft er every commit , and send t he result s
t o developers. This makes it a crit ical part of a Continuous Integration pipeline. You t ypically need t o configure
your CI server wit h t he following soft ware:

l Java JDK
l Ant and Ant t asks
l The Transact Fluent SDK build.xml file.

l Version control system connect ion


l Dependency management system

You might need t o configure t riggers from t he version cont rol syst em t o t he CI server. Int egrat ion bet ween Git Lab
and Jenkins CI server is described in here. For more informat ion on Jenkins CI server configurat ion, see Jenkins CI
tutorial.

Next , learn about CI build systems.

CI Servers - 849 -
CI Build Systems
Journey Platform

A build syst em in t he Continuous Integration pipeline is responsible for convert ing source asset s int o deployable
art ifact s. This could involve compiling source code int o execut able object code, or some ot her form of conversion
from an input represent at ion t o an out put object .

A build can be t riggered by one of t he following act ions:

l Manual - run a script at a command prompt , or click a but t on on a web UI.


l Scheduled - a periodic t rigger t hat runs at specified t imes.
l Event based - a configured event happens, such as a code check-in or commit t o a version cont rol syst em.

A build syst em can be a st andalone, or int egrat ed int o a version cont rol syst em, dependency management syst em,
or t he CI syst em.

The CI build can have a deployment configurat ion t hat uses Ant 's ant-deploy t ask t o deploy t he built package.
You need t o ensure t hat Manager has t he following permissions configured for t he CI Tools user:

l Admin Direct ory


l REST Applicat ion Package API
l REST Service Definit ions API
l REST Test Cent er API
l REST TPac API – opt ional, if you use TPacs

The organizat ion, configured in your build.propert ies file, should be assigned t o t he CI Tools user t o allow t his user
deploy and execut e services under t his organizat ion.

Incorrect permissions can result in t he HTTP 403 error t hrown by t he Ant t ask.

CI Build Syst ems - 850 -


Next , learn about CI dependency management systems.

CI Build Syst ems - 851 -


CI Dependency M anagement Systems
Journey Platform

A dependency management syst em is part of a Continuous Integration pipeline t hat is responsible for st oring and
managing 3rd part y art ifact s required t o build application packages. A dependency management syst em, such as
Maven, is backed by a reposit ory syst em, where you can st ore build out put s. For more informat ion on Maven, see
https://maven.apache.org.

Next , learn about CI application packages.

CI Dependency Management Syst ems - 852 -


CI Application Packages
Journey Platform

Applicat ion packages are t he out put of t he Continuous Integration pipeline t hat can be deployed int o Journey
Manager servers. Applicat ion packages are ZIP files cont aining a folder st ruct ure and files t hat define:

l Delivery channels
l Forms
l Properties
l Service connections
l Services

An applicat ion package is creat ed by t he Ant app-package t ask. It cont ains a JSON definition file (shown below),
which cont ains references t o ot her definit ion files.

CI Applicat ion Packages - 853 -


Main JSON
app-package-def.json

{
"name": "Hello World App package",
"description": "TODO...",
"clientCode": "maguire",
"delivery": [
"delivery/rest-service-delivery-def.json",
"delivery/trash-can-delivery-def.json"
],
"forms": [
"forms/CCA-MAESTRO-AP/cca-maestro-form-def.json",
"forms/customer-enquiry-ap/customer-enquiry-form-def.json"
],
"properties": [
"properties/property-def.json",
"properties/property-de-def.json",
"properties/property-def1.json"
],
"connections": [
"connections/connection-def.json",
"connections/connection-def2.json"
],
"services": [
"services/helloworld/service-def.json"
]
}

Delivery Channels JSON


delivery/ rest -service-delivery-def.json

{
"name": "Hello World Delivery Process",
"deliveryMethod": "REST Service",
"defaultChannel": true,
"retryDelayMins": 15,
"serviceName":"Hello World Delivery Process"
}

This delivery service definit ion appears in Manager as shown below.

CI Applicat ion Packages - 854 -


Forms JSON
form s/ CCA-M AESTRO-AP/ cca-m aest ro-form -def.json
This definit ion causes a form t o be uploaded int o Maest ro, and subsequent ly be visible in Manager.

CI Applicat ion Packages - 855 -


{
"name":"Credit Card Application Maestro",
"formCode":"CCA-MAESTRO-AP",
"currentFormVersionNumber":"9",
"formVersionSelector":{
"serviceName":"A/B Testing Form Version Selector",
"serviceVersion":1
},
"trackingCodeService":{
"serviceName":"Random Tracking Number",
"serviceVersion":1
},
"defaultChannels":{
"productionDelivery":"Hello World Delivery Process",
"abandonDelivery":"Hello World Delivery Process",
"validationFailureDelivery":""
},
"dataRetention":{
"savedDays":30,
"finishedDays":5
},
"emailConfirmation":"Confirmation and PDF Receipt",
"formSpaces":[
{
"name":"Maguire",
"anonAccess":true,
"authAccess":true
}
],
"formVersions":[
{
"versionNumber":"9",
"formDataEncryption":true,
"formType":"Maestro Form",
"formVersionFile":"./form-version-Credit_Card_Application_Maestro-all-2017-06-
26.zip",
"properties":[
{
"name":"Form Description",
"description":"Form Description",
"dataType":"String",
"value":""
},
{

CI Applicat ion Packages - 856 -


"name":"Locale De",
"description":"Form Description",
"dataType":"JSON",
"valueFile":"locale-de.json"
}
],

"formDataConfig":{
"contactEmailXPath":"//ContactDetails/EmailAddress"
}
},
{
"versionNumber":"8",
"formDataEncryption":true,
"formType":"Maestro Form",
"formVersionFile":"./form-version-Credit_Card_Application_Maestro-all-2017-06-
26.zip",
"properties":[
{
"name":"Form Description",
"description":"Form Description",
"dataType":"String",
"scope":"Form",
"value":""
}
],

"formDataConfig":{
"contactEmailXPath":"//ContactDetails/EmailAddress"
}
}
]
}

The form appears in Manager as shown below.

CI Applicat ion Packages - 857 -


When specifying forms, form version archive files need t o be export ed from Manager, saved locally, and checked
int o source cont rol. They can t hen be referenced by a formVersionFile propert y in t he formVersions array of
t he form definit ion JSON fil (shown above).

You can export a select ed form in t he Manager as shown below.

The emailConfirmation propert y, if specified, must be one of t he following values:

CI Applicat ion Packages - 858 -


l None
l Confirmat ion
l Confirmat ion and PDF Receipt
l Link t o Receipt

form s/ CCA-M AESTRO-AP/ locale-de.json

{
"key.de": "Brüderlich zusammenhält"
}

Properties
propert ies/ propert y-def.json

{
"name": "Email Sender Address",
"description": "Sender email address for generated emails, overriding the global
email sender address.",
"scope": "Form",
"dataType": "String",
"value": "support@maguire.avoka.com"
}

This propert y appears in Manager as shown below.

CI Applicat ion Packages - 859 -


Service Connections
connect ions/ connect ion-def.json

{
"name": "FIS Connection",
"type": "HTTP Endpoint",
"endpoint": "https://some-endpoint.com/",
"username": "username",
"password": "password",
"dataFile": ""
}

Aft er inst allat ion of t he applicat ion package, t he above service connect ion det ails will be available t o see in Man-
ager:

CI Applicat ion Packages - 860 -


Services
services/ helloworld/ service-def.json

{
"name": "Hello World Delivery Process",
"description": "",
"type": "Delivery Process",
"version": 1,
"tmMinVersion": "5.0.0",
"parameters": [
{
"name": "groovyScript",
"filePath": "HelloWorld.groovy",
"fileIncludes": [],
"bind": true,
"required": false,
"clearOnExport": false,
"readOnly": false
},
{
"name": "Unit Test Script",
"filePath": "HelloWorldTest.groovy",
"fileIncludes": [],
"bind": false,
"required": false,
"clearOnExport": false,
"readOnly": false,
"unitTest": true
},
{
"name": "Help Doc",
"type": "HTML",
"filePath": "service-help.html",
"bind": false,
"required": false,
"clearOnExport": false,
"readOnly": false
}
]
}

CI Applicat ion Packages - 861 -


services/ helloworld/ HelloWorld.groovy

import com.avoka.core.groovy.GroovyLogger as logger


import com.avoka.tm.vo.*
import javax.servlet.http.*

class HelloWorld {

/*
* Perform Form Dynamic Data service call.
*
* returns: REST response text data
*/
String invoke(SvcDef svcDef, Txn txn, HttpServletRequest request, User user) {

// TODO: replace with data lookup call

String data = '''{


"address": {
"firstLine": "123 Wall Street"
}
}'''

return data
}
}

The t wo files above will provision Manager wit h a new service wit h t he following Groovy script .

CI Applicat ion Packages - 862 -


Next , learn about application package JSON definitions.

Support
Welcome t o our support sit e. We are commit t ed t o support ing our cust omers who have Journey plat form solu-
t ions inst alled in t he cloud or on premise.

Learn more about our Support Team, it 's policies, procedures, and processes.

You can raise a t echnical support request for: product issues, applicat ions, account access, or infrast ruct ure relat ed
queries. Or t rack exist ing support t icket s and view exist ing new feat ure request s.

Support - 863 -
SUPPORT HAN DBOOK SUPPORT PORTAL POLICIES

keyboard_ keyboard_ keyboard_


arrow_right Sup- arrow_right Raise a arrow_right End Of
port Handbook Support Request Life

keyboard_ keyboard_ keyboard_


arrow_right Reset arrow_right View arrow_right Deprec-
Support Portal Password Existing Support ation Schedule
Requests
keyboard_
keyboard_
arrow_right New
Product Releases arrow_right Raise a
New Feature (Idea)
keyboard_ Request

arrow_right For keyboard_


Developers
arrow_right View
Existing New Feature
(Idea) Requests

Support - 864 -
RESOURCES SYSTEM REQUIREM EN TS LEGACY SYSTEM
REQUIREM EN TS

keyboard_ keyboard_
keyboard_
arrow_ arrow_right Jour-
ney Platform arrow_right Trans-
right Release Notes act Com poser
keyboard_
keyboard_ keyboard_
arrow_right Jour-
arrow_right Q&A ney Manager arrow_right Trans-
forum act Integration Gateway
keyboard_
keyboard_ keyboard_
arrow_right Jour-
arrow_ ney Maestro arrow_right Trans-
right Announcem ents actField App
keyboard_
keyboard_ keyboard_
arrow_right Jour-
arrow_right Articles ney Platform Form s arrow_right Legacy
Browsers
keyboard_
arrow_right Mobile
Browsers

Support - 865 -
Journey Platform Support Handbook
Journey Platform | All Personas | 5.1 & Higher

The Support Handbook cont ains t he following sect ions:

l Roles and responsibilities


l Support definitions
l Severity level definitions
l Response times and update targets
l Contacting Customer Care
l Lifecycle of a support ticket
l Escalating a support ticket
l Product release definitions
l Getting more information

Thank you for your t rust in Temenos as your part ner in your Digit al Cust omer Acquisit ion Journey. We are honored
t o be part of your business.

The Support Team's sole focus is your success in achieving your business goals.

Our passion is t o remove roadblocks and ot her challenges on your journey. We int end t o always be t here when
you need us and be your t rust ed advisor.

Our int ent ion is t o provide all t he informat ion required t o engage wit h our Support Team, it 's policies, procedures,
and processes.

We cont inuously work on improving our services, and I encourage you t o engage wit h t he Support Team as we
value your comment s and feedback.

Journey Plat form Support Handbook - 866 -


Roles and responsibilities
Following is a general descript ion of t he personnel involved in providing Journey Plat form support under it s various
offerings.

Role Will Do

l Underst and t he business impact of t he cust omer’s issue upon


logging of a support t icket

Temenos Support Engineer l Provide t echnical expert ise


l Troubleshoot and resolve t he cust omer’s issue
l Provide st at us updat es t hroughout t he resolut ion process
l Underst and t he cust omer’s requirement s and business goals

Temenos Customer Success l Recommend solut ions wit h Journey Plat form t echnology t hat
M anager meet s requirement s
l Communicat e product updat es and import ant news
l Advanced knowledge of t he cust omer’s solut ion
l Guide and fost er st rat egic product discussion
Temenos Customer Success
l Provide t echnical expert ise
Architect
l Troubleshoot and resolve t he cust omer’s issue
l Provide st at us updat es t hroughout t he resolut ion process
l Monit or cloud-host ed environment
Temenos Hosted Platform
l Troubleshoot and resolve cloud-host ed relat ed issues
Engineer
l Conduct upgrade and updat es on cloud-host ed plat form

l Ensure highest degree of t echnical know-how in depart ment


Temenos Regional Support
l Keep apprised of high-priorit y cust omer issues
M anager
l Point of cont act for cust omer escalat ion

l Be t rained and cert ified in Journey Plat form product s


l Train int ernal users t o appropriat e degree on Journey Plat form
product s
l Communicat e business impact s of any t echnical issues appro-
Customer’s Named Support
priat ely
Contacts
l Collect diagnost ics and ot her required informat ion in sub-
mit t ing cases
l Engage t echnical and management resources appropriat ely
l Provide equal resource availabilit y

Roles and responsibilit ies - 867 -


Support definitions
Plat form Support

Definit ion

Plat form Support is included in your annual plat form subscript ion. Services differ depending on t he support pack-
age purchased. Addit ional services may be available depending on t he support package you purchased.

Plat form Support is t here t o assist if t he plat form malfunct ions due t o a product defect or issue wit h t he host ing
services.

Example of Plat form Issues

A plat form issue is one where t he expect ed behavior of t he module is not observed. For example, a form won’t
render in Journey Manager, or a form field is not behaving as expect ed, submission is not delivered, et c.

Out of Scope

l Development assist ance such as web applicat ion (form) development , cust om services and script s
l Product Training
l Third Part y int egrat ion (except Mit ek and Yodlee)
l New feat ure request

Developm ent Assist ance


We have self-service and guided opt ions t o help you if you need development assist ance. Instructional doc-
umentation and online training (aut hent icat ion required) is available on our resources websit e. Alt ernat ively, you
can cont act your Account Execut ive t o discuss commercial requirement s for Temenos Development Assist ance Ser-
vices and product t raining.

New Feat ure Request s


All new feat ure request s should be logged in t he Support Port al as an ‘Idea’.

Support definit ions - 868 -


Severity level definitions
Our t eam uses severit y t o define t he impact on your business and t he urgency required for resolut ion. Below are
summaries of t he severit y levels for Plat form Support ; please consult your cont ract wit h Temenos or cont act your
Temenos Account Execut ive for furt her det ails.

Severit y 1
l Problem wit h t he plat form t hat result s in cont inued unavailabilit y of crit ical product ion operat ions wit h no
workaround available.
l It has affect ed, or is reasonably likely t o affect , t he ent ire user communit y.
l Example: Plat form is unresponsive, non-operat ional.

Severit y 2
l Problem wit h t he plat form t hat result s in cont inued degraded or int ermit t ent performance of crit ical oper-
at ions in product ion, or t he cont inued unavailabilit y or degraded or int ermit t ent performance of operat ions
in a t est environment , if no reasonable workaround is available.
l It has affect ed, or is reasonably likely t o affect , mult iple users.
l Example: Email queue is st uck in Manager; a service is st opped and won’t rest art in Manager.

Severit y 3
l Problem wit h t he plat form t hat result s in impairment of non-crit ical operat ions in any environment .
l Example: Third-part y int egrat ion is down and is affect ing t he form.

Severit y level definit ions - 869 -


Response times and update targets
Response Tim es
When creat ing a support t icket , you can expect init ial cont act from a Support Engineer wit hin t he following t ar-
get ed response t imes, depending on t he Support Package you have purchased.

Severity level Core Extended Premium

Sever ity 1 3 business hour s 2 hour s (24x7) 1 hour (24x7)

Sever ity 2 1 business day 6 business hour s 4 business hour s

Sever ity 3 2 business days 1 business day 1 business day

Updat e Target s
Target communicat ion updat es shall be governed by t he following default t imes unless ot her st at uses are set .

Severity level Core Extended Premium

Sever ity 1 Daily Ever y 2 hour s (24/7) Ever y 1 hour (24/7)

Sever ity 2 Weekly Ever y 3 business days Ever y 2 business days

Sever ity 3 Bi-Weekly Weekly Weekly

Business Hours are 9 AM-5 PM Mon-Fri MST (MT) AEST (AET) GMT (BST)

Business Hours Definit ion


Our cent ers and business working hours are:

Australia - Sydney United Kingdom - London Colorado USA - Broomfield

Mon - Fr i Mon - Fr i Mon - Fr i

9:00 AM - 5:00 PM AEST 9:00 AM - 5:00 PM GMT 9:00 AM - 5:00 PM MST

Aft er Hours Support


Aft er hours support is defined by Support Package Response SLAs.

Cust omers wit h Ext ended or Premium cust omer care support packages will receive 24x7 plat form support for
severit y 1 issues. Cust omers should log a t icket in t he Temenos Support Port al t o be prompt ly cont act ed by one of
our support engineers.

Cust omers wit h Core support packages will receive support next business day, if a severit y 1 t icket is logged out -
side of t heir business hours.

Response t imes and updat e t arget s - 870 -


Contacting Support
Support Cent ers

Business Hours
Our cent ers and business working hours are:

Australia - Sydney United Kingdom - London Colorado USA - Broomfield

Mon - Fr i Mon - Fr i Mon - Fr i

9:00 AM - 5:00 PM AEST 9:00 AM - 5:00 PM GMT 9:00 AM - 5:00 PM MST

Aft er Hours Support


Aft er hours support is defined by Support Package Response SLAs.

Cust omers wit h Premium support packages will receive 24x7 plat form support for severit y 1 issues. Cust omers
should log a t icket in t he Temenos Support Port al t o be prompt ly cont act ed by one of our support engineers.

Cust omers wit h Core support packages will receive support next business day, if a severit y 1 t icket is logged out -
side of t heir business hours.

Tem enos Support Port al


You can cont act our Support Team by logging a t icket on our Temenos Support Portal.

Accessing t he Temenos Support Port al

The Temenos Support Port al is accessible from t he following URL.

Cont act ing Support - 871 -


Username and Password

Named cont act s have been defined by your organizat ion and only t hese cont act s will be able t o login using t heir
email address as t heir username t o t he Temenos Support Port al.

To request new access, you have t o ask t he manager from your organizat ion t o request new user access t hrough
t he Temenos Support Port al or cont act t he cloudjirasupport @t emenos.com or jira_servicedesk_admin-
s@t emenos.com email addresses.

Open a new t icket


The support port al will allow you t o:

l Log new t icket s for different issues or request s

l Search our resources and documentation cont ent when logging new issues

l View exist ing t icket s


l Respond t o t icket s needing more informat ion

You can open a support t icket for t he following cat egories:

l Incident - Report an unplanned int errupt ion t o a service or product issue.


l Change - Request an alt erat ion t o a service or syst em.
l Service Request - Request a new service, informat ion, advice, account request , et c.
l Support Password Reset - Cust omers can reset t heir support port al password on t he login page.
l Journey Plat form Development Assist ance - Request development assist ance on applicat ion issues or project
work. This request is applicable t o cust omers who purchased consult ing hours only.

Cont act ing Support - 872 -


Describe your issue

You will be required t o ent er mandat ory informat ion t o allow t he Support Team t o st art invest igat ion.

It is import ant t hat t he t icket is submit t ed wit h relevant , accurat e, and det ailed informat ion ot herwise delays
might be int roduced t o gat her furt her informat ion necessary t o t roubleshoot t he issue.

Summary

l The summary of t he t icket should highlight t he core problem.

Issue Descript ion

l Single issue - Include a single problem per t icket t o avoid misunderst anding and keep focus on t he issue.
Ensure t here is no ambiguit y in descript ion of t he issue.
l Environment det ails – Provide any environment det ails including product versions, form versions, 3rd
part y services involved, any resent changes or updat es, et c.
l Severit y and business impact – Describe business impact and cont ext , including number of services,
forms, users, cust omer impact ed, frequency of t he issue, project schedule at risk, et c.
l Reproducible st eps - Clearly define t he st eps t hat we can t ake t o reproduce t he issue and t ry t o reproduce
issue on t he lat est deployment wit h simple configurat ion.
l Act ual behavior – Describe and provide screenshot s for t he act ual behavior when experiencing an issue.
l Expect ed behavior – Describe and provide mockups screenshot s for t he expect ed behavior.
l Screenshot s – Include any relat ed screenshot s which can help us t o bet t er underst and t he issue. Take
screenshot s of t he whole window rat her t han providing cropped images, wit hout cont ext .

l At t achment s - If t he issue relat es t o syst em out put s (e.g. receipt document s, or emails) please at t ach
examples when submit t ing t he t icket . The screenshot s should be correct ly named t o mat ch t he descript ion.
l Your expect at ions – Provide det ails on your expect at ions including t ime deadlines, versions where issues
are expect ed t o be fixed, et c.

View exist ing t icket s


To review exist ing t icket s, click Request s in t he upper right corner of t he Support Port al and use t he select ions
provided.

Cont act ing Support - 873 -


You can also search for and view request s using t he following filt ers:

l St at us
l Creat ed by
l Request t ype
l Search t ext

Ticket st at uses explained


Status Description

New The ticket is awaiting triage by a Support Engineer.


In Progress Temenos representative is actively working on the ticket.
Waiting for Cus-
Ticket is waiting on information or update from the customer.
tomer
Under DEV Invest-
The issue is under investigation by development team.
igation
Defect Acknow- Issue reported has been qualified to require a code change and has been assigned to
ledged the development team.
Awaiting Version Issue has been fixed by code change in a specific version and the version is pending
Release release.
On Hold Ticket has been suspended by agreement with the customer.
Closed Ticket is now closed and no longer actively worked on.

Cont act ing Support - 874 -


Lifecycle of a support ticket
St ep 1
Open Support Ticket
To open a support t icket navigat e t o t he Support Portal.

When a t icket is creat ed, our syst em aut omat ically verifies your Support Package and assigns t he Response SLA
based on t he severit y of t he t icket .

Support Ticket Severit y


Cust omers should select t he severit y level according t o t he severit y descript ion when t he t icket is opened. The Sup-
port Engineer will review t he severit y when t he t icket is opened and may reduce t he severit y if t he descript ion of
t he issue does not mat ch t he descript ion of t he severit y.

Severit y levels will not increase once est ablished but may be reduced once t he impact is mit igat ed.

St ep 2
Engagem ent wit h Support Team
Your t icket will be assigned t o a Support Engineer who will assist you t o ident ify t he issue and begin t roubleshoot -
ing.

This may involve:

l Request ing more informat ion including reproducible st eps, logs and screenshot s.

l Reproducing t he issue int ernally.


l Request ing a screensharing session or remot e access.
l Request ing an upgrade t o new maint enance version which includes hot fixes.
l Implement ing a workaround.
l Test ing a solut ion in a non-product ion environment .
l Request opening a t icket wit h a t hird-part y vendor.
l Support Engineer may engage a Senior Engineer when necessary.
l Once all act ion it ems have been exhaust ed and t he problem is not resolved, t he issue may be t ransferred t o
an Escalat ion Engineer who will assist you furt her.
l If t he issue requires a code fix or code-level analysis, t he Engineering t eam will be engaged.

As a cust omer you can review t he progress of any open t icket in t he Support Port al.

St ep 3
Close a Support Ticket
You can request t o close your t icket in t he Support Port al.

Lifecycle of a support t icket - 875 -


Before closing a support t icket , you will be asked t o confirm t hat t he issue has been worked t o your sat isfact ion
and t hat t he support t icket can be closed.

Aft er t he closure, a summary will be sent t o you wit h a descript ion of t he problem and t he reason for closure or res-
olut ion.

Issue Resolut ion


The Support t eam will consider a t icket resolved and closed wit h t he following possible out comes:

l Provide document at ion/ informat ion of product expect ed behavior.


l Provide an accept able workaround.
l Provide a soft ware updat e.

l Provide a soft ware upgrade.


l Updat e t o product document at ion.
l File an enhancement request .
l Cust omer decides t o close t he issue wit h no resolut ion.

Ot her reasons for closing a support t icket may include:

l Cust omer is not ent it led t o support .


l No response has been received aft er several at t empt s t o cont act you.

St ep 4
Cust om er Sat isfact ion Survey
Aft er case closure, you may receive a survey t o ensure your case was worked t o your sat isfact ion.

St ep 5
Reopening a support t icket
You will have 30 days from t he support t icket closure t o reopen t he t icket if necessary. If t he 30 days have lapsed, a
new support t icket must be opened.

Lifecycle of a support t icket - 876 -


Escalating a support ticket
Escalat ing support cases
Our goal is t o provide a way for our cust omers t o escalat e an issue t o t he Support Manager if:

l There is an increased impact on your business and you need t o raise t he priorit y.
l You require fast er response or more at t ent ion.
l You are dissat isfied wit h t he progress of your issue, or t he Support experience.

Our Support t eam will work wit h you t hrough t he life cycle of your t icket t o ensure t hat t he appropriat e resources
and level of at t ent ion are focused t owards a t imely resolut ion of your issue(s). If you are not sat isfied wit h t he
experience you can raise t he t icket t o t he at t ent ion of t he Support Management Team.

How do I escalat e t he visibilit y of a support t icket t o m anagem ent ?


To escalat e an issue t o Support Management Team, t ake t he following st eps:

1. Log int o t he Support Portal.


2. Navigat e t o your exist ing t icket .

3. Click t he Escalat e but t on.


4. Ent er t he reason for t he escalat ion.

5. Click t he Escalat e but t on which will complet e t he Escalat ion process.

What happens aft er an escalat ion request is m ade?


Once your request for escalat ion has been received, we will acknowledge t he receipt of your request and t he Sup-
port Manager will cont act you wit hin 24 business hours.

The Support Engineer assigned t o t he issue will be not ified t o review t o t he issue and cont act you wit hin t he work-
ing hours of your t icket .

Tim e-Based Escalat ion


We have an int ernal t ime-based escalat ion process in place t o guarant ee t he right level of management visibilit y on
progress of open support issues.

Our escalat ion hierarchy is:

l Cust omer Success Manager and Account Execut ive


l Regional Support Manager
l VP, Global Support

Time-based escalat ions are t riggered on t he following frequency:

Severity level Core Extended Premium

Severity 1 1 week 3 business days 1 business day


Severity 2 1 month 2 weeks 1 week

Escalat ing a support t icket - 877 -


Escalat ing a support t icket - 878 -
Product release definitions
Release t erm inology
M ajor release
A major release is denot ed by t he first t wo digit s of t he release number. For example, 5.10 .0, 18.05 .0.

It cont ains significant or breaking changes. For example, changes or removal of exist ing APIs, significant changes t o
t he user experience, or removal or addit ion of a major feat ure.

M aint enance release


A maint enance release is denot ed by last digit of t he release number. For example, 5.10.12 , 18.05.4 .

It cont ains product defect fixes, st abilit y and performance improvement s. Depending on t he nat ure of t he product
defect fixes, t hey may int roduce minor changes t o exist ing feat ures, but do not include new feat ures or high risk
changes, so can be adopt ed quickly. We recommend regularly upgrading t o t he lat est maint enance release for
your current version.

End-of-Life Policy
Our support will only provide assist ance on support ed product and plat form versions. For more informat ion, see
our End-of-Life policy.

End -of-Life Support may be considered for an addit ional fee. Cont act your Account Execut ive for more det ails.

While support will be provided for all versions unt il End-of-Life Dat e, it is likely t hat in t he case of issues relat ed t o
older versions, t he Support Engineer will require an upgrade t o resolve t he issue.

Product release definit ions - 879 -


Getting more information
Docum ent at ion websit e
Our product document at ion can be found at docs.avoka.com .

You can easily find a wealt h of informat ion on all our Journey Plat form product s; Manager, Maest ro, Exchange,
Workspaces and Journey Analyt ics (Insight s). As well as product document at ion, you will also find developer t ech
docs in t he API sect ion, including archit ect ural document s and SDK document at ion.

Resources websit e
Our Resources websit e is locat ed at journey.temenos.com .

Get t ing more informat ion - 880 -


Here you will find announcement s, release not es and product downloads, as well as our Q&A forum.

Announcement s

All product announcement s and advisories can be found in t he Announcements sect ion.

Release not es

Product release notes for all Journey Plat form product s, including det ailed feat ures, enhancement s, and resolved
issues for each release.

Q&A

This is t he space for our cust omers t o ask quest ions t o t he wider user communit y. The Q&A is offered t o fost er
user communit y discussion t o gat her feedback and crowd source ideas.

While it is expect ed t o oft en be t echnical, t his sect ion is separat e from t he Support syst em, and is int ended as a
place t o facilit at e useful discussions and browse t opics. Our st aff will cont ribut e where helpful.

Get t ing more informat ion - 881 -


Ideas and New Feat ure Request s
To log New Feat ure Request s, navigat e t o Temenos Support Portal > Ideas. You can submit your ideas and vot e for
exist ing ideas. To view exist ing ideas, click on Request s > All Ideas.

Get t ing more informat ion - 882 -


Journey Platform End-of-Life Policy
Journey Platform | All Personas

Each Temenos Journey Manager (TJM) release reaches it s End-of-Life 1 (EOL) dat e 3 years aft er it s General Avail-
abilit y 2 (GA) dat e.

This policy relat es t o our core product modules, including:

l Journey Manager
l Journey Maestro
l Journey Workspaces
l Transact Composer
l TransactField App

Each Temenos Journey Manager (TJM) module has it s own release numbering and GA dat es.

All Temenos Journey Manager (TJM) releases are support ed and maint ained unt il t heir EOL dat e. Aft er t hat , out -of-
support releases will be support ed only t o facilit at e an upgrade t o a support ed release version.

Support
Period Support & Maintenance

Full access to the suppor t por tal per your suppor t package.

Release Monthly Maintenance Release available against the most r ecent major ver -
to EOL sion only.
Normal
date
support
(year s 1 For older Manager ver sions - Cr itical issues fixed on r equest and with
to 3) appr oval fr om the Pr oduct Owner s and company management.

Access to new r eleases.

After Sup-
No suppor t.
por t
Per iod
Access to new r eleases.
(year s 4+)

1End-of-life (EOL) is a t erm used wit h respect t o a product supplied t o cust omers, indicat ing t hat t he product is in

t he end of it s useful life (from t he vendor's point of view), and a vendor st ops market ing, selling, or rework sus-
t aining it .
2General availabilit y (GA) is t he market ing phase when all commercializat ion act ivit ies pert aining t o t he soft ware

product have been complet ed and it is available for purchase. It is also known as product ion release.

Journey Plat form End-of-Life Policy - 883 -


Feature and Maintenance Releases
New feat ures are added t o our product s in major releases only. These feat ures are not backport ed t o previous
releases. For example, feat ures added in version 21.11.0 will not be available in version 21.05.x.

Maint enance releases provide fixes and securit y improvement s. Mont hly Maint enance Releases are available
against t he most recent major version only, unless, in our view, t here is a significant reason t o pat ch a previous
release, such as a major securit y issue or crit ical bug fixes. For example, a fix in 21.11.2 will not be port ed t o 21.05
unless t here is a significant reason t o do so.

Release Not es
Release notes, ident ifying new feat ures, improvement s and fixes, are available for all versions of all our product s.

Feat ure List s


Feat ure list s are available for Manager , Maestro , and Workspaces, wit h feat ures grouped for each major release.

End-of-Life Schedules
The following are t he End-of-Life schedules for our product s.

Journey M anager
Support ed versions
Version GA Release Date EOL Date

22.04 Jun 8, 2022 Jun 8, 2025

21.11 Dec 3, 2021 Dec 3, 2024

21.05 June 15, 2021 June 15, 2024

20.11 Jan 12, 2021 Jan 12, 2024

20.05 May 1, 2020 May 1, 2023

19.11 Nov 30, 2019 Nov 30, 2022

Unsupport ed (EOL) versions


Version GA Release Date EOL Date

19.05 Jun 14, 2019 Jun 14, 2022

18.11 Nov 26, 2018 Nov 26, 2021

18.05 Jun 1, 2018 Jun 1, 2021

Journey Plat form End-of-Life Policy - 884 -


17.10 Dec 8, 2017 Dec 8, 2020

5.1 Apr 12, 2017 Apr 12, 2020

5.0 Oct 17, 2016 Oct 17, 2019

4.3 Nov 25, 2015 Nov 25, 2018

4.2 Jul 15, 2015 Jul 15, 2018

4.1 Nov 6, 2014 Nov 6, 2017

4.0 Apr 15, 2015 Apr 15, 2017

3.6 Aug 15, 2013 Aug 15, 2016

3.5 Apr 8, 2013 Apr 8, 2016

3.4 Sep 28, 2012 Sep 28, 2015

Journey M aest ro
Support ed versions
Version GA Release Date EOL Date

22.04 Jun 8, 2022 Jun 8, 2025

21.11 Dec 3, 2021 Dec 3, 2024

21.05 July 6, 2021 July 6, 2024

20.11 Jan 11, 2021 Jan 11, 2024

20.05 May 31, 2020 May 31, 2023

19.11 Dec 13, 2019 Dec 13, 2022

Unsupport ed (EOL) versions


Version GA Release Date EOL Date

19.05 July 5, 2019 July 5, 2022

18.11 Dec 7, 2018 Dec 7, 2021

18.05 May 31, 2018 May 31, 2021

17.10 Dec 8, 2017 Dec 8, 2020

Journey Plat form End-of-Life Policy - 885 -


5.1 May 5, 2017 May 5, 2020

5.0 Oct 17, 2016 Oct 17, 2019

Journey Workspaces
Support ed versions
Version GA Release Date EOL Date

22.04 Jun 8, 2022 Jun 8, 2025

21.11 Jan 14, 2021 Jan 14, 2024

21.05 No r elease

20.11 No r elease

20.05 Jun 26, 2020 Jun 26, 2023

19.11 Dec 13, 2019 Dec 13, 2022

19.05 Jul 12, 2019 Jul 12, 2022

Unsupport ed (EOL) versions


Version GA Release Date EOL Date

18.11 Jan 10, 2019 Jan 10, 2022

Journey M aest ro Support for End-of-Life AngularJS Releases


Support for AngularJS officially ended on 31 December 2021, per an announcement on t he official AngularJS web-
sit e: AngularJS - Version Support Status. This means t hat securit y pat ches and fixes will no longer be provided by
t he AngularJS project . It does not mean AngularJS apps will st op working. All AngularJS applicat ions t hat work now,
will cont inue t o work in t he fut ure. For more informat ion, see Stable AngularJS and Long Term Support .

Journey Maest ro uses AngularJS as it s underlying web framework. Temenos will cont inue t o support M aest ro
aft er t he AngularJS EOL. Below is an out line of Temenos' st rat egy and commit ment t o fully support t he Journey
Maest ro product aft er t he AngularJS EOL and int o t he foreseeable fut ure.

Temenos is current ly in negot iat ion wit h a t hird-part y support provider t o provide a commercial support cont ract ,
service level agreement , and license for a version of AngularJS t hat is maint ained by t he t hird-part y t hrough t o at
least 2026 (wit h an opt ion t o ext end). The commercial support is ident ical t o what we current ly receive and covers
securit y weaknesses and fixes caused by web browser and jQuery changes. This version of AngularJS will be
included in t he 2021 Q4 Maest ro release, Maest ro 21.11.

Journey Plat form End-of-Life Policy - 886 -


As new AngularJS pat ches are made available, Temenos will cont inue t o apply t hese pat ch versions t o Maest ro wit h
appropriat e regression t est ing. We do not ant icipat e any impact t o Journey Maest ro cust omers.

Transact Com poser


Unsupport ed (EOL) versions
Version GA Release Date EOL Date

4.5 May 3, 2018 May 3, 2021

4.4 Oct 17, 2016 Oct 17, 2019

4.3 Nov 3, 2015 Nov 3, 2018

4.2 Jul 15, 2015 Jul 15, 2018

4.1 Nov 6, 2014 Nov 6, 2017

4.0 Apr 15, 2014 Apr 15, 2017

3.6 Aug 15, 2013 Aug 15, 2016

3.5 Apr 8, 2013 Apr 8, 2016

3.4 Sep 28, 2012 Sep 28, 2015

Transact Field App


Unsupport ed (EOL) versions
Version GA Release Date EOL Date EOL Reached

4.3 Mar 1, 2016 May 3, 2021

4.2 Jul 9, 2015 Jul 9, 2018

4.1 Nov 6, 2014 Nov 6, 2017

4.0 Apr 15, 2014 Apr 15, 2017

3.6 Aug 15, 2013 Aug 15, 2016

Next , learn about our product support .

Journey Plat form End-of-Life Policy - 887 -


Journey Platform Deprecation Schedule
Journey Platform | All Personas

As t heTemenos Journey Platform cont inuously invest s t o innovat e, improve and st ay current wit h securit y harden-
ing, t here is a need t o deprecat e some older or obsolet e feat ures of t he plat form.

The reasons for deprecat ing feat ures include:

l Reliance on 3rd part y component s which have reached End-of-Life 1 and are no longer support ed.

l Feat ures which pose a securit y risk t o t he plat form and our cust omers.
l Feat ures which are not used or barely used by cust omers.

l Feat ures which add significant complexit y t o t he plat form wit hout delivering commensurat e business value.

When deprecat ed feat ures are removed in a fut ure Journey plat form release, t hey will st ill be support ed in
t heir current Journey plat form version unt il EOL of that version .

Last Sup-
ported
Reason for
Feature Release of Migration Strategy
Deprecation
Journey plat-
form 1

Or acle Or acle EOL Upgr ade to Jour ney platfor m 18.11 or later to
18.05
JDK 8 Policy (Jan 2019) obtain OpenJDK Java 11 secur ity updates

Payment PCI Compliance


Gateway & Gateway
18.11 Use r edir ect gateway integr ations (3 par ty)
APIs (2 Vendor EOL
par ty) Policies

Eclipse Use the Licensing r epor ts and new Oper ational


Secur ity Har den-
BIRT 18.11 r epor ting featur es in Temenos Jour ney platfor m
ing Reasons
Repor ts 18.11

Adobe Migr ate Adobe LiveCycle For ms to Maestr o


Adobe EOL
LiveCycle 19.05 For ms. Migr ate Adobe LiveCycle Output PDF
Policy
r eceipts to use Manager dynamic PDF r eceipts.

1End-of-life (EOL) is a t erm used wit h respect t o a product supplied t o cust omers, indicat ing t hat t he product is in

t he end of it s useful life (from t he vendor's point of view), and a vendor st ops market ing, selling, or rework sus-
t aining it .

Journey Plat form Deprecat ion Schedule - 888 -


Gr oovy Secur ity Har den-
Access to ing and Plat-
19.11 Migr ate scr ipts to suppor ted Tr ansact Fluent API
inter nal for m Suppor t
APIs Reasons

Platfor m Sup-
Wor k
por t and Per -
Space 20.11 Use Wor kspaces (v2) r eplacement module
for mance
(v1)
Reasons

1 - Fut ure release numbers and act ual release dat es are subject t o change. For more informat ion, see lat est

announcements.

Next , learn more about t he Journey Platform End-of-Life Policy.

Journey Plat form Deprecat ion Schedule - 889 -


Reset Support Portal Password
Journey Platform | All Personas | 5.1 & Higher

Every now and t hen you may need t o reset your Support Portal password. If you st ill need help wit h your access,
cont act jira_servicedesk_admins@temenos.com or cloudjirasupport@temenos.com .

To reset t he password:

1. Go t o Support Portal.
2. Click on Forgot your passport ?

3. Ent er your username (email address) and click Email me .

4. A link t o reset your password will be send t o your email address. Click Reset my password in t he email.

Reset Support Port al Password - 890 -


5. Ent er your new password and click Confirm .

Don't use your last 3 passwords, ot herwise your password will not be reset . If you make a mist ake and
ent er any of your last 3 passwords, you have t o reset t he password again.

6. Your password has been reset and you should be logged int o t he Support Port al aut omat ically.

Reset Support Port al Password - 891 -


Changes to Our Product Names
Journey Platform | All Personas | 5.1 & Higher

Avoka is now a part of Temenos. In December 2018 Temenos announced and complet ed t he acquisit ion of Avoka.
Temenos chose Avoka t o furt her it s leadership wit h a digit al banking product focused on cust omer experience,
and has int egrat ed Avoka as t he Journey Manager product in t he newly announced Temenos Infinity suit e of
product s.

As part of t he int egrat ion wit h Temenos, all product names have been changed and reflect ed in our doc-
ument at ion. Bot h names now appear in t he labels at t he t op of each t opic. Refer t o t he t able below t o see t he ori-
ginal and new product names.

Original Name (Avoka) New Name (Temenos)

Transact Platform Journey Platform


Transact Manager Journey Manager
Transact Maestro Journey Maestro
Transact Insights Journey Analytics
Avoka Exchange Journey Exchange
Transact SDK Journey SDK
Transact Open UX Journey Open UX
Springboard Journey Springboard

For example, if you are looking for t he Transact M anager Overview t opic, you should now search for t he Jour-
ney M anager Overview .

Name Changes from the original Knowledge Base


We have always believed in providing high qualit y document at ion. Prior t o host ing on docs.avoka.com , we host ed
t he Knowledge Base via our Confluence port al at ht t ps:/ / support .avoka.com/ kb/ . Since t hen, t he plat form and it s
product s evolved, and we rewrot e our cont ent as t opic-based1 art icles and improved it s accessibilit y and search
capabilit y wit h t he Algolia search engine.

The improvement s are quit e significant , affect ing t he st ruct ure, look and feel of t he cont ent and it s discovery, so
we recommend you become familiar wit h t he websit e by checking our getting started page. If you are experiencing
difficult ies locat ing old KB document at ion, we have mapped t he most popular old KB cont ent wit h t he new t opics,
which are t he ent ry point s t o all relat ed cont ent . Check t he t ables below t o see how of t he old KB art icles map t o
new document at ion t opics.

Old KB Articles New Documentation Topics

1Topic-based aut horing is a modular approach t o cont ent creat ion where cont ent is st ruct ured around t opics t hat

can be mixed and reused in different cont ext s.

Changes t o Our Product Names - 892 -


Tr ansact Manager Administr ation Guide Journey Manager Overview

Tr ansact Manager Configur ation Journey Manager Hom e Dashboard

Or ganizations Organizations Overview

User Accounts User Accounts Overview

For m Spaces Form Spaces Overview

System Logs System Logs

Sym antec Attachm ent Virus Scanning Service


Configur e Vir us Scanning for Attachments
Clam AV Attachm ent Virus Scanning Service

Cor e Global Ser vices Core Global Services Overview

Maestr o For m Configur ation in TM Form Dashboard

Multi-Envir onment Multi-Environm ent Support

Ser ver Nodes Server Nodes Overview

Outgoing Email Outgoing Em ail Service Overview

For more informat ion on our product s prior t o version 5.1, see Ot her product s under Product s.

If you can't find an art icle you are looking for, but you remember it s name as it was in t he KB, t ry t o search for
t hat name using our Algolia search engine.

Next , learn about our new documentation.

Changes t o Our Product Names - 893 -


Journey Platform System Requirements
Journey Platform | All Personas

Each product of t he Temenos Journey platform has it s own requirement s for running in t he cloud or on-premise.
These requirement s are list ed below:

l Journey Manager requirements


l Journey Maestro requirements
l Journey Platform forms requirements
l Journey Workspaces requirements
l Mobile Browsers requirements

Legacy
l Transact Composer requirements
l TransactField App requirements
l Transact Integration Gateway requirements
l Legacy Browsers requirements

Next , learn about t he Journey Platform deprecation schedule.

Journey Plat form Syst em Requirement s - 894 -


Journey M anager System Requirements
Journey Manager (JM) | All Personas

Journey Manager is a secure, high performance applicat ion server t hat processes, manages, and monit ors t rans-
act ions associat ed wit h cust omer onboarding journeys. To provide t he best cust omer experience while handling a
significant number of t ransact ions, t he applicat ion server requires specific syst em configurat ions described below.

Journey Manager can be run in t he cloud or on premise, depending on your requirement s. We recommend run-
ning our soft ware in t he cloud environment provisioned by Temenos Journey Cloud Service, so you can have new
services commissioned quickly and addit ional capacit y allocat ed t o you dynamically as required.

Cloud
Journey Manager can be run as a host ed service in t he following clouds:

l Amazon 1 cloud

l Azure 2 cloud | 20.05

Journey Manager is provisioned in t he following regions:

l APAC: AWS Sydney region / Azure Aust ralia East


l Nort h America: AWS Oregon region / Azure US East
l EMEA: AWS Ireland region / Azure Nort h Europe

We can provision Journey Manager in ot her regions as well, as long as t hey support t he services t hat our soft ware
requires.

On Premise
You can install Journey Manager in local environment s giving you a complet e cont rol of t he whole infrast ruct ure.

Browser
l Google Chrome - current version.
l Microsoft Edge – current version.
l Microsoft Int ernet Explorer 11.0.
l Mozilla Firefox - current version.

1Amazon Web Services (AWS) is a comprehensive, evolving cloud comput ing plat form provided by Amazon. It

provides a mix of infrast ruct ure as a service (IaaS), plat form as a service (PaaS) and packaged soft ware as a service
(SaaS) offerings.
2Microsoft Azure is a cloud comput ing service creat ed by Microsoft for building, t est ing, deploying, and managing

applicat ions and services t hrough Microsoft -managed dat a cent ers.

Journey Manager Syst em Requirement s - 895 -


Operating Systems
Journey Manager is cert ified on t he following OS:

l M icrosoft Windows Server 1 2016, 2012 or 2008 R2 64 bit Edit ion on Int el x86-64
l Cent OS Linux 2 7 on Int el x86-64 (recommended)
l Cent OS Linux 6 on Int el x86-64 (support ed)
l Oracle Linux 3 6 (Unbreakable Ent erprise Kernel) on Int el x86-64 (support ed)
l Red Hat Ent erprise Linux Server 4 AP 6 on Int el x86-64 (support ed)

Databases
Journey Manager is cert ified on t he following DBs:

l AWS Aurora RDS5 (MySQL-Compat ible Edit ion)


l M icrosoft SQL Server 6 2017, 2014, 2012
l Oracle M ySQL7 5.7 (recommended), 5.6 and 5.5 (support ed)

l Oracle RDBM S8 19c | 20.05


l Oracle RDBMS 12c and 11g

1Microsoft Windows Server OS (operat ing syst em) is a series of ent erprise-class server operat ing syst ems designed

t o share services wit h mult iple users and provide ext ensive administ rat ive cont rol of dat a st orage, applicat ions and
corporat e net works.
2Cent OS (Communit y Ent erprise Operat ing Syst em) is a Linux dist ribut ion t hat provides a free, ent erprise-class,

communit y-support ed comput ing plat form funct ionally compat ible wit h it s upst ream source, Red Hat Ent erprise
Linux (RHEL).
3Oracle Linux (OL, formerly known as Oracle Ent erprise Linux) is a Linux dist ribut ion packaged and freely dis-

t ribut ed by Oracle, available part ially under t he GNU General Public License since lat e 2006. It is compiled from Red
Hat Ent erprise Linux (RHEL) source code, replacing Red Hat branding wit h Oracle's. It is also used by Oracle Cloud
and Oracle Engineered Syst ems such as Oracle Exadat a and ot hers.
4is a dist ribut ion of t he Linux operat ing syst em developed for t he business market .
5Amazon Relat ional Dat abase Service (Amazon RDS) is a web service t hat makes it easier t o set up, operat e, and

scale a relat ional dat abase in t he cloud. It provides cost -efficient , resizable capacit y for an indust ry-st andard rela-
t ional dat abase and manages common dat abase administ rat ion t asks.
6Microsoft SQL Server is a relat ional dat abase management syst em developed by Microsoft . As a dat abase server,

it is a soft ware product wit h t he primary funct ion of st oring and ret rieving dat a as request ed by ot her soft ware
applicat ions—which may run eit her on t he same comput er or on anot her comput er across a net work (including
t he Int ernet ).
7MySQL is an open-source relat ional dat abase management syst em (RDBMS). It 's an Oracle-backed open source

relat ional dat abase management syst em (RDBMS) based on St ruct ured Query Language (SQL). MySQL runs on vir-
t ually all plat forms, including Linux, UNIX and Windows. Alt hough it can be used in a wide range of applicat ions,

Journey Manager Syst em Requirement s - 896 -


Hardware
Journey Manager runs best on lat est Int el x86-64 Xeon CPU archit ect ures wit h high CPU performance. We recom-
mend using server virt ualizat ion 1, such as VMware ESX, t o enable bet t er hardware ut ilizat ion and improve oper-
at ional support .

The recommended server specificat ion is:

l Int el Xeon Processors 8 Cores wit h 2.4 GHz or great er clock speed (4 Cores minimum)
l 16 GB of RAM (8 GB minimum)
l 100 GB of disk st orage

To get a complet e pict ure of all syst em requirement s you might need, check ot her Journey Platform products t hat
you will need t o use along wit h Journey Manager t o build different cust omer journeys.

Next , learn about Journey platform support.

1Virt ualizat ion is t he creat ion of a virt ual resource such as a server, deskt op, operat ing syst em, file, st orage or net -

work t o manage workloads by radically t ransforming t radit ional comput ing t o make it more scalable.

Journey Manager Syst em Requirement s - 897 -


Journey M aestro System Requirements
Maestro | All Personas

Journey Maestro is web-based design t ool for creat ing HTML applicat ions which are host ed on Journey Manager .

To deploy a Maest ro form, Journey Manager v5.0 or higher is required.

We support t he following configurat ions:

Cloud
Available as an Amazon 1 host ed service, current ly provided in t he AWS regions US West (Oregon), EU (Ireland) and
Asia Pacific (Sydney).

Browser
l Google Chrome - current version. This is t he recommended browser.
l Mozilla Firefox - current version.

Recommended Hardware
l Operat ing Syst em: Microsoft support ed Windows 7 or Windows 10 versions, and Apple support ed macOS
versions

l RAM: 8GB
l CPU: Int el Core i5 or above
l Screen size: 1920 x 1080 or larger. This is not a hard requirement , however, t he great er t he screen size t he bet -
t er it is t o design pages in Maest ro t ool
l Disk space: 10GB

Next , learn about Journey platform support.

1Amazon Web Services (AWS) is a comprehensive, evolving cloud comput ing plat form provided by Amazon. It

provides a mix of infrast ruct ure as a service (IaaS), plat form as a service (PaaS) and packaged soft ware as a service
(SaaS) offerings.

Journey Maest ro Syst em Requirement s - 898 -


Journey Platform Forms System Requirements
Journey Platform | All Personas

The Temenos Journey platform ensures t hat forms built wit h Journey Maestro are support ed on bot h deskt op and
mobile plat forms.

Desktop Browsers
The Journey Plat form support s Maest ro forms being used on t he following deskt op browsers:

l Apple Safari - current version


l Google Chrome - current version

l Microsoft Edge - current version


l Microsoft Int ernet Explorer - 11
l Mozilla Firefox - current version

Legacy Desktop Browsers


The Journey Plat form no longer support s t he following browsers because Microsoft no longer provides securit y
pat ches or fixes for t hese browsers, which poses a significant securit y risk.

l Int ernet Explorer 8 (IE8)


l Int ernet Explorer 9 (IE9)

l Int ernet Explorer 10 (IE10)

For furt her det ails, refer t o Microsoft 's websit e:

l https://support.microsoft.com/en-us/lifecycle# gp/Microsoft-Internet-Explorer
l https://www.microsoft.com/en-au/WindowsForBusiness/End-of-IE-support

In addit ion, t hese legacy browsers do not support modern securit y st andards required for securit y t ransact ions
including:

l TLS 1.2 which is required for secure credit card t ransact ions (PCI policy)
l Cont ent Securit y Policy 1 (CSP) t o prevent JavaScript inject ion (XSS) at t acks. For more informat ion, see
https://www.w3.org/TR/CSP/

1Cont ent Securit y Policy (CSP) is a comput er securit y st andard int roduced t o prevent cross-sit e script ing (XSS),

clickjacking and ot her code inject ion at t acks result ing from execut ion of malicious cont ent in t he t rust ed web page
cont ext . CSP provides a st andard met hod for websit e owners t o declare approved origins of cont ent t hat browsers
should be allowed t o load on t hat websit e—covered t ypes are JavaScript , CSS, HTML frames, web workers, font s,
images, embeddable object s such as Java applet s, Act iveX, audio and video files, and ot her HTML5 feat ures. For
more informat ion, see ht t ps:/ / www.w3.org/ TR/ CSP/

Journey Plat form Forms Syst em Requirement s - 899 -


For Journey Manager 4.3.3 and lat er, cust omers must explicit ly configure t heir environment s t o support IE10,
IE9, or IE8. The default Journey Manager configurat ion does not support t hese browsers. Cust omers enabling
support for legacy browsers do so at t heir own risk.

Mobile Browsers
The Journey Plat form support s Maest ro forms in t he following mobile browsers:

l Apple Safari on iOS - 7.0 or lat er


l Google Chrome - 4.0 or lat er

The Google Search App (GSA) is not support ed. You should use Google Chrome inst ead.

The Journey Plat form forms have been t est ed across a wide range of browsers on mobile devices including t hose
from Apple, Samsung, HTC, and Nokia.

Microsoft Windows Phone 8 devices are not support ed as t hese are EOL by Microsoft , and we do not support Win-
dows 10 Mobile phone devices as t hese have not been successful in market and are scheduled EOL in 2019 by
Microsoft .

Exhaust ive t est ing across market leading devices and browsers is performed. However, t he proliferat ion of mobile
plat form combinat ions (mobile device + OS + pat ches + browser) preclude us from t est ing Maest ro form func-
t ionalit y against all mobile plat form combinat ions.

If you're using TransactField App in a Bring Your Own Device (BYOD) deployment model, we recommend t est -
ing Journey Plat form forms against your t arget devices.

Next , learn about Journey platform support .

Journey Plat form Forms Syst em Requirement s - 900 -


M obile Browsers Requirements
Journey Platform | All Personas

Temenos diligent ly t est s HTML forms across a wide range of browsers on devices from t he following companies:

l Apple
l Samsung
l HTC
l Nokia

Temenos doesn’t support t he following mobile devices:

l Microsoft Windows 8 phone as it ’s now EOL1.

l Microsoft Windows 10 phone as it has not been successful on t he market and it s scheduled EOL is 2019.

While we perform exhaust ive t est ing across market leading devices and browsers, t here is a large number of
mobile devices, browsers, and device pat ch combinat ions which means we can't t est against all t hese com-
binat ions.

If you are using TransactField App in a Bring Your Own Device (BYOD) deployment model, we recommend t hat you
t est HTML forms against your t arget devices.

Next , learn about Temenos support .

1End-of-life (EOL) is a t erm used wit h respect t o a product supplied t o cust omers, indicat ing t hat t he product is in

t he end of it s useful life (from t he vendor's point of view), and a vendor st ops market ing, selling, or rework sus-
t aining it .

Mobile Browsers Requirement s - 901 -


Transact Composer Requirements
Composer | All Personas

Transact Composer is design t ool for creat ing HTML applicat ions which are host ed on Journey Manager . The Com-
poser design t ool is an Adobe Flash based applicat ion which can be used web browsers support ing Flash or as a
deskt op Adobe AIR applicat ion.

We support t he following configurat ions:

Cloud
Available as an Amazon 1 host ed service, current ly provided in t he AWS regions US West (Oregon), EU (Ireland) and
Asia Pacific (Sydney).

Adobe Flash
Requires browsers support ing Adobe Flash 2 Player, or t he Adobe AIR runt ime environment for deskt ops.

Browser
l Google Chrome - current version
l Microsoft Edge – current version
l Microsoft Int ernet Explorer 11.0
l Mozilla Firefox - current version

Composer is built wit h Flash, which is scheduled for deprecation in 2020 . Once t his happens, Composer will
need t o be run via Adobe Air .

1Amazon Web Services (AWS) is a comprehensive, evolving cloud comput ing plat form provided by Amazon. It

provides a mix of infrast ruct ure as a service (IaaS), plat form as a service (PaaS) and packaged soft ware as a service
(SaaS) offerings.
2Adobe Flash is a deprecat ed mult imedia soft ware plat form used for product ion of animat ions, rich Int ernet applic-

at ions, deskt op applicat ions, mobile applicat ions, mobile games and embedded web browser video players. Flash
displays t ext , vect or graphics and rast er graphics t o provide animat ions, video games and applicat ions. It allows
st reaming of audio and video, and can capt ure mouse, keyboard, microphone and camera input . Relat ed devel-
opment plat form Adobe AIR cont inues t o be support ed.

Transact Composer Requirement s - 902 -


Recommended Hardware
l Operat ing Syst em: Microsoft support ed Windows 7 or Windows 10 versions, and Apple support ed macOS
versions
l RAM: 8GB
l CPU: Int el Core i5 or above
l Screen size: 1920 x 1080 or larger (recommended)
l Disk space: 10 GB freely available

For more informat ion see Journey platform support overview.

Transact Composer Requirement s - 903 -


Transact Integration Gateway System Requirements
Journey Platform | All Personas

The Transact Int egrat ion Gat eway (TIG) is a light weight soft ware appliance for deploying on premise t o enable
hybrid cloud Transact int egrat ion.

We support t he following configurat ions:

Certified Operating Systems


l Microsoft Windows Server 2012 or 2008 R2 64 bit Edit ion on Int el x86-64
l Cent OS Linux 7 on Int el x86-64 (recommended)

l Cent OS Linux 6 on Int el x86-64 (support ed)


l Red Hat Ent erprise Linux Server AP 6 on Int el x86-64

Recommended Hardware
Transact Int egrat ion Gat eway runs best on lat est Int el x86-64 CPU archit ect ures. We recommend server vir-
t ualizat ion such as VMware ESX t o provide enable bet t er hardware ut ilizat ion and improve operat ional support .

The Transact Int egrat ion Gat eway has t he following server requirement s:

l Int el x86-64 Processors (2-4 Cores)


l 4-8 GB of RAM

l 100 GB of disk st orage

For more informat ion, see t he Transact Int egrat ion Gat eway Inst allat ion Guide document at ion.

Next , learn about Temenos support .

Transact Int egrat ion Gat eway Syst em Requirement s - 904 -


TransactField App System Requirements
Journey Platform | All Personas

TransactField App support s t he following devices for exist ing cust omers:

l Apple iOS 7 or lat er devices


l Google Android version 4 or lat er devices
l Microsoft Windows 8.1 devices via t he Windows St ore
l Microsoft Windows 7 or lat er PCs wit h Windows App

Next , learn about Journey platform support.

Transact Field App Syst em Requirement s - 905 -


Legacy Browsers Requirements
Journey Platform | All Personas

The Journey platform doesn't support t he following legacy deskt op browsers:

l Int ernet Explorer 8


l Int ernet Explorer 9
l Int ernet Explorer 10

Microsoft no longer support s t hese browsers and doesn’t provide securit y pat ches or fixes for zero day exploit s
making t hem a significant securit y risk and liabilit y t o cust omers, form users, and Temenos. For more informat ion,
refer t o t he following document at ion:

l https://support.microsoft.com/en-us/lifecycle# gp/Microsoft-Internet-Explorer
l https://www.microsoft.com/en-au/WindowsForBusiness/End-of-IE-support

In addit ion, t hese legacy browsers don’t support modern securit y st andards required for secure t ransact ions t o
t ake place:

l TLS1 1.2 which is required for secure credit card t ransact ions such as PCI policy 2.
l Cont ent Securit y Policy 3 (CSP) t o prevent JavaScript inject ion (XSS) at t acks.

In Journey Manager 4.3.3 and higher, cust omers must explicit ly configure t heir environment s t o support IE10, IE9
or IE8 because it s default configurat ion doesn’t support t hem.

Cust omers enabling legacy browsers do so at t heir own risk.

Next , learn what Temenos supports.

1Transport Layer Securit y (TLS) is a prot ocol t hat provides privacy and dat a int egrit y bet ween t wo communicat ing

applicat ions. It 's t he most widely deployed securit y prot ocol used t oday, and is used for Web browsers and ot her
applicat ions t hat require dat a t o be securely exchanged over a net work, such as file t ransfers, VPN connect ions,
inst ant messaging and voice over IP.
2PCI policy is a t ype of securit y policy t hat covers how an organizat ion addresses t he 12 requirement s of t he Pay-

ment Card Indust ry Dat a Securit y St andard (PCI DSS). A PCI policy is required of all merchant s and service pro-
viders who st ore, process or t ransmit credit card holder dat a.
3Cont ent Securit y Policy (CSP) is a comput er securit y st andard int roduced t o prevent cross-sit e script ing (XSS),

clickjacking and ot her code inject ion at t acks result ing from execut ion of malicious cont ent in t he t rust ed web page
cont ext . CSP provides a st andard met hod for websit e owners t o declare approved origins of cont ent t hat browsers
should be allowed t o load on t hat websit e—covered t ypes are JavaScript , CSS, HTML frames, web workers, font s,
images, embeddable object s such as Java applet s, Act iveX, audio and video files, and ot her HTML5 feat ures. For
more informat ion, see ht t ps:/ / www.w3.org/ TR/ CSP/

Legacy Browsers Requirement s - 906 -


Journey Platform Persona Overview
Journey Platform | All Personas

To ident ify, deliver, maint ain and support an out st anding Journey platform cust omer experience requires t he
effort s of individuals wit h a broad range of st rengt hs and skills. They can be associat ed wit h specific Journey plat -
form act ions and responsibilit ies t o define specific personas. Personas have roles associat ed wit h t hem, which
provide a guideline and a reference for users performing specific t asks and act ions. For example, a Form Builder is a
persona t hat creat es forms in Journey Maestro .

We have t wo special personas, Executive and Starter , t hat define t he audience t hat need t o underst and and st art
using our Journey plat form quickly. Bot h personas have well defined user pat hs, t he Executive path and Starter
path . We recommend reading at least one of t hem before you proceed wit h ot her user pat hs.

Personas can be grouped by t eams. We define t wo main t eams wit hin t he Journey plat form:

l Implementation team
l Business as Usual (BAU) team

Implementation Team
The Implement at ion t eam develops new applicat ions, such as forms, services, and delivery channels. The t eam t yp-
ically consist s of Implement at ion Managers, Form Builders, Templat e Designers, Plat form Developers, Solut ion
Archit ect s, and Test ers. Oft en t here are mult iple t eams working concurrent ly t o int roduce new t ransact ions t o t he
environment . These t eams are st ruct ured as a project t eam and depend on your organizat ion’s chosen delivery
st yle. The Implement at ion t eam will have access t o develop forms wit hin t he aut horing t ools and deploy t hem t o
Manager development and t est environment s. They will have access t o implement new services t hat correspond
and compliment t he forms in development , or t hat are required t o support forms already in product ion.

The Implement at ion t eam consist s of t he following personas, including t heir user pat hs:

l Form Builder | Form Builder user path


l Platform Developer | Platform Developer user path
l Solution Architect
l Maestro Template Designer
l Application Tester
l Implementation / Project Manager
l Analytics User

Journey Plat form Persona Overview - 907 -


Business as Usual (BAU) Team
The BAU t eam maint ains and monit ors t he plat form, performs user management , and so on. It is imperat ive t hat
cust omers assign t he BAU1, or Operat ions, t eam t o ensure t he daily on-going operat ion of t he forms.

We can provide document at ion on recommended operat ional support pract ices t o t he BAU t eam.

The following act ivit ies should be included in BAU monit oring:

l Developing processes t o manage deployment s.


l Creat ing and enforcing user management processes.

l Building error alert s.


l Regular Manager t ransact ion monit oring.
l Support ing communicat ion lines.
l Reviewing Manager analyt ics screens.
l Monit oring server healt h for on premise inst allat ions.
l Deploying updat es and applicat ions t o t he product ion environment .

The BAU t eam will:

l Have access t o Manager for monit oring, support ing and checking alert s.
l Cont ain members who can review development works, before t hese development s are moved from t he
development phase, t hus providing a level of securit y for t he product ion syst ems from poorly writ t en code.
l Test all new development s once t hey are deemed t o be product ion grade development s.
l This t eam will also regression t est any product ion changes t o ensure ongoing int egrit y of t he syst em.
l Be responsible for user account s and user management on t he Test ing, St aging and Product ion envir-
onment s and also for provisioning new development environment s when request ed.
l Maint ain t he UX2 component of all development s, ensuring compliance t o company st andards.

l Have at t ended our t raining courses and complet ed t he Operat ional Support Training module.

The BAU t eam consist s of t he following personas:

1usiness As Usual (BAU) is t he view of an organisat ion, business unit , work t eam or t eam member complet ing t heir

everyday work in t he normal way.


2User experience (UX) design is t he process of creat ing product s t hat provide meaningful and relevant experiences

t o users. This involves t he design of t he ent ire process of acquiring and int egrat ing t he product , including aspect s
of branding, design, usabilit y, and funct ion.

Journey Plat form Persona Overview - 908 -


l Champion / System Owner
l System Administrator
l System Manager / DevOps
l Support Team

Journey Plat form Persona Overview - 909 -


M aestro Form Builder
Journey Platform | Form Builder

A Form Builder is responsible for designing and t est ing t he dat a capt ure and display port ion of t he solut ion built
wit h Journey Maestro .

This may include creat ing forms using exist ing component s and funct ionalit y. They may also creat e simple busi-
ness script s and shared component s. At a more advanced level, Form Builders may also writ e simple t o complex
business and display logic using JavaScript , jQuery, and AngularJS t ags. In addit ion, t hey will use t he Transact Fluent
SDK and an IDE t o creat e nat ive component s. They will also work closely wit h t he Journey Plat form Developer for
t echnical int egrat ion point s and t he Templat e Designer for st yling.

To see a list of Journey plat form feat ures specific t o t he Form Builder persona, see t he Form Builder user path .

Exam ple t asks of a Form Builder include:


l Convert requirement document s int o Maest ro form and component designs.
l Develop and maint ain shared component s, including global shared binding and dat a schema.
l Build forms and import t hem int o Manager in non-product ion environment s.

l Implement visibilit y and validat ion logic.


l Use relevant APIs1 for forms and services.

l Prepare deployment asset s.


l Test funct ionalit y t o ensure t he applicat ion meet s t he requirement specificat ion.

1Applicat ion Programming Int erface.

Maest ro Form Builder - 910 -


Prerequisite Skillset of a Form Builder
l 1-2 years background in web page design (3-4 years preferred).
l An underst anding of HTML5 t ags and HTML5 st ruct ure.
l Abilit y t o add funct ionalit y wit h JavaScript and JQuery.
l Abilit y t o modify t he view wit h AngularJS expressions.
l Abilit y t o manage and describe dat a st ruct ure, such as JSON and XML.
l Work wit h Source Code Cont rol Syst ems1 and underst and version cont rol.

l Debug using browser development t ools.


l Work wit h an IDE and Transact Fluent SDK t o build nat ive component s and front -end using anot her devel-
opment environment , such as React JS2.

l Effect ive communicat ion skills: abilit y t o describe and underst and int egrat ion point s.

Objectives and Goals of a Form Builder


l Creat e Journey applicat ions t hat follow t he requirement specificat ion document at ion.
l Follow best pract ices when creat ing new applicat ion solut ions.
l Design efficient , reusable component s t o share wit h ot her Journey applicat ions.
l Become Temenos Journey certified.

Next , learn about t he Implementation/Project Manager />persona.

1Source Code Cont rol Syst em (SCCS) is a version cont rol syst em designed t o t rack changes in source code and

ot her t ext files during t he development of a piece of soft ware. This allows t he user t o ret rieve any of t he previous
versions of t he original source code and t he changes which are st ored.
2React JS is a JavaScript library for building user int erfaces.

Maest ro Form Builder - 911 -


Journey Solution Architect
Journey Platform | Solution Architect

A Journey Solut ion Archit ect is responsible for t he overall design of t he applicat ion built on t he Temenos Journey
Platform . They work wit h t he client t o gat her business requirement s and t ranslat e t hese int o t he archit ect ure for
t he solut ion: describing it t hrough archit ect ure and design art ifact s. They also work as a single point of cont act for
Form Builders and Plat form Developers on int egrat ion point s and defining expect ed funct ionalit y. They are t he
t echnical lead for planning, analysis, development , t est ing and t ransit ioning t o from development t o live cust omer
solut ions.

It is recommended t hat t he Solut ion Archit ect accomplishes t he above t asks following Agile 1 met hodology; t here-
fore, an underst anding of Agile development met hodology is usually required.

Exam ple t asks of a Journey Solut ion Archit ect include:


l Complet e code review for new development s.
l Communicat e best pract ices and new Journey plat form feat ures t o relevant st akeholders at all levels of t he
business.
l Formulat e solut ions t o complex business problems.
l Document solut ion designs for lat er reference.
l Manage all aspect s – planning, development , implement at ion, archiving, and hand-off – of t he development
cycle.

1Agile soft ware development is an approach t o soft ware development under which requirement s and solut ions

evolve t hrough t he collaborat ive effort of self-organizing and cross-funct ional t eams and t heir cust omer/ end user.

Journey Solut ion Archit ect - 912 -


Prerequisite Skillset of a Solution Architect
l Effect ive communicat ion and int erpersonal skills.
l 5+ years commercial soft ware delivery experience in a vendor (consult ancy or development ).
l 2+ years as a web applicat ion developer wit h exposure t o t he different layers of t he st ack aside from t heir
area of expert ise.
l Experience wit h t he following (or equivalent subst it ut e):
l Java/ Groovy 1.

l Principals of Object -Orient ed Programming.


l JavaScript .

l HTML, CSS.
l Experience wit h t he following (or equivalent subst it ut e):
l Manipulat e dat a format s, such as XSD2, XM L3, JSON 4, using t ools and code.

l WebService/ Rest ful Endpoint s.


l JavaScript Frameworks.
l Dat abases, for example, SQLServer, Oracle or MySQL.
l Applicat ion deployment t o Web Servers, App Servers, Dat abases, and various Operat ing Syst ems.

Objectives and Goals of a Solution Architect


l Define and follow best pract ices for building a Journey plat form applicat ion.

l Lead a project from concept ion t o complet ion.


l Discover int egrat ion point s bet ween applicat ion.
l Be known as an expert on t he Journey plat form.
l Liaison/ buffer bet ween t he Temenos t eam and t he client .
l Guide t eams and follow governance pract ices for developing on t he Journey plat form.

Next , learn about t he Support persona.

1Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.
2XSD (XML Schema Definit ion) is a World Wide Web Consort ium (W3C) recommendat ion t hat specifies how t o

formally describe t he element s in an Ext ensible Markup Language (XML) document .


3XML (Ext ensible Markup Language) is a markup language t hat defines a set of rules for encoding document s in a

format t hat is bot h human-readable and machine-readable.


4JSON (JavaScript Object Not at ion) is a synt ax for st oring and exchanging dat a and is used in Maest ro t o st ore

forms. If a Form Builder want s t o t ransfer t heir form t o anot her syst em, t hey can do so by using t he Download
JSON file but t on.

Journey Solut ion Archit ect - 913 -


Journey Platform Developer
Journey Platform | Platform Developer
A Journey Plat form Developer is responsible for designing and t est ing t he back-end port ion of an applicat ion built
on t he Temenos Journey Platform . This includes set t ing form and organizat ional propert ies, creat ing services t hat
use t he Transact Fluent API, as well as t hird-part y APIs t o manage, secure, and manipulat e dat a and digit al asset s.
They are also responsible for creat ing workflows based on business logic, designing and implement ing unit and
int egrat ion t est s, document ing funct ionalit y and bundling applicat ions for t he various Journey Manager inst ances
(Dev, UAT, et c.). In addit ion, t hey may be responsible for implement ing CSS, CSS-Less, React JS or AngularJS design
and funct ionalit y for form port als.

It is recommended t hat t he developer accomplishes t he above t asks following Agile 1 met hodology; t herefore, an
underst anding of Agile development met hodology is usually required.

To see a list of Journey plat form feat ures specific t o t he Plat form Developer persona, see t he Platform Developer
user path .

Exam ple t asks of a Plat form Developer include:


l Develop and maint ain pages t o be used as Port al/ Dashboard UI screens.
l Develop and maint ain Manager service definit ions and Transact funct ions (Groovy 2 script s).

l Implement business logic using collaboration jobs.

l Version and deploy art ifact s using t he port al and dashboard in DEV and TEST environment s.
l Develop, package and deploy applicat ions using Journey SDK.

1Agile soft ware development is an approach t o soft ware development under which requirement s and solut ions

evolve t hrough t he collaborat ive effort of self-organizing and cross-funct ional t eams and t heir cust omer/ end user.
2Groovy is a powerful script ing language which runs on t he Java Virt ual Machine. Across t heJourney plat form,

Groovy is used t o creat e services in Manager. These services are primarily used t o creat e plug-in st yle syst ems t hat
int eract wit h Manager.

Journey Plat form Developer - 914 -


Prerequisite Skillset of a Platform Developer
l Experience wit h Object Orient ed Analysis, Development and Design using Java and Groovy.
l Experience wit h IDEs1, such as Eclipse or Int elliJ, and Journey SDK t o build project s using Ant and Maven.

l Underst and t he principal of cont inuous int egrat ion development .


l Abilit y t o unit t est and perform int egrat ion t est ing using Java object s and framework.
l Abilit y t o creat e services for t he Java plat form.
l Manipulat e dat a format s such as XM L2 and JSON 3.

l Int egrat e IDEs wit h source code cont rol t ools4.

l Convert business logic t o elect ronic workflows.

l Develop following t he agile delivery met hodology.


l Debug and opt imize code.
l Creat e cust om port als using a variet y of programming languages and frameworks (Form Spaces).

l Creat e secure communicat ion channels using credent ials, cert ificat es, and keyst ores.
l Int ermediat e t o advanced knowledge of Groovy, Java, and JavaScript .
l Familiar wit h SOAP and REST APIs int egrat ion.

Objectives and Goals of a Platform Developer


l Design back-end solut ion of a Journey applicat ion.
l Creat e and maint ain Manager service definit ions (Groovy script s).

l Solve t echnical problems.


l Opt imize code.
l Collaborat e wit h ot her t eam members.
l Work wit h t he lat est t echnology.
l Become Temenos Journey certified.

Next , learn about t he Solution Architect persona.

1Int egrat ed Development Environment .


2XML (Ext ensible Markup Language) is a markup language t hat defines a set of rules for encoding document s in a

format t hat is bot h human-readable and machine-readable.


3JSON (JavaScript Object Not at ion) is a synt ax for st oring and exchanging dat a and is used in Maest ro t o st ore

forms. If a Form Builder want s t o t ransfer t heir form t o anot her syst em, t hey can do so by using t he Download
JSON file but t on.
4Source Code Cont rol Syst em (SCCS) is a version cont rol syst em designed t o t rack changes in source code and

ot her t ext files during t he development of a piece of soft ware. This allows t he user t o ret rieve any of t he previous
versions of t he original source code and t he changes which are st ored.

Journey Plat form Developer - 915 -


M aestro Template Designer
Journey Platform | Template Designer

A Journey Templat e Designer is responsible for t he creat ion and funct ionalit y of t he t emplat es used as t he found-
at ion for forms creat ed wit h Journey Maest ro. The t emplat e defines t he look-and-feel of t he form as well as t he
component s based on requirement s provided by t he client . In addit ion, t he t emplat e designer can dict at e what ele-
ment s can be accessed and modified by t he form designer.

The Templat e Designer will creat e t he init ial t emplat e using t he appropriat e libraries and IDE1 based on dis-
cussions wit h t he client ’s UX2 design t eam. The Templat e Designer will also make small modificat ions t o t he exist -
ing t emplat e using t he Maest rot emplat e designer int erface.

Exam ple t asks of a Tem plat e Designer include:


l Creat ing t he cust om t emplat e, including t he placeholder t emplat e.
l Managing st yle libraries wit hin t he Maest ro project and organizat ion.
l Creat ing component st yles for use in Maest ro applicat ions.
l Creat ing brands t hat can be applied in t he Maest ro form.

1Int egrat ed Development Environment .


2User experience (UX) design is t he process of creat ing product s t hat provide meaningful and relevant experiences

t o users. This involves t he design of t he ent ire process of acquiring and int egrat ing t he product , including aspect s
of branding, design, usabilit y, and funct ion.

Maest ro Templat e Designer - 916 -


Prerequisite Skillset of a Template Designer
l Abilit y t o develop and implement CSS3 1 and CSS-Less2 libraries.

l 3 years+ background in web page design.


l 3+ years’ experience as a Front -End Developer.
l Underst anding of HTM L5 3.

l Experience working wit h JavaScript frameworks.


l Experience wit h source code cont rol management 4.

l 1-3 years Visual design, for example, wireframes, mock-ups, graphic design.
l Experience working wit h Corporat e St yle guides.

l Knowledge of best pract ices for accessibilit y.

Objectives and Goals of a Template Designer


l Review and analysis design specificat ions for use in t he Maest ro t emplat e.
l Ensure best pract ices are followed when new st yles and t emplat es are creat ed.
l Ensure accessibilit y requirement s are met .

Next , learn about t he Application Tester persona.

1CSS3 is t he lat est evolut ion of t he Cascading St yle Sheet s language and aims at ext ending CSS2.1. It brings a lot of

long-await ed novelt ies, like rounded corners, shadows, gradient s, t ransit ions or animat ions, as well as new layout s
like mult i-columns, flexible box or grid layout s.
2Less is a dynamic preprocessor st yle sheet language t hat can be compiled int o Cascading St yle Sheet s and run on

t he client side or server side.


3Maest ro forms are fundament ally built using HTML 5. The st ruct ure of t he form and t he t ext displayed in t he

form are all configured and est ablished using HTML5. HTML is t he st andard markup language for creat ing Web
pages and st ands for Hypert ext Markup Language. HTML 5 describes t he st ruct ure of a Maest ro form.
4Source Code Cont rol Syst em (SCCS) is a version cont rol syst em designed t o t rack changes in source code and

ot her t ext files during t he development of a piece of soft ware. This allows t he user t o ret rieve any of t he previous
versions of t he original source code and t he changes which are st ored.

Maest ro Templat e Designer - 917 -


Journey Application Tester
Journey Platform | Application Tester

A Journey Applicat ion Test er is responsible for designing t est ing scenarios for usabilit y, applicat ion funct ionalit y,
int egrat ion, and bug discovery. They conduct t he t est ing, analyse t he result s and provide feedback t o t he devel-
opment t eam. The Applicat ion Test er is also responsible for creat ing t he t est ing script s – usabilit y st oryboards, t est
cases, and aut omat ion script s. For Temenos client s, t he persona may be limit ed t o user-accept ance t est ing, which
is less t echnical but requires a deep underst anding of t he business rules associat ed wit h t he applicat ion as well as
an underst anding of t he various int erfaces provided.

Exam ple t asks of a JourneyApplicat ion Test er include:


l Creat e t est cases based upon document ed requirement s.
l Writ e t est report s.
l Compare t he form t o t he specificat ion document at ion.
l Complet e breakage t est ing - t ry t o break t he form, get creat ive wit h what you check, et c.
l Check t he visual aspect s of t he form - spacing, spelling, grammar, layout , et c.

Prerequisite Skillset of a Journey Application Tester


l Abilit y t o review and underst and requirement specificat ions.
l Abilit y t o use t he Manager dashboard int erface.
l Det ail orient ed.

l Familiarit y wit h XM L1 and JSON 2 dat a st ruct ure.

l Experience wit h Java-based soft ware t est ing t ools, such as Selenium Suit e, SahiPro, et c.
l Familiarit y wit h version cont rol syst ems, such as Git , SVN 3, et c.

l Experience wit h Issue & Project Tracking Soft ware, such as Jira.

1XML (Ext ensible Markup Language) is a markup language t hat defines a set of rules for encoding document s in a

format t hat is bot h human-readable and machine-readable.


2JSON (JavaScript Object Not at ion) is a synt ax for st oring and exchanging dat a and is used in Maest ro t o st ore

forms. If a Form Builder want s t o t ransfer t heir form t o anot her syst em, t hey can do so by using t he Download
JSON file but t on.
3Subversion (SVN) is a soft ware versioning and revision cont rol syst em.

Journey Applicat ion Test er - 918 -


Objectives and Goals of a Journey Application Tester
l Assess t he qualit y of t he applicat ion and provide feedback t o t he st akeholders.
l Provide a level of confidence t o management and t he developers t hat t he applicat ion will meet expect at ions.
l Ensure t he qualit y of development prior t o being released t o User Accept ance Test ing1 by running t est
cases.
l Re-t est cases during Syst em Test ing and UAT processes.

Next , learn about t he Analytics persona.

1User accept ance t est ing (UAT) is t he last phase of t he soft ware t est ing process. During UAT, act ual soft ware users

t est t he soft ware t o make sure it can handle required t asks in real-world scenarios, according t o specificat ions.

Journey Applicat ion Test er - 919 -


Journey Analytics User
Journey Platform | Analytics User

A Journey Analyt ics persona is responsible for ensuring t hat t he Temenos Journey Platform applicat ion is per-
forming t o an agreed upon set of Key Performance Indicat ors1 and t o ident ify current t rends and design fea-
t ures t hat can be used t o opt imize t he applicat ion using Journey Analytics and Journey Manager dashboard.

Prerequisite Skillset of Journey Analytics


l Underst and business needs and object ives.
l Define applicat ion-level met rics.

l Ext ract report s from Journey Analyt ics and Manager.


l Build syst ems t o t ransform raw dat a int o act ionable business insight s.
l Abilit y t o int erpret dat a and improve applicat ion performance.
l Keep abreast of indust ry t rends.
l Design and int erpret result s of A/B testing.

Objectives and Goals of Journey Analytics


l Ident ify areas of applicat ion opt imizat ion based on collect ed dat a.
l Confirm improvement s in applicat ion based on met rics.

Next , learn about t he Champion/System Owner persona.

1Key Performance Indicat or (KPI) is a measurable value t hat demonst rat es how effect ively a company is achieving

key business object ives. Organizat ions use KPIs t o evaluat e t heir success at reaching t arget s.

Journey Analyt ics User - 920 -


Journey Implementation/ Project M anager
Journey Platform | Implementation / Project Manager

A Journey Implement at ion/ Project Manager is responsible for t he successful implement at ion of an Temenos Jour-
ney Platform cust om applicat ion. They manage t he budget , resources, relat ionships and set up client s for long-
t erm success. In addit ion t o working wit h t he client , t hey work closely wit h solut ion archit ect s and coordinat e t he
IT and infrast ruct ure t eams, brand designers, int egrat ion specialist s, and developers t o ensure t hat t he defined
business requirement s mat ch t he funct ionalit y of t he applicat ion.

Exam ple t asks of a Journey Im plem ent at ion/ Project M anager include:
l Drive t he development work ensuring all resources are available, communicat ion lines are clear, and t ime-
frames are communicat ed and agreed upon.
l Communicat e wit h all st akeholders at various levels of t he organizat ion.
l Manage risks and issues of t he project , including issues associat ed wit h loading a new t ransact ion int o t he
syst em.

Prerequisite Skillset of a Journey Implementation/Project Manager


l Experience in a cust omer-facing t echnical project management persona wit h proven abilit y t o deliver on t ime
and on budget .
l Underst anding of soft ware development met hodologies, including Agile soft ware development 1.

l Bank experience eit her int ernally or as a vendor.


l Experience wit h project management met hodologies and t ools.

l Abilit y t o work t hrough problems independent ly and engage t he t eam as needed.


l Effect ive communicat ion and document at ion skills.
l PMI and CSM cert ificat ions desirable.

1Agile soft ware development is an approach t o soft ware development under which requirement s and solut ions

evolve t hrough t he collaborat ive effort of self-organizing and cross-funct ional t eams and t heir cust omer/ end user.

Journey Implement at ion/ Project Manager - 921 -


Objectives and Goals of a Journey Implementation/Project Manager
l Deliver on specific business value expect ed.
l Creat e professional services SOWs1.

l Advise client on t he best implement at ion met hodology and adjust t o deliver t he best cust omer out come.
Cont ribut e domain expert ise t o business discussions.
l Define new processes t o increase t eam efficiency and improve t he delivery cycle.
l Ensure t he project keeps t o t ime and budget const raint s.
l Ensure Qualit y Assurance checks are complet e.
l Ensure processes are followed and document at ion is maint ained.

Next , learn about t he Platform Developer persona.

1A st at ement of work (SoW) is a document rout inely employed in t he field of project management . It defines pro-

ject -specific act ivit ies, deliverables and t imelines for a vendor providing services t o t he client .

Journey Implement at ion/ Project Manager - 922 -


Journey Champion/ System Owner
Journey Platform | Champion / System Owner

A Journey Champion/ Syst em Owner is a client resource t hat recognizes t he value of t he Temenos Journey Platform
and already has a relat ionship wit h our sales t eam. They underst and t he business requirement s and can, at a high-
level, map t he requirement s t o capabilit ies of t he Journey plat form. This may be a t echnical or non-t echnical
resource. Their job is t o support t he Temenos t eam in t he presales phase as well as ot her divisions and decision
makers.

Prerequisite Skillset of a Journey Champion/System Owner


l Abilit y t o describe use-cases for t he Journey plat form.

l Abilit y t o describe – at a high-level - t he value proposit ion of t he Journey plat form.


l Able t o describe – at a high-level - t he t echnologies used in t he Journey plat form.
l Accesses t o decision makers.
l Effect ive communicat ion or a t hought leader for t echnology in t he company.

Objectives and Goals of a Journey Champion/System Owner


l Successful implement at ion of a Journey solut ion.
l Int roduce t he benefit s of t he plat form t o ot her members of t he company.

Next , learn about t he Form Builder persona.

Journey Champion/ Syst em Owner - 923 -


Journey System Administrator
Journey Platform | System Administrator

A Journey Syst em Administ rat or is responsible for t he deployment of applicat ions from St aging t o Product ion and
will work closely wit h t he Journey Syst em Manager/ DevOps persona.

Exam ple t asks of a Journey Syst em Adm inist rat or include:


l Deploy new Journey applicat ions.
l Set up and monit or daily alert s on t he St aging and Product ion environment s.
l Not ify t he business and ot her st akeholders of any issues t hat will affect regular operat ions such as planned
and unplanned out ages.

Prerequisite Skillset of a Journey System Administrator


l Journey Manager skills.
l Knowledge of Journey aut horing t ools.
l Excellent problem-solving skills.
l Good verbal and writ t en communicat ion skills.
l Out st anding cust omer service skills.
l Knowledge of cloud-based applicat ions.

Objectives and Goals of a Journey System Administrator


l Ensure t hat t he Journey plat form and t heir applicat ions are performing wit hin accept able paramet ers.
l Ensure t hat t he correct resources, based on t heir roles and t he environment (Dev, UAT, et c.), have access t o
t he syst em.
l Work wit h t he Journey Syst em Manager/ DevOps persona.

Next , learn about t he System Manager/DevOps persona.

Journey Syst em Administ rat or - 924 -


Journey System M anager/ DevOps
Journey Platform | System Manager / DevOps

A Journey Syst em Manager/ DevOps is responsible for t he management and maint enance of various Journey Man-
ager (Dev, UAT, et c.) servers. They will provision users, deploy applicat ions, receive not ificat ion of issues, and
provide int ernal support as well as liaison wit h Temenos support should any issues arise. They are also responsible
for t raining on t he day-t o-day usage of t he plat form (i.e. assist ing wit h t est ing, report s, and reading logs). The role
is t echnical in nat ure, but does not involve development ; however, t hey will need t o have a st rong underst anding
of t he Temenos Journey Platform and web applicat ions in general.

Exam ple t asks of a Journey Syst em M anager/ DevOps include:


l Responsible for governance and processes for t he syst em.
l Liaise wit h t he business st akeholder on new development s.
l Manager vendors.
l Approve request s for Temenos Assist support t ime t o be used.

Prerequisite Skillset of a System Manager/DevOps


l Underst and development life cycle and associat ed various environment s (Dev, UAT St aging, and Product ion)
l Knowledge of t he Journey plat form st ack and int erfaces.
l Underst anding of t he roles and permissions when providing access t o t he various environment s and product
int erfaces.
l Able t o navigat e t he Manager dashboard and set propert ies.

Objectives and Goals of a System Manager/DevOps


l Become t he single point of cont act for quest ions regarding t he cust om applicat ion and t he Journey plat form.
l Cult ivat e a relat ionship wit h Temenos.
l Ensure t he Operat ions t eam are following agreed monit oring and support processes.

Next , learn about t he Template Designer persona.

Journey Syst em Manager/ DevOps - 925 -


Journey Support Team
Journey Platform | Support

A Journey Support Team is a t echnical persona focused on t he maint enance of t he Temenos Journey Platform . This
includes monit oring syst em healt h, receiving and responding t o alert s, t roubleshoot ing by reading logs and
answering t echnical quest ions about t he plat form, and t he applicat ion(s) built on t he plat form. In addit ion t o
answering quest ions, t he Support Team will need t o diagnose hardware and soft ware fault s and solve t echnical
and applicat ion problems, eit her over t he phone or in person. They will also need t o liaison wit h ot her expert s on
t he plat form or applicat ion t o resolve or flag issues. The Support Team personamay also include producing pro-
cedural document at ion and relevant report s.

Exam ple t asks of a Journey Support Team include:


l At t end t o any support issues arising from regular monit oring or as report ed by t he business.
l Ensure implement at ion t eams are kept up t o dat e on any new releases or pat ches t hat need t o be applied t o
t he t est and development environment s.
l Provide support t o implement at ion t eams when required.

Prerequisite Skillset of the Support Team


l The abilit y t o t hink logically and possess a good memory of how t he plat form and applicat ion work.
l Effect ive list ening and quest ioning skills combined wit h t he abilit y t o int eract confident ly wit h client s t o est ab-
lish what t he problem is and explain or document t he solut ion.
l The abilit y t o work well in a t eam.

l St rong problem-solving skills and cust omer/ client focus.


l Depending on t he t echnical aspect of t heir persona - will t hey be support ing t he plat form and business users
of t he applicat ion or only t he business users - a background in comput er science, informat ion t echnology, or
experience working wit h soft ware and hardware, web-based applicat ions.

Objectives and Goals of a Support Team


l Assist users wit h Level 1 and Level 2 t ier support issues.
l Resolve support issues as per any support agreement .

Next , learn about t he System Administrator persona.

Journey Support Team - 926 -


Instructor-Led Training and eLearning overview
Journey Platform | Platform Developer | Form Builder | 5.1 & Higher

Temenos offers inst ruct or-led t raining and eLearning courses t o help furt her your knowledge of t he Journey Plat -
form.

Inst ruct or-Led Training and eLearning overview - 927 -


Instructor-Led Training ILT
Let our expert inst ruct ors t each you t he skills you need t o fully benefit from your invest ment . Training can be
offered face-t o-face or virt ually.

To book a course cont act Temenos Training or cont act your Account Manager.

Inst ruct or-Led Training ILT - 928 -


eLearning
Learn at your own pace at t he new consolidat ed Journey Platform resources website. There are a number of online
courses and videos available t o view. The eLearning courses cont ain t opics across t he Journey Plat form, each wit h a
number of modules. There are also exercises t hroughout t he courses t hat will allow you t o pract ice your skills.

We recommend t hat you view each course in order, following t he list ed order of t he modules. Aft er a few modules
you will be given an exercise which will allow you t o pract ice what you have learned.

If you do not have an account please cont act t he Journey Knowledge Team .

Available eLearning Courses

l NEW Upgrading t o Maest ro v17.10


l NEW Upgrading t o Maest ro v18.05
l NEW Upgrading t o Journey Analyt ics (formerly Insight s) v18.05
l Maest ro v5.1
l Int roduct ion t o Maest ro Form Builder 1
l Int roduct ion t o Maest ro Form Builder 2
l Maest ro Form Builder Script ing
l Journey Manager v5.1
l Get t ing St art ed wit h Journey Manager
l Configure a Maest ro Form in Journey Manager

l Submission Management Form Dat a Configurat ion


l Collaborat ion Jobs
l Journey Analyt ics (formerly Insight s)
l Composer

eLearning - 929 -
eLearning Exercises
Exercises for eLearning courses can be found here.

Version 5.1

l Maest ro v5.1 Exercises


l Journey Manager v5.1 Exercises

Version 17.10

l Maest ro v17.10 Exercises

eLearning Exercises - 930 -


Help
For help view t he Learning Center Help Guide.

If you have any quest ions, issues or feedback please feel free t o cont act t he Journey Knowledge Team.

Help - 931 -
Learning Center Help Guide
Journey Platform | Platform Developer | Form Builder | v5.1 & Higher

The Temenos Learning Center has been migrat ed t o our new consolidat ed Journey Platform resources website.
This new consolidat ed websit e cont ains all our exist ing online t raining videos on product s wit hin t he Journey Plat -
form.

New consolidated Journey Platform resources website


To request access t o all t he courses in t he new consolidat ed Journey Platform resources website send your
request t o t he Journey Knowledge Team . Once your access has been grant ed you will be able t o access all t he
online learning mat erials. A video library and extensive product documentation wit h product overviews are also
available from t he Journey Platform resources website for self paced explorat ion.

Access the online courses at the new website - journey.temenos.com


1. Simply visit t he new consolidat ed Journey Platform resources website, or Sign In if you already have your
user credent ials.
2. Go t o Learn on t he main menu at t he t op of t he page t o view all courses.
3. If you don't see t he Learn menu, send a request for access via t he websit e, or email t he Journey Knowledge
Team.
4. Inst ruct ions on how t o t ake a course can be found in t he Learn art icle.

Access the online courses at the original location - learning.avoka.com


1. Login t o learning.avoka.com .
2. Select t he Courses menu or t he Courses t ile on t he home page.

Learning Cent er Help Guide - 932 -


3. Click Open t o view addit ional t opics and/ or courses.

4. Cont inue t o Open t he t opics and/ or courses, unt il you are viewing a course list .
5. Once you are inside t he course, you will see a list of videos available t o view.

Learning Cent er Help Guide - 933 -


6. Click Launch t o view t he video. This will open a pop up window which will aut omat ically begin t o play t he
online t raining video.

Learning Cent er Help Guide - 934 -


Navigate through the Temenos Learning Center
Home page and menu bar

St at us icon

Select t he st at us icon t o display t he correct st at us of t he course and/ or online video.

Course name

Select t he course name or video name t o display a descript ion.

Launch video

Select Launch t o open a pop up window which will aut omat ically begin t o play t he online t raining video.

Learning Cent er Help Guide - 935 -


Learning Cent er Help Guide - 936 -
eLearning Exercises for M aestro v17.10
Journey Platform | Platform Developer | Form Builder | v5.1 & Higher

View t he eLearning courses available from Learn on t he main menu of t he new consolidat ed Journey Platform
resources website.

We recommend t hat you view each course in order, following t he list ed order of t he modules. Aft er a few modules
you will be given an exercise which will allow you t o pract ice what you have learned. We st rongly recommend you
use t hese exercises t o complet e your t raining.

Pre-requisite
l First you will need t o import t he exercise files used for t he Maest ro 17.10 t raining exercises. Refer t o Setup
the Exercise Files.

eLearning Exercises for Maestro v17.10


Use t he links below t o jump direct ly t o each exercise. Please follow t he inst ruct ions for each exercise t o ident ify
which resources and asset s you'll be using.

Upgrade t o Transact Release 17.10:

l Setup the Exercise Files

What s new?

Maest ro ID Management :

l Exercise - ID Management
l Exercise - Duplicate IDs

Impact Analysis:

l Exercise - Impact Analysis

Ent it ies:

l Exercise - Create an Entity (ID field)


l Exercise - Create an Entity (Entity panel)
l Exercise - Delete an Entity
l Exercise - Assign an Entity to multiple items

Semant ic Versioning:

l Exercise - Semantic Versioning

eLearning Exercises for Maest ro v17.10 - 937 -


Compat ibilit y Mode:

l Exercise - Upgrade a project

Help
For help using t he Learning Cent er refer t o t he Learning Center Help Guide.

If you have any quest ions, issues or feedback please feel free t o cont act t he Journey Knowledge Team.

eLearning Exercises for Maest ro v17.10 - 938 -


Exercise Setup - Importing the M aestro v17.10 Exercise Files
Journey Platform | Platform Developer | Form Builder | v5.1 & Higher

Follow t he st eps below t o import t he Maest ro Project Exercise files.

l Use t he Import Project but t on t o import Version 17.10 Project s or lat er.

l For older project s export ed from a 5.1.x environment use t he Import Legacy Project but t on.

Step 1: Download the Exercise Project


If you haven't done so already, download t he Maest ro Exercise Project .

1. For Version 17.10 project s or lat er, click Maestro_Project_Upgrade_17.10_20180424 t o download t he exer-
cise project (zipped folder).
2. For older project s export ed from a 5.1.x environment , click Maestro_Project_Legacy51_20180424 t o down-
load t he exercise project (zipped folder).
3. Leave t his file in t he Downloads folder or move it t o a different locat ion. Just remember, you’ll need t o nav-
igat e t o t his file in t he next st ep t o import it int o Maest ro.

Step 2: Navigate to the Maestro Organization


Login t o Maest ro and navigat e t o t he Organizat ion.

1. Display t he Maest ro web page.


2. Login using your credent ials.

3. Expand Home (in Navigat or panel).


4. Select your Organizat ion.

Step 3: Import Project


Import t he exercise project .

1. Click t he Import Project but t on (17.10 or lat er) or Import Legacy Project but t on (5.1.x).
2. Ent er Upgrade t o Transact Release 17.10 for t he project name.
3. Click Import .
4. Navigat e t o where t he downloaded Maest ro Project (zipped folder) is saved.

Exercise Set up - Import ing t he Maest ro v17.10 Exercise Files - 939 -


5. Select t he project and click Open

Step 4: Set the Default Initial Version and Default Template


1. Import ant : make sure t he Project name is select ed (i.e. Upgrade t o Transact Release 17.10).

2. Click t he Project Det ails t ab (t op right ).


3. Ent er 1.0-develop as t he Default Init ial Version.
4. Select Training Templat e for t he Default Templat e.
5. Click Save t o finish

Once you’ve set up t he project , you can access all t he form, t emplat e and component asset s.

Exercise Set up - Import ing t he Maest ro v17.10 Exercise Files - 940 -


Assign an Entity to M ultiple Items Exercise v17.10
Journey Platform | Form Builder | v5.1 & Higher

You can assign an Ent it y t o mult iple it ems at once using t he St ruct ure panel.

Ext ra help is available at t he end of t his exercise if you get st uck.

Step 1: Add a new Section and Components


1. Display Page Two of t he ‘Exercise – Ent it ies’ form

2. Add a new sect ion t o t he form and call it HomeAddress.


3. Add t he following ‘t ext field’ component s t o ‘HomeAddress’:

l St reet Number
l St reet Name
l Suburb
l Post Code
l Count ry
4. From t he Ent it ies panel, confirm t he new component s are ‘Not Assigned’ t o any Ent it ies

Step 2: Assign an Entity to multiple items


1. To relat e an Ent it y t o mult iple component s, you need t o assign t he Ent it y t o t he sect ion first , i.e. where all
t he component s are locat ed.
2. Make sure t he ‘Home Address’ sect ion is select ed.
3. Use t he ID propert y field t o assign t he locat ion Ent it y t o t he Sect ion.

4. Display t he St ruct ure panel > right -click t he homeAddress sect ion and choose Apply Ent it y Pat h t o Chil-
dren .
5. From t he ‘Ent it ies’ panel, confirm all component s are now relat ed t o t he ‘locat ion’ Ent it y

6. Select each component in t he form and confirm t he IDs have all been assigned t o t he locat ion Ent it y.
7. Click Save , t hen close t he form (Browser Tab).

Extra Help
Download t he Exercise PDF for more det ailed inst ruct ions t o help you complet e t he exercise.

Assign an Ent it y t o Mult iple It ems Exercise v17.10 - 941 -


Create an Entity in the ID Field Exercise v17.10
Journey Platform | Form Builder | v5.1 & Higher

This exercise will demonst rat e how t o creat e an ent it y direct ly in t he ID field.

Ext ra help is available at t he end of t his exercise if you get st uck.

Step 1: Create a Form


1. Creat e a new form and ent er t he follow det ails:

l Form Name: Exercise - Ent it ies


l Descript ion: This form is t o demonst rat e how t o work wit h ent it ies

l Templat e: Training Templat e


2. Click Creat e .

Step 2: Create an Entity


1. Add a new ‘Text Field’ int o ‘About You’
2. To creat e a new Ent it y, ent er ‘applicant ’ followed by an underscore, ‘_'

Aft er t he underscore (_) an inline warning displays ‘An Ent it y called applicant will be creat ed’

3. Ent er ‘First Name’ as t he ID (t hen TAB or click away)

The Label only displays ‘First Name’

4. Display t he ‘Ent it ies’ panel and confirm t he ‘applicant ’ Ent it y has one relat ed component (i.e. ‘First Name’)

5. Click Save .

Step 3: Assign an Entity


1. Add a new ‘Text Field’ component below ‘First Name’
2. Ent er t he first few let t ers of ‘applicant ’ in t he ID propert y field, i.e. ‘app’

Any mat ching Ent it ies will display in dropdown

3. Select t he ‘applicant ’ Ent it y


4. Ent er ‘Last Name’ (aft er underscore) for t he ID

Creat e an Ent it y in t he ID Field Exercise v17.10 - 942 -


Not e: t he label only displays ‘Last Name’

5. Display t he Ent it ies panel and confirm t he applicant Ent it y now has t wo relat ed component s.

Step 4: Create a nested Entity


1. Add anot her new ‘Text Field’ below ‘Last Name’
2. Ent er ‘app’ in t he ID propert y field and select t he ‘applicant ’ Ent it y
3. Ent er ‘work_’ as t he new nest ed Ent it y, e.g. ‘applicant _work_’

Aft er t he second underscore (_) an inline warning displays ‘An Ent it y called work will be creat ed’

4. Ent er ‘Email’ for t he ID, e.g. ‘applicant _work_Email’


5. Press Tab or click away

Label only displays ‘Email’

6. Display t he Ent it ies panel and confirm t he new nest ed work Ent it y wit h one relat ed component .

7. Click Save .

Exist ing IDs wit h an underscore will not aut omat ically cause Ent it ies t o be creat ed. Ent it ies are only creat ed
when you modify an exist ing ID.
Any underscores followed by one or more digit s (like suffixes applied by aut o-generat ed IDs) are also ignored.

Extra Help
Download t he Exercise PDF for more det ailed inst ruct ions t o help you complet e t he exercise.

Creat e an Ent it y in t he ID Field Exercise v17.10 - 943 -


Create an Entity in the Entity Panel Exercise v17.10
Journey Platform | Form Builder | v5.1 & Higher

Creat e a new Ent it y in t he Ent it ies panel by right -clicking where you want t he new Ent it y t o be placed.

Ext ra help is available at t he end of t his exercise if you get st uck.

Step 1: Create an Entity


1. Make sure t he Exercise – Ent it ies form is displayed in Design view.
2. From t he Ent it ies panel, right -click t he ‘Ent it ies’ icon and choose ‘Add Ent it y’
3. Ent er ‘locat ion’ for t he Ent it y name and click Save
4. Confirm t he new locat ion Ent it y now appears in t he panel.

Step 2: Create a nested Entity


1. From t he Ent it ies panel, right -click t he ‘locat ion’ Ent it y and choose ‘Add Ent it y’
2. Ent er phone for t he new Ent it y name and click Save.
3. Expand t he locat ion Ent it y t o display t he new nest ed phone Ent it y.
4. Add a new ‘Text Field’ component t o t he form below ‘Email’
5. Ent er t he ID as ‘HomePhone’ and relat e t his component t o t he nest ed ‘phone’ Ent it y
6. From t he ‘Ent it ies’ panel, confirm ‘Home Phone’ is relat ed t o t he nest ed ‘phone’ Ent it y

7. Click Save .

Extra Help
Download t he Exercise PDF for more det ailed inst ruct ions t o help you complet e t he exercise.

Creat e an Ent it y in t he Ent it y Panel Exercise v17.10 - 944 -


Delete an Entity Exercise v17.10
Journey Platform | Form Builder | v5.1 & Higher

Not e t hat you can’t delet e an Ent it y if any component IDs use t hat Ent it y.

Ext ra help is available at t he end of t his exercise if you get st uck.

Step 1: Delete an Entity


1. To delet e t he ‘phone’ Ent it y, you must delet e or re-assign any relat ed component s
2. For t his exercise, delet e ‘Home Phone’ on t he form
3. From t he Ent it ies panel, confirm t he ‘phone’ Ent it y no longer has any relat ed component IDs
4. Right -click t he phone Ent it y and choose Delet e Ent it y.

5. Click OK t o confirm.
6. Click Save .

Extra Help
Download t he Exercise PDF for more det ailed inst ruct ions t o help you complet e t he exercise.

Delet e an Ent it y Exercise v17.10 - 945 -


Duplicate IDs Exercise v17.10
Journey Platform | Form Builder | v5.1 & Higher

This exercise will demonst rat e t he new duplicat e ID funct ionalit y. You will:

1. Creat e a duplicat e ID and Review


2. Creat e a duplicat e ID and Accept

Ext ra help is available at t he end of t his exercise if you get st uck.

Step 1: Add a component with a duplicate ID and Review


1. Make sure t he form you creat ed for t he ID Management exercise is open.

2. Add a new Text Field beneat h First Name.


3. Updat e t he ID t o FN ame .

This ID was deliberat ely used t o creat e a duplicat e ID.

4. An inline warning confirms Value generat es t o a duplicat e ID.

IDs are case sensit ive - if you ent er anyt hing ot her t han FN ame , t he inline warning will not display.

5. At t his point , you can eit her modify t he ID direct ly (in t he propert y field) ... or (click away t o) Review or
Accept t he updat e.
6. For t his example, click Review and updat e t he ID t o M iddleN ame .

Modifying t he ID means it doesn't cause a duplicat e.

Step 2: Add a component with a duplicate ID and Accept


1. Add anot her new Text Field beneat h ‘Middle Name’.
2. Updat e t he ID t o M iddleN ame and click away.
3. For t his example, click Accept in t he popup.

Choosing Accept appends a suffix t o t he ID, i.e. middleName_1.

4. Click Save and close t he form (i.e. t he browser t ab).

Duplicat e IDs Exercise v17.10 - 946 -


If you ‘Accept ’ a duplicat e ID, ‘XML Name’ and ‘Full Pat h’ (‘Int egrat ion’ panel) keep t heir default names (i.e. ‘Tex-
t Field’). To updat e t hese propert ies, uncheck ‘Use Aut o-generat ed XML Name’ and manually updat e t he ‘XML
Name’.

Extra Help
Download t he Exercise PDF for more det ailed inst ruct ions t o help you complet e t he exercise.

Duplicat e IDs Exercise v17.10 - 947 -


ID M anagement Exercise v17.10
Journey Platform | Form Builder | v5.1 & Higher

This exercise will demonst rat e t he updat ed funct ionalit y for component IDs. You will:

l creat e a new form


l add a new component
l updat e t he component ID

Ext ra help is available at t he end of t his exercise if you get st uck.

Step 1: Create a new form


1. Creat e a new form using t he following det ails:

l Form Name: Exercise - ID Management


l Descript ion: This form is t o demonst rat e t he new ID feat ures
l Templat e: Training Templat e

Step 2: Add a new Text Field component


1. Add a new Text Field int o t he About You sect ion.

The init ial focus is set t o ID Propert y field.

Step 3: Update the Text Field component


1. Updat e t he ID Propert y value t o First N ame .

The Label Propert y has aut omat ically updat ed t o First N ame .

2. Display t he Int egrat ion pane.

The XML Name and Full Pat h propert ies have updat ed t o t he new ID.

3. Display t he Propert ies pane and updat e t he ID t o FN ame .

The ‘Label’ remains unchanged and only updat es when t he init ial ‘ID’ is ent ered.

4. Display t he Int egrat ion pane.

ID Management Exercise v17.10 - 948 -


‘XML Name’ and ‘Full Pat h’ have updat ed t o t he lat est ‘ID’ (i.e. ‘FName’).

5. Click Save .

If ‘Use Aut o-generat ed XML Name’ is not checked (‘Int egrat ion’ panel), ‘XML Name’ and ‘Full Pat h’ won’t
updat e if t he ID changes and will need t o be manually updat ed.

Extra Help
Download t he Exercise PDF for more det ailed inst ruct ions t o help you complet e t he exercise.

ID Management Exercise v17.10 - 949 -


Impact Analysis Exercise v17.10
Journey Platform | Form Builder | v5.1 & Higher

The following exercise will involve t he Order form.

Ext ra help is available at t he end of t his exercise if you get st uck.

Step 1: Open the Order form


1. Open t he Order Form .

Step 2: Review the current references


1. Right -click t he First Name t ext field and choose Show References t o first N ame .
2. Confirm one exist ing reference t o t he FullName it em.
3. Close t he dialog.

Step 3: Add a new Text Field that references First Name


1. Display Page Two of t he form.
2. Add a new Text Field and updat e t he ID t o First N ameP2 .
3. Updat e t he Label t o First N ame .
4. Wit h t he new Text Field select ed, click Creat e Rule .
5. Click Script (under Calculat ion).
6. In t he dialog, expand Page One, t hen expand t he first Sect ion.

7. Double-click First N ame t o set up a reference t o t his component .


8. Click Save t hen save t he form.
9. Preview t he form, t hen ent er a sample First Name on Page One, t hen confirm it displays in First Name on
Page Two.
10. Swit ch back t o Design view.

Step 4: Review the updated references


1. Right -click First N ame on Page One and choose Show References t o First Name.
2. Confirm a second reference t o first NameP2 (on Page Two) now exist s.

3. Close t he dialog.
4. Save t he form, t hen close it (i.e. t he Browser Tab).

Extra Help
Download t he Exercise PDF for more det ailed inst ruct ions t o help you complet e t he exercise.

Impact Analysis Exercise v17.10 - 950 -


Semantic Versioning Exercise v17.10
Journey Platform | Form Builder | v5.1 & Higher

This exercise will demonst rat e how t o creat e mult iple semant ic versions of a form.

Ext ra help is available at t he end of t his exercise if you get st uck.

Step 1: Update the 1.0-develop version


1. Select t he Exercise - Ent it ies form.
2. Add a new t ext field t o ‘Get t ing St art ed’ called ‘PhoneNumber’(below 'Email')

3. Click Save and Close t he form (Browser Tab).

Step 2: Create a Tagged version (based on 1.0-develop)


1. Select t he Exercise - Ent it ies form in t he Navigat or panel.
2. Click t he N ew Tag but t on.
3. Confirm t he new Semant ic Version number is 1.0.1 .
4. Ent er t he Descript ion as: This is t he first t agged version.

5. Click Creat e .
6. Expand t he Exercise – Ent it ies form in t he Navigat or panel and confirm t he new t agged 1.0.1 version is dis-
played.

Step 3: Open the Tagged version


1. Select t he Exercise - Ent it ies form in t he Navigat or panel.
2. Select t he 1.0.1 t agged version (not e t he t ick icon).

Not e: t he Palet t e panel is empt y, i.e. you can’t add or delet e component s

3. Close t he form (Browser Tab).

Step 4: Update the 1.0-develop version


Remember: all changes and updat es are complet ed in 1.0-develop.

1. Open t he 1.0-develop version of t he Exercise - Ent it ies form.


2. Add a new t ext field t o t he Get t ing St art ed sect ion called FaxNumber.

3. Click Save and Close t he form (Browser Tab).

Semant ic Versioning Exercise v17.10 - 951 -


Step 5: Create another Tagged version (based on 1.0-develop)
1. Select t he Exercise - Ent it ies form in t he Navigat or panel.
2. Select 1.0-develop and click N ew Tag.
3. Confirm t he new Semant ic Version number is 1.0.2 .
4. Ent er t he Descript ion as: This is t he second t agged version.

5. Click Creat e .
6. Expand t he Exercise – Ent it ies form t he Navigat or panel and confirm t he t agged 1.0.2 version is displayed.

Extra Help
Download t he Exercise PDF for more det ailed inst ruct ions t o help you complet e t he exercise.

Semant ic Versioning Exercise v17.10 - 952 -


Upgrade a Project Exercise v17.10
Journey Platform | Form Builder | v5.1 & Higher

You can upgrade an exist ing project t o t he lat est Maest ro release from t he Management Dashboard.

Ext ra help is available at t he end of t his exercise if you get st uck.

Step 1: Import a Legacy project


To upgrade a project , you’ll need t o add a legacy project t o your organizat ion first .

1. If you haven't done so already, download t he sample Legacy Project .


2. Navigat e t o t he Maest ro webpage and select t he Organizat ion

3. Click Import Legacy Project .


4. Name t he project Legacy Project and click Import .
5. Navigat e t o t he locat ion of t he downloaded project .

6. Select t he project and click Open .


7. Confirm t he import ed project now appears under your organizat ion.

Step 2: Upgrade the project


1. Select Legacy Project in t he Navigat or.
2. Click t he Project Det ails t ab.
3. Updat e t he Release Version t o 17.10.0 .

When you select a new version, a warning message confirms you can’t change t he release version back t o a
previous version once t he Project Det ails are saved.

4. Click OK in t he warning message, t hen click Save .


5. The project has now been upgraded.

Not e : The Release Version dropdown no longer displays any previous release versions.

Extra Help
Download t he Exercise PDF for more det ailed inst ruct ions t o help you complet e t he exercise.

Upgrade a Project Exercise v17.10 - 953 -


eLearning Exercises for M aestro v5.1
Journey Platform | Platform Developer | Form Builder | v5.1 & Higher

View t he eLearning courses available from Learn on t he main menu of t he new consolidat ed Journey Platform
resources website.

We recommend t hat you view each course in order, following t he list ed order of t he modules. Aft er a few modules
you will be given an exercise which will allow you t o pract ice what you have learned. We st rongly recommend you
use t hese exercises t o complet e your t raining.

Pre-requisite
l First you will need t o import t he exercise files used for t he Maest ro 5.1 exercises. Refer t o Exercise Setup -
Importing the Maestro Exercise Files.

eLearning Exercises for Maestro v5.1


Use t he following links t o view t he exercise guides. Please follow t he inst ruct ions in each guide t o ident ify t he
resources and asset s you’ll need t o use.

Int roduct ion t o Maest ro 5.1:

l Compatibility Mode Exercise


l Create a New Form Exercise
l Pages and Sections Exercise

Form Builder 1:

l Layout Exercise
l Creating Rules (without Scripting) Exercise
l Repeating and Shared Components Exercise

Form Builder 2:

l Creating Shared Components Exercise


l Two Level Navigation Exercise

Form Builder Script ing:

l Calculation Rules Exercise


l Creating Rules Exercise
l Validation Rules Exercise

eLearning Exercises for Maest ro v5.1 - 954 -


Help
For help using t he Learning Cent er refer t o t he Learning Center Help Guide.

If you have any quest ions, issues or feedback please feel free t o cont act t he Journey Knowledge Team .

eLearning Exercises for Maest ro v5.1 - 955 -


Exercise Setup - Importing the M aestro v5.1 Exercise Files
Journey Platform | Platform Developer | Form Builder | v5.1 & Higher

This guide explains how t o import t he Maest ro exercise files as a Maest ro project . This project cont ains all t he
required forms, t emplat es, component s and st yles needed t o complet e t he exercises.

You can also access a t raining module on t he Avoka LMS t hat explains how t o import and export in Maest ro. You
may want t o view t his module before import ing t he exercise project .

Step 1: Identify the Training Environment


1. Ident ify which of t he following best describes t he Training Environment you will use t o complet e t he Maest ro
5.1 t raining.

Training Environment Uses Maestro version Download… Import Type

elear ning.avoka.com 17.10 or later Version 2018.03.08 Impor t Pr oject

Your company 17.10 or later Version 2018.03.08 Impor t Pr oject

Your company 5.1.x or ear lier Version 2017.06.16 Impor t Pr oject

+ Version 2017.06.16: was export ed from Maest ro 5.1.x environment


+ Version 2018.03.08: was export ed from Maest ro 17.10 (or lat er)

Step 2: Download the Exercise Project


The file t o be downloaded is a zipped folder t hat cont ains t he Maest ro t raining exercise project .

1. Click on t he required download link above t o download t he Exercise Project t o your PC.

2. Leave t his file in t he Downloads folder or move it t o a different locat ion. Just remember, you’ll need t o nav-
igat e t o t his file in t he next st ep t o import it int o Maest ro.

Step 3 Import the Exercise Project


Once you’ve select ed t he Organizat ion, you can import a project int o Maest ro.

1. Login t o Maest ro.

2. Expand Home (in t he Navigat or panel).


3. Click on your Organizat ion .

Exercise Set up - Import ing t he Maest ro v5.1 Exercise Files - 956 -


4. Click Import Project t o import t he Maest ro Project .
5. Ent er M aest ro Online Training Exercises for t he name of t he project you’re import ing.
6. Click Import .
7. Navigat e t o and select t he Maest ro Exercise Project zipped folder you downloaded.

8. Click Open .

Result
Aft er import ing t he project you’ll have access t o t he exercise forms, t emplat es and component s.

Optional Step 4 Importing Legacy Projects


Maest ro offers an addit ional import opt ion for project s creat ed and export ed from legacy (or previous) versions of
Maest ro.

A project is considered Legacy if it was creat ed and export ed from any version of Maest ro prior t o v17.10. The
opt ion t o Import Legacy Project s is only available t o Maest ro users assigned t he M aest ro Sit e Administ rat or
Role. If you need t o import a legacy project , speak t o your Maest ro account manager.

Exercise Set up - Import ing t he Maest ro v5.1 Exercise Files - 957 -


Step 5 Update Release Version
Once you’ve import ed t he Exercise Project , you may need t o updat e t he Default Init ial Version and assign a Release
Version (if required) in t he Project Det ails.

Assigning t he Release Version associat es t he version of Maest ro used t o access t he forms in your import ed Maes-
t ro project .

1. Select t he import ed project in t he N avigat or panel.

2. Click t he Project Det ails t ab.

3. Ent er 1.0-develop for t he Default Init ial Version .

For more informat ion on t he Default Init ial Version see Form Versions.

4. Select 5.1.4 (or t he lat est available version beginning 5.1.x) for t he Release Version.

Release Versions for Maest ro Project s prior t o v5.1 (i.e. v5.0) were named using a 1.x.x naming convent ion. For
Maest ro 5.1 project s, t he Release Version followed a 5.x.x. naming convent ion. St art ing wit h t he v17.10
release, all Release Versions are based on a Year.Mont h naming convent ion, e.g. 17.10 = 2017 Oct ober.

5. Click Save .

Exercise Set up - Import ing t he Maest ro v5.1 Exercise Files - 958 -


The dat e a Maest ro Project is export ed can be found on t he Project Det ails t ab, in t he Descript ion Field (as
long as it ’s not been changed).

Any Maest ro Project s export ed prior t o 2016.12.22 won’t display a dat e in t he Descript ion field.

Inst ead, t he export dat e can be found at t he end of t he zipped folder filename:

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Import ing a Project

When you import a project , t hat includes all t he resources and asset s wit hin t he project , e.g. t he forms, t emplat es,
component s, st yles, and libraries et c.

To import a project , you need t o have t he Maest ro Organizat ion select ed first .

Once you login t o Maest ro, expand Home, t hen select t he Organizat ion in t he Navigat or panel (left side of t he win-
dow).

Once you select t he Organizat ion, a list of all t he project s displays on t he right .

The Import Project but t on is sit uat ed just above t he list .

Exercise Set up - Import ing t he Maest ro v5.1 Exercise Files - 959 -


Use Import Legacy Project for Project s export ed from Maest ro 5.1.x or earlier.

In t he dialog, you must ent er a name for t he new project - t hen click Import .

For example, we use M aest ro Online Training Exercises for t he name.

Click Import , t hen navigat e t o t he required Maest ro Exercise project .

Once select ed you can click Open and t he project will be import ed t o your Maest ro Organizat ion.

Select t he project from t he Navigat or on t he left side of t he window.

Select t he Project Det ails t ab.

Ent er a Default Init ial Version .

Exercise Set up - Import ing t he Maest ro v5.1 Exercise Files - 960 -


Expand t he Release Version dropdown and select t he appropriat e release version t o apply t o t he project .

Click Save .

Exercise Set up - Import ing t he Maest ro v5.1 Exercise Files - 961 -


Calculation Rules Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing rules. During t his exercise you will creat e a new form
and add component s. You will t hen creat e rules on t he added component s.

Do your best t o follow t he informat ion provided and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he M aest ro Exercise Project : M aest ro Training Exer-
cises v5.1 > Calculat ion Rules Finish . If you have not already import ed t he Maest ro Exercise Project please
visit Exercise Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1 Create a New Form


Creat e a new form using t he det ails provided below.

1. Expand t he Organizat ion .


2. Expand t he Project .
3. Select Forms.
4. Click Creat e Form .
5. Ent er det ails about t he form:

l Name: Order Form


l New Version: 1.0-develop
(should be pre-populat ed if Default Init ial Version has been set up in Project Det ails)
l Descript ion: This form is t o pract ice creat ing calculat ion rules.
l Templat e: Exercise Templat e

6. Click Creat e .

Step 2 Add Components to Page One


Add component s t o Page One so your form resembles t he image below.

Calculat ion Rules Exercise v5.1 - 962 -


Click Save .

Step 3 Populate a Component Based on Entered Data


Populat e t he Full N ame component based on a script t hat concat enat es t he dat a ent ered in First N ame and
Last N ame .

Add a Read Only rule t o Full N ame so t he populat ed dat a cannot be changed.

Preview t he form t o check t he calculat ion rules.

Click Save .

Calculat ion Rules Exercise v5.1 - 963 -


Step 4 Add Show if Rules
Add Show If rules t o t he Phone N umber , Email Address and Address block based on t he preferred cont act
met hod select ed.

Right -click t he appropriat e component s on t he left side of t he Creat e Rule window t o creat e t he required Show if
script s (see t he example below).

Save your form.

Preview t he form t o check t he calculat ion rules.

Step 5 Change the Clear Hidden Data Option


Change t he Clear hidden dat a opt ion for each of t he cont act det ail component s so t hat when t hey are hidden,
any dat a previously ent ered in t he field is cleared immediat ely.

When you’ve changed t he Hidden Dat a opt ions, Save your form t hen click Preview t o t est t he form.

Click Save .

Step 6 Add an Order Details Section to the Form


Add a new sect ion below t he About You sect ion. Add component s so t he new sect ion resembles t he image below.

Calculat ion Rules Exercise v5.1 - 964 -


Use t he Decimal Field component for Price , It em Tot al, Sub-Tot al and Tot al Due and set t he decimal fields t o
2 decimal places.

Click Save .

Step 7 Add a Calculation Rule to the Item Total


Creat e a calculat ion rule t hat mult iples Price by Quant it y .

Add a Read Only rule t o It em Tot al so t he user cannot change t he calculat ed value.

Click Save .

Preview t he form t o check t he calculat ion rules.

Step 8: Add a Calculation Rule to the Sub-Total Component


Creat e a calculat ion rule t hat sums t he It em Tot als for each repeat .

Calculat ion Rules Exercise v5.1 - 965 -


Add a Read Only rule so t hat t he user cannot change t he calculat ed value.

Click Save .

Preview t he form t o check t he calculat ion rules.

Step 9: Add a Calculation Rule to the Total Due Component


Creat e a calculat ion rule t hat includes t he Sub-Tot al mult iplied by t he credit card processing fee if t he checkbox is
select ed.

Add a Read Only rule so t hat t he user cannot change t he calculat ed value.

Click Save .

Preview t he form and check t he calculat ion rules.

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Creat e a Show If Rule


Select t he component whose visibilit y is condit ional (i.e. visible or not visible).

Click Creat e Rule from t he Rules sect ion (Propert ies panel).

Select Show If from t he Creat e Rule window.

Calculat ion Rules Exercise v5.1 - 966 -


Right -click t he component t hat det ermines if a component is shown on t he form

Choose Select ed opt ion .

Nominat e t he mat ching Opt ion (e.g. Phone) and click OK.

The script is added t o t he Creat e Rule window.

Calculat ion Rules Exercise v5.1 - 967 -


Com bine ent ered dat a int o a com ponent
Select t he component where t he dat a will be populat ed.

Click Creat e Rule and select Script .

Double-click t he component you want t o add t o t he script , e.g. double-click First N ame t o add dat a.first N ame
t o t he script window.

Ent er a plus sign bet ween t he component s you want t o combine.

Any spaces or ot her charact ers t o include in t he script must be wrapped bet ween quot at ion marks (“).

Double-click t he next component t o add t o t he script (see example below).

Clear Hidden Dat a Im m ediat ely


Select t he component .

Select t he Dat a t ab, expand Hidden Dat a and choose Immediat ely from t he opt ions.

Calculat ion Rules Exercise v5.1 - 968 -


Creat e a M at hem at ical Calculat ion Rule
Select t he component t hat will cont ain t he calculat ion.

Click Creat e Rule t hen select Script .

Double-click any component s on t he left -side of t he window t o add t hem t o t he script window (on t he right ).

Insert t he required calculat ion symbols, e.g. * / + -

The script is added t o t he window.

Creat e a Calculat ion Rule for Repeat ed It em s


Select t he component t hat will cont ain t he calculat ion.

Click Creat e Rule t hen select Script .

Expand t he Repeat ing Block Templat e , t hen expand Cont ent .

Expand Repeat ed Cont ent .

Right -click t he component you want t o t ot al and select Get sum of repeat ed dat a .

Calculat ion Rules Exercise v5.1 - 969 -


The script is added t o t he window.

Calculat ion Rules Exercise v5.1 - 970 -


Compatibility M ode Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills in upgrading an exist ing project t o Maest ro 5.1. During t his exer-
cise, you will import a new project int o your organizat ion and t hen change t he release version t o Maest ro 5.1.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

If you have not already import ed t he Maest ro Exercise Project please visit Exercise Setup - Importing the Maestro
Exercise Files for more informat ion.

Step 1: Import Compatibility Mode Project


This exercise uses a different project t o t he one downloaded in t he Exercise Set up Guide and will only be used for
t his exercise.

Ident ify which of t he following best describes t he Training Environment you will use t o complet e t his exercise and
download t he appropriat e project version.

Training Environment Uses Maestro version Download… Import Type

elear ning.avoka.com 17.10 or later Ver sion 2018.08.03 Impor t Pr oject

Your company 17.10 or later Ver sion 2018.08.03 Impor t Pr oject

Your company 5.1.x or ear lier Ver sion 2017.06.01 Impor t Pr oject

Once t he project is downloaded, import t he project int o your Maest ro organizat ion.

1. Select your Organizat ion t hen click Import Project .


l Name: Compat ibilit y M ode
2. Select your project and click Open .
3. The new project is displayed in your select ed Organizat ion .

Compat ibilit y Mode Exercise v5.1 - 971 -


Step 2: Update the Project to Maestro 5.1
Updat e t he project t o Maest ro 5.1 by changing t he Release Version dropdown on t he Project Det ails t ab.

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Im port project
Select t he Organizat ion from t he Navigat or panel.

Click t he Import Project but t on.

Ent er a Name for t he new project , t hen click Import .

Select t he project you want t o import and click Open.

The new project will be creat ed and displayed under your Organizat ion.

Compat ibilit y Mode Exercise v5.1 - 972 -


Change Release Version
Select t he project from t he Navigat or panel, t hen select t he Project Det ails t ab.

Use t he Release Version dropdown t o select 5.1.4.

This will associat e t he 5.1 version of Maest ro t o access t he forms in your compat ibilit y project .

When you select a lat er version from t he dropdown a warning message confirms t hat once you upgrade you can’t
change back t o a previous release version.

Click OK.

Click Save t o apply your changes.

You may also need t o ent er a Default Init ial Version before saving, i.e. 1.0-develop

Compat ibilit y Mode Exercise v5.1 - 973 -


Compat ibilit y Mode Exercise v5.1 - 974 -
Create a New Form Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing new forms in Maest ro. During t his exercise, you will
creat e a new form and add component s.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises >
Creat e New Form Finish. If you have not already import ed t he Maest ro Exercise Project please visit Exercise Setup -
Importing the Maestro Exercise Files for more informat ion.

Step 1: Create a New Form


Creat e a new form using t he det ails provided below.

1. In t he Navigat or Panel, expand t he Organizat ion .


2. Expand t he Project .
3. Select Forms.
4. Click Creat e Form .
5. Ent er t he following det ails for your new form:

l Name: Creat e New Form_[Your init ials]


l New Version: 1.0-develop

(should be pre-populat ed if Default Init ial Version has been set up in Project Det ails)

l Descript ion: This form is t o pract ice creat ing new forms and adding component s.
l Templat e: Exercise Templat e
6. Click Creat e .

Step 2: Add Components to Page One


On Page One, you will find an empt y Sect ion . You can add (drag) component s int o t his area. Use t he image below
as a guide for what you need t o add.

Creat e a New Form Exercise v5.1 - 975 -


You can Preview your form at any t ime t o see how t he component s look and work.

t he component s marked as mandat ory (* ) and wit h t he informat ion icon (i).

When adding component s, it may be helpful t o display t he Palet t e and St ruct ure panel t oget her. Click t he Side-by-
Side but t on in t he t op left corner of t he Edit or window.

Remember: t o use predefined component s, rat her t han recreat ing your own. You can use Search in t he
Palet t e panel t o find t he required component s, for example, t he ‘Tit le’ component , which cont ains all t he com-
mon t it les (Mr, Mrs. et c.). The default opt ions can be updat ed as required and is much easier t han building a
dropdown from scrat ch.

Use t his for t he Email Address Help Tex t : We use your email t o send confirmat ion of t he informat ion you've
provided.

Click Save on t he t oolbar.

Creat e a New Form Exercise v5.1 - 976 -


Step 3: Add Components to Page Two
On Page Two, you can add (drag) component s int o t he available sect ion. Use t he image below as a guide for what
you need t o add.

Some component s have t he informat ion icon (i) next t o t he label.

Use t he following ent ries for t he What is t he purpose of t he loan radio but t ons:

l Purchase a new/ used car


l Shares/ Invest ment s
l Debt consolidat ion
l Home improvement s
l Educat ion
l Travel/ Vacat ion
l Medical

Creat e a New Form Exercise v5.1 - 977 -


Use t he following ent ries for t he How many applicant s are included in t his applicat ion? radio but t ons:

l Single
l Joint

Use t he following ent ries for t he What is your Employment St at us? dropdown:

l Employed
l Self-Employed
l Unemployed

Use t he following det ails for t he Help Text :

l Loan Repayment s: Please include any mort gage repayment s, personal loans or car loans.
l Living Expenses: Consider how much you spend on bills, groceries, t ransport and ent ert ainment , et c.
l Credit Card Limit : Please include t he t ot al limit of all your credit cards.

Use t he following for t he expense quest ions:

l What is your Employment St at us?


l What is your yearly income before t ax?
l Loan Repayment s
l Rent or Board
l Living Expenses

l Credit Card Limit

Step 4: Save the Form


Click Save on t he t oolbar t o save all t he changes t o your form.

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Com ponent Propert ies


You can use t he Propert ies panel t o change t he following set t ings:

Creat e a New Form Exercise v5.1 - 978 -


l Component Label
l Add Help Text
l Set Component as Mandat ory
l Radio But t on Arrangement
l Radio But t on Opt ions
l Dropdown Opt ions

The Propert ies panel displays t he set t ings for t he select ed component .

For example, propert ies for t he First Name(s) Text Field are displayed below.

At t he t op, you can change t he component label.

Popover Help Text is where you add t he help t ext , which displays t he informat ion icon next t o t he component
label.

Creat e a New Form Exercise v5.1 - 979 -


The M andat ory opt ion is under Rules. Select t his t o mark a component as mandat ory. This will aut omat ically add
t he red ast erisk next t o t he label.

Radio But t on and Dropdown Opt ions


Use t he Propert ies panel t o cust omize t he opt ions available for Radio But t on Group and Dropdown .

Creat e a New Form Exercise v5.1 - 980 -


Click t he Opt ions but t on t o open a new window, where you can add or edit t he radio but t ons or dropdown
opt ions.

Arrangem ent of Radio But t on Opt ions


You can change t he appearance of t he radio but t ons, so t hey’re st acked vert ically or displayed in a horizont al grid.

To change t he appearance, select t he required Arrangement .

Creat e a New Form Exercise v5.1 - 981 -


Creat e a New Form Exercise v5.1 - 982 -
Creating Rules Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing rules. During t his exercise you will creat e a new form
and add component s. You will t hen creat e rules on t he added component s.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises >
Creat ing Rules Finished. If you have not already import ed t he Maest ro Exercise Project please visit Exercise Setup -
Importing the Maestro Exercise Files for more informat ion.

Step 1 Create a New Form


Creat e a new form using t he det ails provided below.

1. Expand t he Organizat ion .


2. Expand t he Project .
3. Select Forms.
4. Click Creat e Form .
5. Ent er det ails about t he form:

l Name: Mailing Address


l New Version: 1.0-develop
(should be pre-populat ed if Default Init ial Version has been set up in Project Det ails)
l Descript ion: This form is t o pract ice creat ing component rules.
l Templat e: Exercise Templat e
6. Click Creat e .

Step 2 Add Components to Page One


On Page One you will find an empt y sect ion. Add new component s t o t his area using t he image below as a guide.

Creat ing Rules Exercise v5.1 - 983 -


When adding component s, it may be helpful t o display t he Palet t e and St ruct ure panel t oget her. Click t he
Side-by-Side but t on in t he t op left corner of t he Edit or window.

Remember t o use predefined component s (where appropriat e), rat her t han recreat ing your own. You can use t he
search in t he Palet t e panel t o find component s. For example, use t he Address (USA) component rat her t han
adding individual component s. This component cont ains all t he necessary fields, which you can cust omize if
needed.

Step 3 Add a Rule to Billing Address


Add an Edit able if rule t o t he Billing Address block t hat allows it t o be edit able if t he checkbox is not select ed.

You can double-click component s on t he left side of t he Creat e Rule dialog t o add t hem t o t he script window
or t ype direct ly int o t he script window.

Creat ing Rules Exercise v5.1 - 984 -


Step 4 Add a Rule to the Checkbox
Add a Change rule t o t he checkbox t hat copies t he ent ered values from Mailing Address t o Billing Address if t he
checkbox is select ed.

Step 5 Add Components with a Mandatory If Rule


Add a checkbox and t ext field t o t he end of t he form. Creat e a mandat ory if rule on t he t ext field t hat makes t he
field mandat ory if t he checkbox is select ed.

Creat ing Rules Exercise v5.1 - 985 -


Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Creat e an Edit able If Rule


Select t he required component from t he St ruct ure panel (or in t he form).

Click t he Creat e Rule but t on from t he Rules sect ion (Propert ies panel).

Select Edit able If .

Right -click t he checkbox component t hat det ermines when t he address component is edit able.

The opt ions in t he menu are det ermined by t he component select ed. The image (above) shows t he opt ions for a
checkbox.

Based on t he exercise requirement s, you would reed t o select t he Is not select ed opt ion.

The script for t his rule says t he address block is edit able if t he checkbox is not select ed.

Creat ing Rules Exercise v5.1 - 986 -


Creat e a Change Rule
A Change rule will t rigger when a component is changed.

To st art , select t he component you want t o apply t he rule t o (i.e. t he checkbox).

Click t he Creat e Rule but t on from t he Rules sect ion (Propert ies panel).

Select Change under Act ion .

You can double-click component s on t he left side of t he Creat e Rule dialog t o add t hem t o t he script window
(right ) or t ype direct ly int o t he script window.

Based on t he exercise requirement s, you will need t o t ype at least some of t he script . Ent er t he script as follows:

Type if (

Then right -click t he checkbox and select Is select ed t o add data.billingAddressIsTheSame === true.

Then t ype ) { and press Ent er .

For t he next line, double-click Address Line 1 from t he Billing Address block t o add data.addressLine11.

Type = and a space.

Double-click Address Line 1 from t he M ailing Address block t o add data.addressLine1.

Type ; (Semicolon)

Repeat t his process for each of t he address component s. On t he final line t ype } t o end t he script . See t he image
below for guidance.

Creat ing Rules Exercise v5.1 - 987 -


Once you’ve finished creat ing t he rule is, click Save .

The rule is added t o t he Rules sect ion (Propert ies panel).

Creat e a M andat ory If Rule


Select t he component t o be mandat ory based on specific condit ions (i.e. Email Address).

Click t he Creat e Rule but t on from t he Rules sect ion (Propert ies panel).

Select M andat ory If .

Creat ing Rules Exercise v5.1 - 988 -


You can double-click component s on t he left side of t he Creat e Rule dialog t o add t hem t o t he script window
(right ) or t ype direct ly int o t he script window.

See t he image below for guidance.

Click Save .

Creat ing Rules Exercise v5.1 - 989 -


Creating Shared Components Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing shared component s. During t his exercise you will cre-
at e a new shared component wit hin a form.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he M aest ro Exercise Project : M aest ro Training Exer-
cises > Creat e Component Finish . Please not e t hat t his form uses a shared component wit h a different name t o
t he one suggest ed in t he st eps below. Shared component s cannot have t he same name as ot her shared com-
ponent s wit hin t he same project .

If you have not already import ed t he Maest ro Exercise Project please visit Exercise Setup - Importing the Maestro
Exercise Files for more informat ion.

Step 1 Open Create Component Begin


1. Expand Organizat ion .
2. Expand Project .
3. Select Forms.
4. Double-click Creat e Component Begin .
5. Click t he Edit Version but t on t o open t he form

You can creat e component s direct ly from t he Component s folder, rat her t han from wit hin a form.

Step 2 Setup a Repeating Block and Add Components


Add a Repeat ing Block Templat e and component s t o t he Dependent s sect ion so it mat ches t he image below.

Creat ing Shared Component s Exercise v5.1 - 990 -


The First Name and Last Name component s are wit hin t he Dependent 1 Repeat ing Block Templat e. Before
you add component s, make sure you add t he Repeat ing Block Templat e first , t hen add t he component s.

Step 3 Create Visibility Rule


Creat e a visibilit y rule so t hat t he repeat ing block does not show unless t he user select s Yes t o having dependent s.

Creat e t his rule on t he Repeat ing Block Templat e (see below).

Step 4 Wrap in block


Wrap all t he component s (i.e. Radio But t on component and Repeat ing Block) from t he Dependent s sect ion int o a
block. See t he image below for guidance.

Creat ing Shared Component s Exercise v5.1 - 991 -


If more t han one component is going t o be part of a shared component , you must wrap t he relevant com-
ponent s int o a block. Your St ruct ure panel should look like t he image below.

Creat ing Shared Component s Exercise v5.1 - 992 -


Step 5 Create a Shared Component
Creat e a shared component t hat combines t he component s you just creat ed. Your St ruct ure panel should mat ch
t he image below.

Use t he following det ails for t he shared component :

N ame : Dependent s_Exercise

Descript ion : Cont ains t he component s for applicant ’s dependent s.

Palet t e Folder : Cust om Component s

Inst ant Publish : Select Publish for immediat e use and select Replace it em wit h shared component

Publish Library : Select t he appropriat e project library (e.g. Maest ro Training Exercises Library)

Remember: t he inst ant publish opt ions will publish t he shared component t o t he library and replace t he exist -
ing ‘Block’ wit h t he shared component . This will ensure t he current form is updat ed if t he shared component
changes.

Creat ing Shared Component s Exercise v5.1 - 993 -


To finish, click Save t o save t he Creat e Component Begin form - t hen close t he form.

Step 6 Edit a Shared Component

Import ant : make sure your refresh t he browser window (Press F5) t hat displays t he Management Dash-
board before you proceed.

From t he Maest ro Management Dashboard, open t he shared component you just creat ed and make a change t o
t he component .

1. Expand t he Organizat ion .


2. Expand t he Project .
3. Select Component s.
4. Double-click Dependent s_Exercise .
5. Click Edit Version t o open t he Component .

Add t he Dat e of Birt h dropdown t o t he repeat ing block. Your shared component should mat ch t he image below.

Not e t hat t he shared component won’t include form element s like t he navigat or or sect ions because it ’s not
linked t o a specific t emplat e.

Click Save t o save t he changes t o t he shared component .

Creat ing Shared Component s Exercise v5.1 - 994 -


Step 7 Publish Updated Component
Once t he component has been updat ed, Publish it so t he changes are updat ed in forms current ly using t he com-
ponent as well as any new uses of t he shared component .

Use t he image below for guidance.

Once you publish t he updat ed component , Close t he Component window and Open t he Creat e Component
Begin form t o confirm t he changes t o t he component (below).

Creat ing Shared Component s Exercise v5.1 - 995 -


Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Using a Repeat ing Block Tem plat e


The Repeat ing Block Templat e enables you t o easily set up repeat ing funct ionalit y.

Use t he Palet t e Search t o find t he Repeat ing Block Templat e .

Drag t he component ont o your form.

Add t he component s you want t o repeat int o t he field area of t he block.

To make adjust ment s t o t he Repeat ing Block propert ies, select Cont ent wit hin t he Repeat ing Block Templat e
(St ruct ure panel).

Creat ing Shared Component s Exercise v5.1 - 996 -


Repeat It em Label: updat es t he label at t he t op of t he block, as well as t he but t on t ext .

Init ial It ems In Repeat : det ermines how many repeat ing component s are on t he form by default .

M in It ems In Repeat : det ermines t he minimum number of repeat ing component s t hat must be displayed on
t he form.

M ax It ems In Repeat : det ermines t he maximum number of repeat ing component s t he user can add t o t he
form.

Creat e a Show if Rule


The Show if rule allows you t o show or hide a component based on t he select ion of anot her.

St art by select ing t he component you want t o show or hide.

Click Creat e Rule in t he Rules sect ion of t he Propert ies panel.

Creat ing Shared Component s Exercise v5.1 - 997 -


Select Show if (under Visibilit y ).

Right -click t he component t hat det ermines if t he select ed component is displayed or hidden and click Select ed
opt ion .

Creat ing Shared Component s Exercise v5.1 - 998 -


In t he t op right corner of t he Select ed opt ion window, choose if t he opt ion should mat ch or not mat ch, t hen
select t he relevant opt ions.

Click OK t o close t he window.

The script for t he rule and select ed component s is displayed.

Click Save t o cont inue.

Wrap Com ponent s in a Block


If a shared component is made up of more t han one component , you must wrap t he relevant component s in a
block first , t hen creat e t he shared component .

Creat ing Shared Component s Exercise v5.1 - 999 -


To wrap mult iple component s in a block, select all t he component s from t he st ruct ure panel using eit her SHIFT or
CTRL (see below).

Right -click one of t he select ed it ems and select Wrap in Block .

The Block is creat ed and t he component s are displayed wit hin.

Use t he Propert ies panel t o rename t he block.

Creat ing Shared Component s Exercise v5.1 - 1000 -


Creat e Shared Com ponent
Shared component s are st ored out side a form, in t he Component s folder of t he project . Once a Shared com-
ponent is published, it is st ored in a Library. Shared component s can be updat ed out side of a form. When t hey’re
updat ed, any forms using t hat component are updat ed aut omat ically.

To creat e a Shared Component , right -click t he block and select Share Component .

The Share Component window will display.

Creat ing Shared Component s Exercise v5.1 - 1001 -


N ame : is t he name of t he shared component displayed in t he Palet t e panel.

Descript ion : cont ains det ails about t he shared component like t he component s in cont ains.

Palet t e Folder : is t he folder where t he shared component is st ored wit hin t he Palet t e st ruct ure. If you ent er a
folder name t hat ’s already creat ed, t he shared component will be added t o t he folder. If you ent er a name not cur-
rent ly be used, a new folder will be creat ed.

Inst ant Publish – Publish for immediat e use : publishes t he shared component as soon as you click Save. This
adds t he component t o t he library, so ot her forms can access and use t he shared component .

Inst ant Publish – Replace it em wit h shared component : removes t he block current ly in t he form and
replaces it wit h t he shared component . This allows t he component in t he form t o be updat ed whenever changes
t o t he shared component occur.

Creat ing Shared Component s Exercise v5.1 - 1002 -


The St ruct ure panel is updat ed wit h t he new shared component and t he folder in t he Palet t e panel will cont ain
t he shared component .

Creat ing Shared Component s Exercise v5.1 - 1003 -


Layout Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for working wit h t he layout of your form. During t his exercise you
will use an exist ing form t o edit t he layout of component s.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises
v5.1 > Layout Finish. If you have not already import ed t he Maest ro Exercise Project please visit Exercise Setup -
Importing the Maestro Exercise Files for more informat ion.

Step 1: Open the Existing Form Layout Begin.


1. In t he Navigat or Panel, expand t he Organizat ion .
2. Expand t he Project .
3. Select Forms.
4. Double-click Layout Begin .
5. Click t he Edit Version but t on t o open t he form.

Step 2: Adjust the Layout of Title, First Name and Last Name
On t he Applicant Det ails page, adjust t he component s so t hey appear on t he same line when viewing t he form on
large screens. Updat e t he ‘Your Det ails’ sect ion t o mat ch t he image below.

Set Tit le t o 2 columns wide.

Set First Name(s) t o 5 columns wide.

Layout Exercise v5.1 - 1004 -


Set Last Name t o 5 columns wide.

Set Ot her name known by (if any) t o 7 columns wide.

Set Phone Number t o 6 columns wide.

Set Email Address t o 6 columns wide.

Best pract ice: only change t he widt h values for t he Large and Full Screen sizes.
In t he Edit or, you’ll only see t he changes made t o t he Full screen size.
Use Preview t o check t he form and make any necessary adjust ment s.

Once you’ve made room on a row, you can drag a component int o posit ion if it doesn’t aut omat ically move t o t he
larger space.

Click Save .

Step 3: Adjust the Employment Details Components


Adjust t he component s so t hey appear like t he screenshot below.

Set Employer Name and Occupat ion t o 12 columns wide.

Set Type of Employment and Salary Amount t o 6 columns wide.

Click Save .

Step 4: Adjust the Living Expenses Components


On t he Income and Expenses page, adjust t he component s so t hey appear as four columns on t he same row.

Layout Exercise v5.1 - 1005 -


Set all four component s t o 3 columns wide.

Once you’ve made room on a row, you can drag a component int o posit ion if it doesn’t aut omat ically move t o t he
larger space.

Click Save .

Step 5: Add a New Component to the Living Expenses Section


In t he Expense Det ails sect ion, add a new Tot al Expenses component .

Not ice: t he currency symbol for Tot al Expenses is added by using t he Currency Field.

Set Tot al Expenses t o 5 columns wide.

Set t he Offset for Tot al Expenses t o 7 columns.

Click Save .

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Change t he layout of com ponent s


Select t he component you want t o change. Adjust t he Widt h values wit hin t he Layout sect ion (Propert ies panel) t o
make any changes.

Decrease t he column widt h for t he relevant screen size.

Layout Exercise v5.1 - 1006 -


You will only see changes in t he Edit or when you adjust t he full screen layout .

Change t he posit ion of com ponent s (using Offset )


Component s can be shift ed t o t he right or left wit hin t heir row. Select t he component you want t o change.

Adjust t he Offset values wit hin t he Layout sect ion (Propert ies panel) t o make any changes.

You can increase t he offset t o move t he component t o t he right or decrease t he offset t o move t he component t o
t he left .

Layout Exercise v5.1 - 1007 -


Add a Currency Field
The Currency Field component aut omat ically includes a currency symbol. Use Search in t he Palet t e t o find t he Cur-
rency Field and add (drag) it t o your form.

Use t he Propert ies panel t o make changes t o t he field, including t he currency icon used.

Layout Exercise v5.1 - 1008 -


Layout Exercise v5.1 - 1009 -
Pages and Sections Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills wit h pages and sect ions. During t his exercise, you will use an exist -
ing form t o edit pages and sect ions as well as add new ones.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he M aest ro Exercise Project : M aest ro Training Exer-
cises v5.1 > Pages and Sect ions Finish . If you have not already import ed t he Maest ro Exercise Project please
visit Exercise Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1: Create a New Version


Creat e a new version of t he exist ing form named Pages and Sect ions Begin .

Follow t he st eps below t o creat e t he new form.

1. Expand t he Organizat ion .


2. Expand t he Project .
3. Select Forms.
4. Select Pages and Sect ions Begin .
5. Click N ew Version .
6. Ent er t he following Form Descript ion :

Descript ion: This form version is t o pract ice working wit h sect ions.

7. Click Creat e .
8. Click Edit t o open t he form.

Step 2: Update the Names of the Existing Pages and Sections


In t his form, you will find t wo pages, each cont aining a sect ion. You will change t he names of bot h pages and t heir
sect ions.

Use t he St ruct ure panel t o select t he pages and sect ions you want t o updat e.

Starting Structure Panel Updated Structure Panel

Pages and Sect ions Exercise v5.1 - 1010 -


Updat e t he Sect ion - Addit ional Text (using t he supplied t ext ) so your form mat ches t he images below.

l Your Det ails: Ent er t he det ails about t he main applicant .


l Employment Det ails: Ent er det ails about your employment .

Click Save .

Step 3: Add a new section to the Applicant Details page


Add your new sect ion aft er t he exist ing sect ion on page one. Your St ruct ure panel should appear similar t o t he
image displayed.

Click Save .

Step 4: Add a New Page with a Section


Add a new page (called ‘Living Expenses’) aft er t he exist ing pages. Add a new sect ion (called ‘Mont hly Expenses’) t o
t he page. Your St ruct ure panel should mat ch t he image below.

Pages and Sect ions Exercise v5.1 - 1011 -


Add t he following Addit ional Text for t he Mont hly Expenses sect ion (t ext below).

M ont hly Expenses: Ent er your mont hly expenses for each cat egory. If an it em does not apply, please ent er ‘0’.

The Living Expenses page should mat ch t he image below.

Click Save .

Step 5: Rearrange the Components


Using t he St ruct ure panel:

l Move t he Address (USA) block t o t he Address Det ails sect ion.


l Move t he expense quest ions (Page Two) t o t he new Mont hly Expenses sect ion (Page Three).

You can select mult iple component s at one t ime by using SHIFT or CTRL.

The image below shows how t he St ruct ure panel should look once t he component s have been rearranged.

Pages and Sect ions Exercise v5.1 - 1012 -


Click Save .

Step 6: Build the TM Form Version


Build and Download t he TM Form Version.

Extra Help
Need some Ext ra Help?

Use t he informat ion below t o assist in complet ing t he exercise st eps.

Add a new page


Use t he Search box in t he Palet t e t o find t he Page component .

Drag t he Page component t o t he Cont ent cont ainer on t he St ruct ure panel.

Pages and Sect ions Exercise v5.1 - 1013 -


Pages Groups and Pages cannot be added int o t he Edit or pane.

You can also right -click t he Cont ent folder (St ruct ure panel) and choose Add Page Group.

Use t he Propert ies panel t o change t he name of t he page.

Add a new sect ion


Sect ions can be added t o pages t o help organize t he display of t he component s. Use t he Search box in t he Palet t e
t o find t he Sect ion component (or look under ‘Favourit es’). Drag t he Sect ion component t o t he Page cont ainer on
t he St ruct ure panel.

You can also drag a new ‘Sect ion’ component ont o t he form.

Pages and Sect ions Exercise v5.1 - 1014 -


Use t he Propert ies panel t o change t he name of t he sect ion.

Addit ional Text


Use t he Propert ies panel t o cust omize t he t ext below t he sect ion t it le.

In t he Propert ies panel, ent er t ext in t he Addit ional Text ent ry box.

You can click t he Edit but t on t o display t he Addit ional Text window. Here you can edit and format t he addit ional
t ext displayed on t he form.

Rearrange Com ponent s


Use t he St ruct ure panel t o drag and drop component s bet ween pages and/ or sect ions.

Pages and Sect ions Exercise v5.1 - 1015 -


Select mult iple component s at one t ime using SHIFT or CTRL. Once select ed, you can drag t hem t o a different con-
t ainer.

Select adjacent component s using SHIFT (below)

Select non-adjacent component s using CTRL (below)

Pages and Sect ions Exercise v5.1 - 1016 -


Pages and Sect ions Exercise v5.1 - 1017 -
Repeating and Shared Components Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for using repeat ing component s and shared component s. During
t his exercise you will use an exist ing form t o add repeat ing and shared component s.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises >
Repeat ing and Shared Component s Finish. If you have not already import ed t he Maest ro Exercise Project please
visit Exercise Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1 Open the Existing Form ‘Repeating and Shared Components Begin’
1. Expand t he Organizat ion .
2. Expand t he Project .
3. Select Forms.
4. Double-click Repeat ing and Shared Component s Begin .
5. Click t he Edit Version but t on t o open t he form

Step 2 Add a New Page with Sections to Your Form


Add a new Page called Asset Det ails.

Add t wo new Sect ions t o t his page called Propert y Det ails and Vehicle Det ails.

Your St ruct ure panel should mat ch t he image below.

Click Save .

Repeat ing and Shared Component s Exercise v5.1 - 1018 -


Step 3 Add Components to the Page
Add component s t o t he new page so it mat ches t he image below.

Not ice: t he Address 1 block and Propert y Value component are wit hin a Repeat ing Block Templat e. Before
you add component s t o t he page, you should add t he Repeat ing Block Templat e first , t hen add t he com-
ponent s t o t he block.

Creat e a Show if rule t o only show t he Repeat ing Block Templat es when t he user select s Yes t o owning Propert y or
a Vehicle.

Click Save .

Repeat ing and Shared Component s Exercise v5.1 - 1019 -


Step 4 Add a Shared Component
Add t he Maguire Cust omer shared component t o t he bot t om of t he Your Det ails sect ion.

Click Save .

Repeat ing and Shared Component s Exercise v5.1 - 1020 -


Shared component s can be st ored anywhere in t he Palet t e, so use t he Search if you’re unsure of a com-
ponent ’s locat ion.

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Add a new Page and Sect ion


Display t he Palet t e and St ruct ure panels side by side (use but t on in t op left ).

Search for t he Page component and drag it ont o t he Cont ent folder (St ruct ure panel). Drag t he new Page int o t he
correct order.

Drag t wo new Sect ion component s ont o t he new Page.

Using a Repeat ing Block Tem plat e


The Repeat ing Block Templat e includes all of t he necessary it ems t o easily set up repeat ing funct ionalit y.

Use t he Palet t e Search t o find t he Repeat ing Block Templat e (see below).

Repeat ing and Shared Component s Exercise v5.1 - 1021 -


Drag t he component ont o your form.

You can add t he component s you want t o repeat int o t he field area of t he repeat ing block.

To make any adjust ment s t o your repeat ing block, select Cont ent wit hin t he Repeat ing Block Templat e (St ruct ure
panel).

Wit h Cont ent select ed you can edit values in t he Propert ies panel.

Repeat ing and Shared Component s Exercise v5.1 - 1022 -


Repeat It em Label: t his updat es t he label at t he t op of t he block, as well as t he but t on t ext .

Init ial It ems In Repeat : det ermines how many repeat ing component s are on t he form by default .

Min It ems In Repeat : det ermines t he minimum number of repeat ing component s t hat must be displayed on t he
form.

Max It ems In Repeat : det ermines t he maximum number of repeat ing component s a user can add t o t he form.

Using a Shared Com ponent


Shared component s are st ored out side of a form, in t he Component s folder wit hin t he project . A shared com-
ponent can be updat ed out side t he form. When updat es are made, all forms using t hat component are updat ed
aut omat ically.

Use Search in t he Palet t e t o locat e t he shared component you want t o use.

Drag t he shared component t o t he form. The shared component will be added.

Repeat ing and Shared Component s Exercise v5.1 - 1023 -


The shared component will cont ain t he component s along wit h any cust om propert ies.

Repeat ing and Shared Component s Exercise v5.1 - 1024 -


Rules without Scripting Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing rules wit hout script ing. During t his exercise you will
use an exist ing form t o add non-script ed rules.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises
v5.1 > Rules wit hout Script ing Finish. If you have not already import ed t he Maest ro Exercise Project please visit Exer-
cise Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1 Open the existing form Rules without Scripting Begin.


1. Expand t he Organizat ion .
2. Expand t he Project .
3. Select Forms.
4. Double-click Rules wit hout Script ing Begin .
5. Click Edit Version t o open t he form.

Step 2 Create a Rule for Income Details


Creat e a Show If rule t hat displays t he ‘yearly income’ component if t he ‘employment st at us’ is set t o ‘Employed’ or
‘Self-Employed’.

Click Save .

Step 3 Calculate the Total of the Four Expenses in the Expense Details Section
Calculat e t he t ot al of t he four expenses in t he Tot al Expenses field.

Rules wit hout Script ing Exercise v5.1 - 1025 -


Set up anot her rule t o make Tot al Expenses read only.

Click Save .

Step 4 Add the Driver License Components to the Your Details Section.
Add t he Driver License component s shown below.

Click Save .

Step 5 Create a Rule for Driver License


Wrap t he Driver’s License Number and Driver’s License Issuing St at e component s int o a block, t hen add a Show If
rule so t he component s only display when t he user select s Yes t o having a driver’s license.

Rules wit hout Script ing Exercise v5.1 - 1026 -


Click Save .

Import ant : you should wrap Driver’s License Number and Driver’s License Issuing St at e in a block before cre-
at ing t he rule. This way you only have t o apply t he rule t o t he block, rat her t han applying t o individual com-
ponent s.

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Creat e a Show If Rule


A Show If rule allows you t o show or hide a component based on t he select ion of anot her component .

Select t he component you want t o show or hide.

Click Creat e Rule in t he Rules sect ion (Propert ies panel).

Select Show If.

Rules wit hout Script ing Exercise v5.1 - 1027 -


Right -click t he component t hat det ermines if t he select ed component is displayed or hidden and click Select ed
opt ion.

In t he t op right corner of t he Select ed opt ion window, select if t he opt ion should mat ch or not mat ch, t hen select
t he relevant opt ions.

Click OK.

Rules wit hout Script ing Exercise v5.1 - 1028 -


The script for t he rule and select ed component s is displayed. Click Save.

Creat e a Script Rule


A Script rule will perform calculat ions based on select ed component s. Select t he component where t he calculat ion
will be displayed. Click Creat e Rule in t he Rules sect ion (Propert ies panel).

Rules wit hout Script ing Exercise v5.1 - 1029 -


Click Script .

Double click each component you want t o use in t he calculat ion. Include a plus sign ( + ) bet ween t he component s.

The select ed component s will display in t he list . Click Save .

Wrap Com ponent s in a Block


You can wrap component s in a block t o easily manage relat ed component s.

Select t he component s in t he St ruct ure panel you want t o wrap in a block.

Rules wit hout Script ing Exercise v5.1 - 1030 -


Right -click one of t he select ed component s and click Wrap in Block.

Wit h t he block select ed, use t he Propert ies panel t o rename t he block.

Rules wit hout Script ing Exercise v5.1 - 1031 -


Rules wit hout Script ing Exercise v5.1 - 1032 -
Two Level Navigation Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for working wit h t wo level navigat ion. During t his exercise you will
creat e page groups, which will allow you t o use t wo level navigat ion wit hin your form.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises
v5.1 > Two Level Navigat ion Finish. If you have not already import ed t he Maest ro Exercise Project please visit Exer-
cise Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1 Open Two-Level Navigation Begin


1. Expand t he Organizat ion .
2. Expand t he Project .
3. Select Forms.
4. Double-click Two Level N avigat ion Begin .
5. Click Edit Version t o open t he form

Step 2 Add Page Groups to the Form


Add Page Groups t o t he form, t hen move t he relevant pages int o each group. Your St ruct ure panel should mat ch
t he Aft er image below.

Before After

To add a Page Group, you need t o drag t he component from t he Palet t e panel ont o t he St ruct ure panel.

Page groups cannot be dragged direct ly ont o a form or t emplat e.

Not ice: some of t he pages have been rearranged.

Click Save .

Two Level Navigat ion Exercise v5.1 - 1033 -


Step 3: Rename Pages
Rename t he Pages added t o each Page Group. Your St ruct ure panel should mat ch t he image below.

Step 4 Set Second Level Navigator to Equal Width


Change t he widt h of t he Pages on t he second level navigat or so t hat t hey are equal. Your second level navigat or
should mat ch t he image below.

Before

After

To change t he widt h of t he Second Level Navigat or:

1. Click Form Opt ions.


2. Select N avigat or Second Level.
3. Select Equal Widt h.
4. Check Equal Widt h .
5. Click Save .

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Two Level Navigat ion Exercise v5.1 - 1034 -


Using a Page Group
Page Groups let you group pages t oget her. Adding page groups aut omat ically creat es a t wo level navigat ion. Each
page group is displayed on t he first level navigat or and any pages in t he page group are displayed on t he second
level navigat or.

Use Search t o find t he Page Groups.

Drag t he component ont o t he St ruct ure panel.

Use t he Propert ies panel t o rename t he page group.

The Page Group label is aut omat ically used for t he first level navigat or. If you want t he label and menu t ext dif-
ferent , change t he menu t ext in t he Opt ions sect ion on t he Propert ies panel.

In t he St ruct ure panel, drag t he pages you want grouped ont o t he page group component .

Set t he Second Level Navigat or t o equal widt hs


By default , t he widt h of Second Level Navigat or menu it ems is det ermined by t he lengt h of t he menu t ext . You can
change t his, so each menu it em t akes up t he same widt h.

Click t he Form Opt ions but t on (t owards t he t op of t he Design window).

Expand Navigat or Second Level.

Two Level Navigat ion Exercise v5.1 - 1035 -


Select Equal Widt h.

Check Equal Widt h, t hen click Save.

Two Level Navigat ion Exercise v5.1 - 1036 -


Two Level Navigat ion Exercise v5.1 - 1037 -
Validation Rules Exercise v5.1
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing validat ion rules. During t his exercise you will creat e a
new form and add component s. You will t hen creat e rules on t he added component s.

Do your best t o follow t he informat ion provided and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises
v5.1 > Validat ion Rules Finish. If you have not already import ed t he Maest ro Exercise Project please visit Exercise
Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1 Open Validation Rules Begin


1. Expand t he Organizat ion .
2. Expand t he Project .
3. Select Forms.
4. Double-click Validat ion Rules Begin .
5. Click Edit Version t o open t he form.

Step 2 Create a Valid If Rule


Use t he Valid If rule for t he Cust omer Number. Creat e a rule where t he Cust omer Number is valid if great er t han
10000.

Validat ion Rules Exercise v5.1 - 1038 -


Cust omer Number cont ains a visibilit y rule. You won’t see t his field in preview unt il you select Yes for t he ques-
t ion ‘Are you an exist ing cust omer?’

Step 3 Create a Regular Expression Validation Rule


You can search t he Regular Expression Library (http://regexlib.com ) t o locat e predefined expressions t o use in
your Maest ro form.

Set up a Regular Expression rule t o validat e t he Social Securit y Number component . An example expression is
included in t he image below.

Validat ion Rules Exercise v5.1 - 1039 -


Example Regular expression : ^(?!219-09-9999|078-05-1120)(?!666|000|9\d{2})\d{3}-(?!00)\d
{2}-(?!0{4})\d{4}$

Example M at ch Fails message : Please ent er a number using t his format ###-##-####

Once t he validat ion rule is creat ed, click Save and Preview t he form.

Try ent ering t his number first : 123-4-5678

Then t ry t his number : 123-45-6789

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Creat e a Valid if rule


1. Select t he component t o cont ain t he validat ion rule.

2. Click Creat e Rule t hen select Valid if .


3. Type if (.

4. Double-click t he (Cust omer Number) component t o add data.customerNumber t o t he script window.

5. Type < 10000) t hen press Ent er.

6. Type return "Please enter a valid Customer Number.";.

Validat ion Rules Exercise v5.1 - 1040 -


7. Click Save .

Creat e a Regular Expression rule


1. Launch t he Regular Expression Library - http://regexlib.com
2. Locat e t he pre-defined expression you want t o use.
3. Copy t he expression, t hen ret urn t o t he Maest ro form.
4. Select t he component t o cont ain t he validat ion rule.

5. Click Creat e Rule t hen select Regular Expression .


6. Past e t he pre-defined expression in t he M ust M at ch t his expression box.
7. Ent er an appropriat e failure message.

Validat ion Rules Exercise v5.1 - 1041 -


8. Click Save .

Validat ion Rules Exercise v5.1 - 1042 -


eLearning Exercises for M aestro v5.0
Journey Platform | Platform Developer | Form Builder | v5.1 & Higher

View t he eLearning courses available from t he Temenos Learning Center .

We recommend t hat you view each course in order, following t he list ed order of t he modules. Aft er a few modules
you will be given an exercise which will allow you t o pract ice what you have learned. We st rongly recommend you
use t hese exercises t o complet e your t raining.

Pre-requisite
l First you will need t o import t he exercise files used for t he Maest ro 5.0 exercises. Refer t o Exercise Setup -
Importing the Maestro Exercise Files.

eLearning Exercises for Maestro v5.0


Use t he following links t o view t he exercise guides. Please follow t he inst ruct ions in each guide t o ident ify t he
resources and asset s you’ll need t o use.

Int roduct ion t o Maest ro:

l Create a New Form


l Pages and Sections

Form Builder 1:

l Layout
l Creating Rules (without Scripting)
l Repeating and Shared Components

Form Builder 2:

l Creating Shared Components


l Two Level Navigation

Form Builder Script ing:

l Calculation Rules
l Creating Rules
l Validation Rules

Help
For help using t he Learning Cent er refer t o t he Learning Center Help Guide.

eLearning Exercises for Maest ro v5.0 - 1043 -


If you have any quest ions, issues or feedback please feel free t o cont act t he Manly Knowledge Team .

eLearning Exercises for Maest ro v5.0 - 1044 -


Exercise Setup - Importing the M aestro v5.0 Exercise Files
Journey Platform | Platform Developer | Form Builder | v5.1 & Higher

This guide explains how t o import t he Maest ro exercise files as a Maest ro project . This project cont ains all t he
required forms, t emplat es, component s and st yles needed t o complet e t he exercises.

You can also access a t raining module on t he Avoka LMS t hat explains how t o import and export in Maest ro. You
may want t o view t his module before import ing t he exercise project .

Step 1 Identify the Training Environment


1. Ident ify which of t he following best describes t he Training Environment you will use t o complet e t he Maest ro
5.0 t raining.

Training Environment Uses Maestro version Download… Import Type

elear ning.avoka.com 17.10 or later Version 2018.08.02 Impor t Pr oject

Your company 17.10 or later Version 2018.08.02 Impor t Pr oject

Your company 5.x or ear lier Version 2016.12.22 Impor t Pr oject

+ Version 2016.12.22: was export ed from Maest ro 5.0.x environment


+ Version 2018.08.02: was export ed from Maest ro 17.10 (or lat er)

Step 2 Download the Exercise Project


The file t o be downloaded is a zipped folder t hat cont ains t he Maest ro t raining exercise project .

1. Click on t he required download link above t o download t he Exercise Project t o your PC.

2. Leave t his file in t he Downloads folder or move it t o a different locat ion. Just remember, you’ll need t o nav-
igat e t o t his file in t he next st ep t o import it int o Maest ro.

Step 3 Import the Exercise Project


Once you’ve select ed t he Organizat ion, you can import a project int o Maest ro.

1. Login t o Maest ro.

2. Click on your Organizat ion .


3. Click Import Project t o import t he Maest ro Project .
4. Ent er M aest ro Online Training Exercises for t he name of t he project you’re import ing.
5. Click Import .

Exercise Set up - Import ing t he Maest ro v5.0 Exercise Files - 1045 -


6. Navigat e t o and select t he Maest ro Exercise Project zipped folder you downloaded.

7. Click Open .

Result
Aft er import ing t he project you’ll have access t o t he exercise forms, t emplat es and component s.

Optional Step 4 Importing Legacy Projects


Maest ro offers an addit ional import opt ion for project s creat ed and export ed from legacy (or previous) versions of
Maest ro.

A project is considered Legacy if it was creat ed and export ed from any version of Maest ro prior t o v17.10. The
opt ion t o Import Legacy Project s is only available t o Maest ro users assigned t he M aest ro Sit e Administ rat or
Role. If you need t o import a legacy project , speak t o your Maest ro account manager.

Exercise Set up - Import ing t he Maest ro v5.0 Exercise Files - 1046 -


Calculation Rules Exercise v5.0
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing rules. During t his exercise you will creat e a new form
and add component s. You will t hen creat e rules on t he added component s.

Do your best t o follow t he informat ion provided and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he M aest ro Exercise Project : M aest ro Training Exer-
cises > Calculat ion Rules Finish . If you have not already import ed t he Maest ro Exercise Project please visit Exer-
cise Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1 Create a New Form


Creat e a new form using t he det ails provided below.

1. Expand t he Organizat ion .


2. Expand t he Project .
3. Select Forms.
4. Click Creat e Form .
5. Ent er det ails about t he form:

l Name: Order Form


l New Version: 1.0-develop
(should be pre-populat ed if Default Init ial Version has been set up in Project Det ails)
l Descript ion: This form is t o pract ice creat ing calculat ion rules.
l Templat e: Exercise Templat e
6. Click Creat e .

Step 2 Add Components to Page One


Add component s t o Page One so your form resembles t he image below.

Calculat ion Rules Exercise v5.0 - 1047 -


Click Save .

Step 3 Populate a Component Based on Entered Data


Populat e t he Full N ame component based on a script t hat concat enat es t he dat a ent ered in First N ame and
Last N ame .

Add a Read Only rule t o Full N ame so t he populat ed dat a cannot be changed.

Preview t he form t o check t he calculat ion rules.

Click Save .

Calculat ion Rules Exercise v5.0 - 1048 -


Step 4 Add Show if Rules
Add Show If rules t o t he Phone N umber , Email Address and Address block based on t he preferred cont act
met hod select ed.

Right -click t he appropriat e component s on t he left side of t he Creat e Rule window t o creat e t he required Show if
script s (see t he example below).

Save your form.

Preview t he form t o check t he calculat ion rules.

Step 5 Change the Clear Hidden Data Option


Change t he Clear hidden dat a opt ion for each of t he cont act det ail component s so t hat when t hey are hidden,
any dat a previously ent ered in t he field is cleared immediat ely.

When you’ve changed t he Hidden Dat a opt ions, Save your form t hen click Preview t o t est t he form.

Click Save .

Step 6 Add an Order Details Section to the Form


Add a new sect ion below t he About You sect ion. Add component s so t he new sect ion resembles t he image below.

Calculat ion Rules Exercise v5.0 - 1049 -


Use t he Decimal Field component for Price , It em Tot al, Sub-Tot al and Tot al Due and set t he decimal fields t o
2 decimal places.

Click Save .

Step 7 Add a Calculation Rule to the Item Total


Creat e a calculat ion rule t hat mult iples Price by Quant it y .

Add a Read Only rule t o It em Tot al so t he user cannot change t he calculat ed value.

Click Save .

Preview t he form t o check t he calculat ion rules.

Step 8: Add a Calculation Rule to the Sub-Total Component


Creat e a calculat ion rule t hat sums t he It em Tot als for each repeat .

Calculat ion Rules Exercise v5.0 - 1050 -


Add a Read Only rule so t hat t he user cannot change t he calculat ed value.

Click Save .

Preview t he form t o check t he calculat ion rules.

Step 9: Add a Calculation Rule to the Total Due Component


Creat e a calculat ion rule t hat includes t he Sub-Tot al mult iplied by t he credit card processing fee if t he checkbox is
select ed.

Add a Read Only rule so t hat t he user cannot change t he calculat ed value.

Click Save .

Preview t he form and check t he calculat ion rules.

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Creat e a Show If Rule


Select t he component whose visibilit y is condit ional (i.e. visible or not visible).

Click Creat e Rule from t he Rules sect ion (Propert ies panel).

Select Show If from t he Creat e Rule window.

Calculat ion Rules Exercise v5.0 - 1051 -


Right -click t he component t hat det ermines if a component is shown on t he form

Choose Select ed opt ion .

Nominat e t he mat ching Opt ion (e.g. Phone) and click OK.

The script is added t o t he Creat e Rule window.

Calculat ion Rules Exercise v5.0 - 1052 -


Com bine ent ered dat a int o a com ponent
Select t he component where t he dat a will be populat ed.

Click Creat e Rule and select Script .

Double-click t he component you want t o add t o t he script , e.g. double-click First N ame t o add dat a.first N ame
t o t he script window.

Ent er a plus sign bet ween t he component s you want t o combine.

Any spaces or ot her charact ers t o include in t he script must be wrapped bet ween quot at ion marks (“).

Double-click t he next component t o add t o t he script (see example below).

Clear Hidden Dat a Im m ediat ely


Select t he component .

Select t he Dat a t ab, expand Hidden Dat a and choose Immediat ely from t he opt ions.

Calculat ion Rules Exercise v5.0 - 1053 -


Creat e a M at hem at ical Calculat ion Rule
Select t he component t hat will cont ain t he calculat ion.

Click Creat e Rule t hen select Script .

Double-click any component s on t he left -side of t he window t o add t hem t o t he script window (on t he right ).

Insert t he required calculat ion symbols, e.g. * / + -

The script is added t o t he window.

Creat e a Calculat ion Rule for Repeat ed It em s


Select t he component t hat will cont ain t he calculat ion.

Click Creat e Rule t hen select Script .

Expand t he Repeat ing Block Templat e , t hen expand Cont ent .

Expand Repeat ed Cont ent .

Right -click t he component you want t o t ot al and select Get sum of repeat ed dat a .

Calculat ion Rules Exercise v5.0 - 1054 -


The script is added t o t he window.

Calculat ion Rules Exercise v5.0 - 1055 -


Create a New Form Exercise v5.0
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing new forms in Maest ro. During t his exercise, you will
creat e a new form and add component s.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises >
Creat e New Form Finish. If you have not already import ed t he Maest ro Exercise Project please visit Exercise Setup -
Importing the Maestro Exercise Files for more informat ion.

Step 1 Create a New Form


Creat e a new form using t he det ails provided below.

1. In t he Navigat or Panel, expand t he Organizat ion .

2. Expand t he Project .

3. Select Forms.

4. Click Creat e Form .

5. Ent er t he following det ails for your new form:

l Name: Creat e New Form_[Your init ials]


l New Version: 1.0-develop

(should be pre-populat ed if Default Init ial Version has been set up in Project Det ails)

l Descript ion: This form is t o pract ice creat ing new forms and adding component s.
l Templat e: Exercise Templat e

6. Click Creat e .

Step 2 Add Components to Page One


On Page One, you will find an empt y Sect ion . You can add (drag) component s int o t his area. Use t he image below
as a guide for what you need t o add.

Creat e a New Form Exercise v5.0 - 1056 -


You can Preview your form at any t ime t o see how t he component s look and work.

The component s marked as mandat ory (* ) and wit h t he informat ion icon (i).

When adding component s, it may be helpful t o display t he Palet t e and St ruct ure panel t oget her. Click t he Side-by-
Side but t on in t he t op left corner of t he Edit or window.

Remember: t o use predefined component s, rat her t han recreat ing your own. You can use Search in t he
Palet t e panel t o find t he required component s, for example, t he ‘Tit le’ component , which cont ains all t he com-
mon t it les (Mr, Mrs. et c.). The default opt ions can be updat ed as required and is much easier t han building a
dropdown from scrat ch.

Use t his for t he Email Address Help Tex t : We use your email t o send confirmat ion of t he informat ion you've
provided.

Click Save on t he t oolbar.

Creat e a New Form Exercise v5.0 - 1057 -


Step 3 Add Components to Page Two
On Page Two, you can add (drag) component s int o t he available sect ion. Use t he image below as a guide for what
you need t o add.

Some component s have t he informat ion icon (i) next t o t he label.

Use t he following ent ries for t he What is t he purpose of t he loan radio but t ons:

l Purchase a new/ used car


l Shares/ Invest ment s
l Debt consolidat ion
l Home improvement s
l Educat ion
l Travel/ Vacat ion
l Medical

Creat e a New Form Exercise v5.0 - 1058 -


Use t he following ent ries for t he How many applicant s are included in t his applicat ion? radio but t ons:

l Single
l Joint

Use t he following ent ries for t he What is your Employment St at us? dropdown:

l Employed
l Self-Employed
l Unemployed

Use t he following det ails for t he Help Text :

l Loan Repayment s: Please include any mort gage repayment s, personal loans or car loans.
l Living Expenses: Consider how much you spend on bills, groceries, t ransport and ent ert ainment , et c.
l Credit Card Limit : Please include t he t ot al limit of all your credit cards.

Use t he following for t he expense quest ions:

l What is your Employment St at us?


l What is your yearly income before t ax?
l Loan Repayment s
l Rent or Board
l Living Expenses

l Credit Card Limit

Step 4 Save the Form


Click Save on t he t oolbar t o save all t he changes t o your form.

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Com ponent Propert ies


You can use t he Propert ies panel t o change t he following set t ings:

Creat e a New Form Exercise v5.0 - 1059 -


l Component Label
l Add Help Text
l Set Component as Mandat ory
l Radio But t on Arrangement
l Radio But t on Opt ions
l Dropdown Opt ions

The Propert ies panel displays t he set t ings for t he select ed component .

For example, propert ies for t he First Name(s) Text Field are displayed below.

At t he t op, you can change t he component label.

Popover Help Text is where you add t he help t ext , which displays t he informat ion icon next t o t he component
label.

Creat e a New Form Exercise v5.0 - 1060 -


The M andat ory opt ion is under Rules. Select t his t o mark a component as mandat ory. This will aut omat ically add
t he red ast erisk next t o t he label.

Radio But t on and Dropdown Opt ions


Use t he Propert ies panel t o cust omize t he opt ions available for Radio But t on Group and Dropdown .

Creat e a New Form Exercise v5.0 - 1061 -


Click t he Opt ions but t on t o open a new window, where you can add or edit t he radio but t ons or dropdown
opt ions.

Arrangem ent of Radio But t on Opt ions


You can change t he appearance of t he radio but t ons, so t hey’re st acked vert ically or displayed in a horizont al grid.

To change t he appearance, select t he required Arrangement .

Creat e a New Form Exercise v5.0 - 1062 -


Creat e a New Form Exercise v5.0 - 1063 -
Creating Rules Exercise v5.0
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing rules. During t his exercise you will creat e a new form
and add component s. You will t hen creat e rules on t he added component s.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises >
Creat ing Rules Finished. If you have not already import ed t he Maest ro Exercise Project please visit Exercise Setup -
Importing the Maestro Exercise Files for more informat ion.

Step 1 Create a New Form


Creat e a new form using t he det ails provided below.

1. Expand t he Organizat ion .


2. Expand t he Project .
3. Select Forms.
4. Click Creat e Form .
5. Ent er det ails about t he form:

l Name: Mailing Address


l New Version: 1.0-develop
(should be pre-populat ed if Default Init ial Version has been set up in Project Det ails)
l Descript ion: This form is t o pract ice creat ing component rules.
l Templat e: Exercise Templat e
6. Click Creat e .

Step 2 Add Components to Page One


On Page One you will find an empt y sect ion. Add new component s t o t his area using t he image below as a guide.

Creat ing Rules Exercise v5.0 - 1064 -


When adding component s, it may be helpful t o display t he Palet t e and St ruct ure panel t oget her. Click t he
Side-by-Side but t on in t he t op left corner of t he Edit or window.

Remember t o use predefined component s (where appropriat e), rat her t han recreat ing your own. You can use t he
search in t he Palet t e panel t o find component s. For example, use t he Address (USA) component rat her t han
adding individual component s. This component cont ains all t he necessary fields, which you can cust omize if
needed.

Step 3 Add a Rule to Billing Address


Add an Edit able if rule t o t he Billing Address block t hat allows it t o be edit able if t he checkbox is not select ed.

You can double-click component s on t he left side of t he Creat e Rule dialog t o add t hem t o t he script window
or t ype direct ly int o t he script window.

Creat ing Rules Exercise v5.0 - 1065 -


Step 4 Add a Rule to the Checkbox
Add a Change rule t o t he checkbox t hat copies t he ent ered values from Mailing Address t o Billing Address if t he
checkbox is select ed.

Step 5 Add Components with a Mandatory If Rule


Add a checkbox and t ext field t o t he end of t he form. Creat e a mandat ory if rule on t he t ext field t hat makes t he
field mandat ory if t he checkbox is select ed.

Creat ing Rules Exercise v5.0 - 1066 -


Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Creat e an Edit able If Rule


Select t he required component from t he St ruct ure panel (or in t he form).

Click t he Creat e Rule but t on from t he Rules sect ion (Propert ies panel).

Select Edit able If .

Right -click t he checkbox component t hat det ermines when t he address component is edit able.

The opt ions in t he menu are det ermined by t he component select ed. The image (above) shows t he opt ions for a
checkbox.

Based on t he exercise requirement s, you would reed t o select t he Is not select ed opt ion.

The script for t his rule says t he address block is edit able if t he checkbox is not select ed.

Creat ing Rules Exercise v5.0 - 1067 -


Creat e a Change Rule
A Change rule will t rigger when a component is changed.

To st art , select t he component you want t o apply t he rule t o (i.e. t he checkbox).

Click t he Creat e Rule but t on from t he Rules sect ion (Propert ies panel).

Select Change under Act ion .

You can double-click component s on t he left side of t he Creat e Rule dialog t o add t hem t o t he script window
(right ) or t ype direct ly int o t he script window.

Based on t he exercise requirement s, you will need t o t ype at least some of t he script . Ent er t he script as follows:

Type if (

Then right -click t he checkbox and select Is select ed t o add data.billingAddressIsTheSame === true.

Then t ype ) { and press Ent er .

For t he next line, double-click Address Line 1 from t he Billing Address block t o add data.addressLine11.

Type = and a space.

Double-click Address Line 1 from t he M ailing Address block t o add data.addressLine1.

Type ; (Semicolon)

Repeat t his process for each of t he address component s. On t he final line t ype } t o end t he script . See t he image
below for guidance.

Creat ing Rules Exercise v5.0 - 1068 -


Once you’ve finished creat ing t he rule is, click Save .

The rule is added t o t he Rules sect ion (Propert ies panel).

Creat e a M andat ory If Rule


Select t he component t o be mandat ory based on specific condit ions (i.e. Email Address).

Click t he Creat e Rule but t on from t he Rules sect ion (Propert ies panel).

Select M andat ory If .

Creat ing Rules Exercise v5.0 - 1069 -


You can double-click component s on t he left side of t he Creat e Rule dialog t o add t hem t o t he script window
(right ) or t ype direct ly int o t he script window.

See t he image below for guidance.

Click Save .

Creat ing Rules Exercise v5.0 - 1070 -


Creating Shared Components Exercise v5.0
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing shared component s. During t his exercise you will cre-
at e a new shared component wit hin a form.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he M aest ro Exercise Project : M aest ro Training Exer-
cises > Creat e Component Finish . Please not e t hat t his form uses a shared component wit h a different name t o
t he one suggest ed in t he st eps below. Shared component s cannot have t he same name as ot her shared com-
ponent s wit hin t he same project .

If you have not already import ed t he Maest ro Exercise Project please visit Exercise Setup - Importing the Maestro
Exercise Files for more informat ion.

Step 1 Open Create Component Begin


1. Expand Organizat ion .
2. Expand Project .
3. Select Forms.
4. Double-click Creat e Component Begin .
5. Click t he Edit Version but t on t o open t he form

You can creat e component s direct ly from t he Component s folder, rat her t han from wit hin a form.

Step 2 Setup a Repeating Block and Add Components


Add a Repeat ing Block Templat e and component s t o t he Dependent s sect ion so it mat ches t he image below.

Creat ing Shared Component s Exercise v5.0 - 1071 -


The First Name and Last Name component s are wit hin t he Dependent 1 Repeat ing Block Templat e. Before
you add component s, make sure you add t he Repeat ing Block Templat e first , t hen add t he component s.

Step 3 Create Visibility Rule


Creat e a visibilit y rule so t hat t he repeat ing block does not show unless t he user select s Yes t o having dependent s.

Creat e t his rule on t he Repeat ing Block Templat e (see below).

Step 4 Wrap in block


Wrap all t he component s (i.e. Radio But t on component and Repeat ing Block) from t he Dependent s sect ion int o a
block. See t he image below for guidance.

Creat ing Shared Component s Exercise v5.0 - 1072 -


If more t han one component is going t o be part of a shared component , you must wrap t he relevant com-
ponent s int o a block. Your St ruct ure panel should look like t he image below.

Creat ing Shared Component s Exercise v5.0 - 1073 -


Step 5 Create a Shared Component
Creat e a shared component t hat combines t he component s you just creat ed. Your St ruct ure panel should mat ch
t he image below.

Use t he following det ails for t he shared component :

N ame : Dependent s_Exercise

Descript ion : Cont ains t he component s for applicant ’s dependent s.

Palet t e Folder : Cust om Component s

Inst ant Publish : Select Publish for immediat e use and select Replace it em wit h shared component

Publish Library : Select t he appropriat e project library (e.g. Maest ro Training Exercises Library)

Remember: t he inst ant publish opt ions will publish t he shared component t o t he library and replace t he exist -
ing ‘Block’ wit h t he shared component . This will ensure t he current form is updat ed if t he shared component
changes.

Creat ing Shared Component s Exercise v5.0 - 1074 -


To finish, click Save t o save t he Creat e Component Begin form - t hen close t he form.

Step 6 Edit a Shared Component

Import ant : make sure your refresh t he browser window (Press F5) t hat displays t he Management Dash-
board before you proceed.

From t he Maest ro Management Dashboard, open t he shared component you just creat ed and make a change t o
t he component .

1. Expand t he Organizat ion .


2. Expand t he Project .
3. Select Component s.
4. Double-click Dependent s_Exercise .
5. Click Edit Version t o open t he Component .

Add t he Dat e of Birt h dropdown t o t he repeat ing block. Your shared component should mat ch t he image below.

Not e t hat t he shared component won’t include form element s like t he navigat or or sect ions because it ’s not
linked t o a specific t emplat e.

Click Save t o save t he changes t o t he shared component .

Creat ing Shared Component s Exercise v5.0 - 1075 -


Step 7 Publish Updated Component
Once t he component has been updat ed, Publish it so t he changes are updat ed in forms current ly using t he com-
ponent as well as any new uses of t he shared component .

Use t he image below for guidance.

Once you publish t he updat ed component , Close t he Component window and Open t he Creat e Component
Begin form t o confirm t he changes t o t he component (below).

Creat ing Shared Component s Exercise v5.0 - 1076 -


Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Using a Repeat ing Block Tem plat e


The Repeat ing Block Templat e enables you t o easily set up repeat ing funct ionalit y.

Use t he Palet t e Search t o find t he Repeat ing Block Templat e .

Drag t he component ont o your form.

Add t he component s you want t o repeat int o t he field area of t he block.

To make adjust ment s t o t he Repeat ing Block propert ies, select Cont ent wit hin t he Repeat ing Block Templat e
(St ruct ure panel).

Creat ing Shared Component s Exercise v5.0 - 1077 -


Repeat It em Label: updat es t he label at t he t op of t he block, as well as t he but t on t ext .

Init ial It ems In Repeat : det ermines how many repeat ing component s are on t he form by default .

M in It ems In Repeat : det ermines t he minimum number of repeat ing component s t hat must be displayed on
t he form.

M ax It ems In Repeat : det ermines t he maximum number of repeat ing component s t he user can add t o t he
form.

Creat e a Show if Rule


The Show if rule allows you t o show or hide a component based on t he select ion of anot her.

St art by select ing t he component you want t o show or hide.

Click Creat e Rule in t he Rules sect ion of t he Propert ies panel.

Creat ing Shared Component s Exercise v5.0 - 1078 -


Select Show if (under Visibilit y ).

Right -click t he component t hat det ermines if t he select ed component is displayed or hidden and click Select ed
opt ion .

Creat ing Shared Component s Exercise v5.0 - 1079 -


In t he t op right corner of t he Select ed opt ion window, choose if t he opt ion should mat ch or not mat ch, t hen
select t he relevant opt ions.

Click OK t o close t he window.

The script for t he rule and select ed component s is displayed.

Click Save t o cont inue.

Wrap Com ponent s in a Block


If a shared component is made up of more t han one component , you must wrap t he relevant component s in a
block first , t hen creat e t he shared component .

Creat ing Shared Component s Exercise v5.0 - 1080 -


To wrap mult iple component s in a block, select all t he component s from t he st ruct ure panel using eit her SHIFT or
CTRL (see below).

Right -click one of t he select ed it ems and select Wrap in Block .

The Block is creat ed and t he component s are displayed wit hin.

Use t he Propert ies panel t o rename t he block.

Creat ing Shared Component s Exercise v5.0 - 1081 -


Creat e Shared Com ponent
Shared component s are st ored out side a form, in t he Component s folder of t he project . Once a Shared com-
ponent is published, it is st ored in a Library. Shared component s can be updat ed out side of a form. When t hey’re
updat ed, any forms using t hat component are updat ed aut omat ically.

To creat e a Shared Component , right -click t he block and select Share Component .

The Share Component window will display.

Creat ing Shared Component s Exercise v5.0 - 1082 -


N ame : is t he name of t he shared component displayed in t he Palet t e panel.

Descript ion : cont ains det ails about t he shared component like t he component s in cont ains.

Palet t e Folder : is t he folder where t he shared component is st ored wit hin t he Palet t e st ruct ure. If you ent er a
folder name t hat ’s already creat ed, t he shared component will be added t o t he folder. If you ent er a name not cur-
rent ly be used, a new folder will be creat ed.

Inst ant Publish – Publish for immediat e use : publishes t he shared component as soon as you click Save. This
adds t he component t o t he library, so ot her forms can access and use t he shared component .

Inst ant Publish – Replace it em wit h shared component : removes t he block current ly in t he form and
replaces it wit h t he shared component . This allows t he component in t he form t o be updat ed whenever changes
t o t he shared component occur.

Creat ing Shared Component s Exercise v5.0 - 1083 -


The St ruct ure panel is updat ed wit h t he new shared component and t he folder in t he Palet t e panel will cont ain
t he shared component .

Creat ing Shared Component s Exercise v5.0 - 1084 -


Layout Exercise v5.0
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for working wit h t he layout of your form. During t his exercise you
will use an exist ing form t o edit t he layout of component s.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises >
Layout Finish. If you have not already import ed t he Maest ro Exercise Project please visit Exercise Setup - Importing
the Maestro Exercise Files for more informat ion.

Step 1: Open the Existing Form Layout Begin.


1. In t he Navigat or Panel, expand t he Organizat ion .
2. Expand t he Project .
3. Select Forms.
4. Double-click Layout Begin .
5. Click t he Edit Version but t on t o open t he form.

Step 2: Adjust the Layout of Title, First Name and Last Name
On t he Applicant Det ails page, adjust t he component s so t hey appear on t he same line when viewing t he form on
large screens. Updat e t he ‘Your Det ails’ sect ion t o mat ch t he image below.

Set Tit le t o 2 columns wide.

Set First Name(s) t o 5 columns wide.

Layout Exercise v5.0 - 1085 -


Set Last Name t o 5 columns wide.

Set Ot her name known by (if any) t o 7 columns wide.

Set Phone Number t o 6 columns wide.

Set Email Address t o 6 columns wide.

Best pract ice: only change t he widt h values for t he Large and Full Screen sizes.
In t he Edit or, you’ll only see t he changes made t o t he Full screen size.
Use Preview t o check t he form and make any necessary adjust ment s.

Once you’ve made room on a row, you can drag a component int o posit ion if it doesn’t aut omat ically move t o t he
larger space.

Click Save .

Step 3: Adjust the Income Details Components


On t he Income and Expenses page, adjust t he component s so t hey appear on t heir own row.

Bot h component s are set t o 6 columns wide (for t he Large and Full Screen sizes).

Click Save .

Step 4: Adjust the Expenses Details Components


On t he Income and Expenses page, adjust t he component s so t hey appear as four columns on t he same row.

Set all four component s t o 3 columns wide.

Layout Exercise v5.0 - 1086 -


Once you’ve made room on a row, you can drag a component int o posit ion if it doesn’t aut omat ically move t o t he
larger space.

Click Save .

Step 5: Add a New Component to the Expense Details Section


In t he Expense Det ails sect ion, add a new Tot al Expenses component .

Not ice: t he currency symbol for Tot al Expenses is added by using t he Currency Field.

Set Tot al Expenses t o 5 columns wide.

Set t he Offset for Tot al Expenses t o 7 columns.

Click Save .

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Change t he layout of com ponent s


Select t he component you want t o change. Adjust t he Widt h values wit hin t he Layout sect ion (Propert ies panel) t o
make any changes.

Decrease t he column widt h for t he relevant screen size.

You will only see changes in t he Edit or when you adjust t he full screen layout .

Layout Exercise v5.0 - 1087 -


Change t he posit ion of com ponent s (using Offset )
Component s can be shift ed t o t he right or left wit hin t heir row. Select t he component you want t o change.

Adjust t he Offset values wit hin t he Layout sect ion (Propert ies panel) t o make any changes.

You can increase t he offset t o move t he component t o t he right or decrease t he offset t o move t he component t o
t he left .

Layout Exercise v5.0 - 1088 -


Add a Currency Field
The Currency Field component aut omat ically includes a currency symbol. Use Search in t he Palet t e t o find t he Cur-
rency Field and add (drag) it t o your form.

Use t he Propert ies panel t o make changes t o t he field, including t he currency icon used.

Layout Exercise v5.0 - 1089 -


Pages and Sections Exercise v5.0
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills wit h pages and sect ions. During t his exercise, you will use an exist -
ing form t o edit pages and sect ions as well as add new ones.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he M aest ro Exercise Project : M aest ro Training Exer-
cises > Pages and Sect ions Finish . If you have not already import ed t he Maest ro Exercise Project please
visit Exercise Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1 Create a New Version


Creat e a new version of t he exist ing form named Pages and Sect ions Begin .

Follow t he st eps below t o creat e t he new form.

1. Expand t he Organizat ion .


2. Expand t he Project .
3. Select Forms.
4. Select Pages and Sect ions Begin .
5. Click N ew Version .
6. Ent er t he following Form Descript ion :

Descript ion: This form version is t o pract ice working wit h sect ions.

7. Click Creat e .
8. Click Edit t o open t he form.

Step 2 Update the Names of the Existing Pages and Sections


In t his form, you will find t wo pages, each cont aining a sect ion. You will change t he names of bot h pages and t heir
sect ions.

Use t he St ruct ure panel t o select t he pages and sect ions you want t o updat e.

Starting Structure Panel Updated Structure Panel

Pages and Sect ions Exercise v5.0 - 1090 -


Updat e t he Sect ion - Addit ional Text (using t he supplied t ext ) so your form mat ches t he image below.

l Your Det ails: Ent er t he det ails about yourself, t he main applicant .
l Loan Det ails: Select t he det ails about t he t ype of loan you are applying for.

Step 3 Add a new section to the Applicant Details page


Add your new sect ion aft er t he exist ing sect ion on page one. Your St ruct ure panel should appear similar t o t he
image displayed.

Step 4 Add a New Page with Two Sections


Add a new page (called ‘Income and Expenses’) aft er t he exist ing pages. Add t wo sect ions t o t he page. Your St ruc-
t ure panel should mat ch t he image below.

Pages and Sect ions Exercise v5.0 - 1091 -


The Income and Expenses page should mat ch t he image below.

Not ice: t he addit ional t ext for t he Expense Det ails sect ion (t ext below).

Expense Det ails: Ent er your mont hly expenses for each cat egory. If an it em does not apply, please ent er ‘0’.

Step 5 Rearrange the Components


Using t he St ruct ure panel:

Pages and Sect ions Exercise v5.0 - 1092 -


l Move t he Address block t o t he Address Det ails sect ion.
l Move (i.e. drag and drop) t he income quest ions t o t he new Income Det ails sect ion on page t hree.
l Move t he expense quest ions t o t he new Expense Det ails sect ion on page t hree.

You can select mult iple component s at one t ime by using SHIFT or CTRL.

The image below shows how t he St ruct ure panel should look once t he component s have been rearranged.

Pages and Sect ions Exercise v5.0 - 1093 -


Step 6 Publish the Form
Click Publish on t he t oolbar t o publish your form. The publish set t ings should mat ch (or be like) t he image below.

Extra Help
Need some Ext ra Help?

Use t he informat ion below t o assist in complet ing t he exercise st eps.

Add a new page


Use t he Search box in t he Palet t e t o find t he Page component .

Drag t he Page component t o t he Cont ent cont ainer on t he St ruct ure panel.

Pages Groups and Pages cannot be added int o t he Edit or pane.

Pages and Sect ions Exercise v5.0 - 1094 -


You can also right -click t he Cont ent folder (St ruct ure panel) and choose Add Page Group.

Use t he Propert ies panel t o change t he name of t he page.

Add a new sect ion


Sect ions can be added t o pages t o help organize t he display of t he component s. Use t he Search box in t he Palet t e
t o find t he Sect ion component (or look under ‘Favourit es’). Drag t he Sect ion component t o t he Page cont ainer on
t he St ruct ure panel.

You can also drag a new ‘Sect ion’ component ont o t he form.

Use t he Propert ies panel t o change t he name of t he sect ion.

Pages and Sect ions Exercise v5.0 - 1095 -


Addit ional Text
Use t he Propert ies panel t o cust omize t he t ext below t he sect ion t it le.

In t he Propert ies panel, ent er t ext in t he Addit ional Text ent ry box.

You can click t he Edit but t on t o display t he Addit ional Text window. Here you can edit and format t he addit ional
t ext displayed on t he form.

Rearrange Com ponent s


Use t he St ruct ure panel t o drag and drop component s bet ween pages and/ or sect ions.

Pages and Sect ions Exercise v5.0 - 1096 -


Select mult iple component s at one t ime using SHIFT or CTRL. Once select ed, you can drag t hem t o a different con-
t ainer.

Select adjacent component s using SHIFT (below)

Select non-adjacent component s using CTRL (below)

Pages and Sect ions Exercise v5.0 - 1097 -


Pages and Sect ions Exercise v5.0 - 1098 -
Repeating and Shared Components Exercise v5.0
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for using repeat ing component s and shared component s. During
t his exercise you will use an exist ing form t o add repeat ing and shared component s.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises >
Repeat ing and Shared Component s Finish. If you have not already import ed t he Maest ro Exercise Project please
visit Exercise Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1 Open the Existing Form ‘Repeating and Shared Components Begin’
1. Expand t he Organizat ion .
2. Expand t he Project .
3. Select Forms.
4. Double-click Repeat ing and Shared Component s Begin .
5. Click t he Edit Version but t on t o open t he form

Step 2 Add a New Page with Sections to Your Form


Add a new Page called Asset Det ails.

Add t wo new Sect ions t o t his page called Propert y Det ails and Vehicle Det ails.

Your St ruct ure panel should mat ch t he image below.

Click Save .

Repeat ing and Shared Component s Exercise v5.0 - 1099 -


Step 3 Add Components to the Page
Add component s t o t he new page so it mat ches t he image below.

Not ice: t he Address 1 block and Propert y Value component are wit hin a Repeat ing Block Templat e. Before
you add component s t o t he page, you should add t he Repeat ing Block Templat e first , t hen add t he com-
ponent s t o t he block.

Creat e a Show if rule t o only show t he Repeat ing Block Templat es when t he user select s Yes t o owning Propert y or
a Vehicle.

Click Save .

Repeat ing and Shared Component s Exercise v5.0 - 1100 -


Step 4 Add a Shared Component
Add t he Maguire Cust omer shared component t o t he bot t om of t he Your Det ails sect ion.

Click Save .

Repeat ing and Shared Component s Exercise v5.0 - 1101 -


Shared component s can be st ored anywhere in t he Palet t e, so use t he Search if you’re unsure of a com-
ponent ’s locat ion.

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Add a new Page and Sect ion


Display t he Palet t e and St ruct ure panels side by side (use but t on in t op left ).

Search for t he Page component and drag it ont o t he Cont ent folder (St ruct ure panel). Drag t he new Page int o t he
correct order.

Drag t wo new Sect ion component s ont o t he new Page.

Using a Repeat ing Block Tem plat e


The Repeat ing Block Templat e includes all of t he necessary it ems t o easily set up repeat ing funct ionalit y.

Use t he Palet t e Search t o find t he Repeat ing Block Templat e (see below).

Repeat ing and Shared Component s Exercise v5.0 - 1102 -


Drag t he component ont o your form.

You can add t he component s you want t o repeat int o t he field area of t he repeat ing block.

To make any adjust ment s t o your repeat ing block, select Cont ent wit hin t he Repeat ing Block Templat e (St ruct ure
panel).

Wit h Cont ent select ed you can edit values in t he Propert ies panel.

Repeat ing and Shared Component s Exercise v5.0 - 1103 -


Repeat It em Label: t his updat es t he label at t he t op of t he block, as well as t he but t on t ext .

Init ial It ems In Repeat : det ermines how many repeat ing component s are on t he form by default .

Min It ems In Repeat : det ermines t he minimum number of repeat ing component s t hat must be displayed on t he
form.

Max It ems In Repeat : det ermines t he maximum number of repeat ing component s a user can add t o t he form.

Using a Shared Com ponent


Shared component s are st ored out side of a form, in t he Component s folder wit hin t he project . A shared com-
ponent can be updat ed out side t he form. When updat es are made, all forms using t hat component are updat ed
aut omat ically.

Use Search in t he Palet t e t o locat e t he shared component you want t o use.

Drag t he shared component t o t he form. The shared component will be added.

Repeat ing and Shared Component s Exercise v5.0 - 1104 -


The shared component will cont ain t he component s along wit h any cust om propert ies.

Repeat ing and Shared Component s Exercise v5.0 - 1105 -


Rules without Scripting Exercise v5.0
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing rules wit hout script ing. During t his exercise you will
use an exist ing form t o add non-script ed rules.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises >
Rules wit hout Script ing Finish. If you have not already import ed t he Maest ro Exercise Project please visit Exercise
Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1 Open the existing form Rules without Scripting Begin.


1. Expand t he Organizat ion .
2. Expand t he Project .
3. Select Forms.
4. Double-click Rules wit hout Script ing Begin .
5. Click Edit Version t o open t he form.

Step 2 Create a Rule for Income Details


Creat e a Show If rule t hat displays t he ‘yearly income’ component if t he ‘employment st at us’ is set t o ‘Employed’ or
‘Self-Employed’.

Click Save .

Step 3 Calculate the Total of the Four Expenses in the Expense Details Section
Calculat e t he t ot al of t he four expenses in t he Tot al Expenses field.

Rules wit hout Script ing Exercise v5.0 - 1106 -


Set up anot her rule t o make Tot al Expenses read only.

Click Save .

Step 4 Add the Driver License Components to the Your Details Section.
Add t he Driver License component s shown below.

Click Save .

Step 5 Create a Rule for Driver License


Wrap t he Driver’s License Number and Driver’s License Issuing St at e component s int o a block, t hen add a Show If
rule so t he component s only display when t he user select s Yes t o having a driver’s license.

Rules wit hout Script ing Exercise v5.0 - 1107 -


Click Save .

Import ant : you should wrap Driver’s License Number and Driver’s License Issuing St at e in a block before cre-
at ing t he rule. This way you only have t o apply t he rule t o t he block, rat her t han applying t o individual com-
ponent s.

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Creat e a Show If Rule


A Show If rule allows you t o show or hide a component based on t he select ion of anot her component .

Select t he component you want t o show or hide.

Click Creat e Rule in t he Rules sect ion (Propert ies panel).

Select Show If.

Rules wit hout Script ing Exercise v5.0 - 1108 -


Right -click t he component t hat det ermines if t he select ed component is displayed or hidden and click Select ed
opt ion.

In t he t op right corner of t he Select ed opt ion window, select if t he opt ion should mat ch or not mat ch, t hen select
t he relevant opt ions.

Click OK.

Rules wit hout Script ing Exercise v5.0 - 1109 -


The script for t he rule and select ed component s is displayed. Click Save.

Creat e a Script Rule


A Script rule will perform calculat ions based on select ed component s. Select t he component where t he calculat ion
will be displayed. Click Creat e Rule in t he Rules sect ion (Propert ies panel).

Rules wit hout Script ing Exercise v5.0 - 1110 -


Click Script .

Double click each component you want t o use in t he calculat ion. Include a plus sign ( + ) bet ween t he component s.

The select ed component s will display in t he list . Click Save .

Wrap Com ponent s in a Block


You can wrap component s in a block t o easily manage relat ed component s.

Select t he component s in t he St ruct ure panel you want t o wrap in a block.

Rules wit hout Script ing Exercise v5.0 - 1111 -


Right -click one of t he select ed component s and click Wrap in Block.

Wit h t he block select ed, use t he Propert ies panel t o rename t he block.

Rules wit hout Script ing Exercise v5.0 - 1112 -


Rules wit hout Script ing Exercise v5.0 - 1113 -
Two Level Navigation Exercise v5.0
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for working wit h t wo level navigat ion. During t his exercise you will
creat e page groups, which will allow you t o use t wo level navigat ion wit hin your form.

Do your best t o follow t he provided informat ion and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises >
Two Level Navigat ion Finish. If you have not already import ed t he Maest ro Exercise Project please visit Exercise
Setup - Importing the Maestro Exercise Files for more informat ion.

Step 1 Open Two-Level Navigation Begin


1. Expand t he Organizat ion .
2. Expand t he Project .
3. Select Forms.
4. Double-click Two Level N avigat ion Begin .
5. Click Edit Version t o open t he form

Step 2 Add Page Groups to the Form


Add Page Groups t o t he form, t hen move t he relevant pages int o each group. Your St ruct ure panel should mat ch
t he Aft er image below.

Before After

To add a Page Group, you need t o drag t he component from t he Palet t e panel ont o t he St ruct ure panel.

Page groups cannot be dragged direct ly ont o a form or t emplat e.

Not ice: some of t he pages have been rearranged.

Click Save .

Two Level Navigat ion Exercise v5.0 - 1114 -


Step 3: Rename Pages
Rename t he Pages added t o each Page Group. Your St ruct ure panel should mat ch t he image below.

Step 4 Set Second Level Navigator to Equal Width


Change t he widt h of t he Pages on t he second level navigat or so t hat t hey are equal. Your second level navigat or
should mat ch t he image below.

Before

After

To change t he widt h of t he Second Level Navigat or:

1. Click Form Opt ions.


2. Select N avigat or Second Level.
3. Select Equal Widt h.
4. Check Equal Widt h .
5. Click Save .

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Two Level Navigat ion Exercise v5.0 - 1115 -


Using a Page Group
Page Groups let you group pages t oget her. Adding page groups aut omat ically creat es a t wo level navigat ion. Each
page group is displayed on t he first level navigat or and any pages in t he page group are displayed on t he second
level navigat or.

Use Search t o find t he Page Groups.

Drag t he component ont o t he St ruct ure panel.

Use t he Propert ies panel t o rename t he page group.

The Page Group label is aut omat ically used for t he first level navigat or. If you want t he label and menu t ext dif-
ferent , change t he menu t ext in t he Opt ions sect ion on t he Propert ies panel.

In t he St ruct ure panel, drag t he pages you want grouped ont o t he page group component .

Set t he Second Level Navigat or t o equal widt hs


By default , t he widt h of Second Level Navigat or menu it ems is det ermined by t he lengt h of t he menu t ext . You can
change t his, so each menu it em t akes up t he same widt h.

Click t he Form Opt ions but t on (t owards t he t op of t he Design window).

Expand Navigat or Second Level.

Two Level Navigat ion Exercise v5.0 - 1116 -


Select Equal Widt h.

Check Equal Widt h, t hen click Save.

Two Level Navigat ion Exercise v5.0 - 1117 -


Two Level Navigat ion Exercise v5.0 - 1118 -
Validation Rules Exercise v5.0
Journey Platform | Form Builder | v5.1 & Higher

This exercise will allow you t o pract ice your skills for creat ing validat ion rules. During t his exercise you will creat e a
new form and add component s. You will t hen creat e rules on t he added component s.

Do your best t o follow t he informat ion provided and complet e each st ep.

If you get st uck, you can always re-wat ch any of t he online t raining modules. This is a good way t o refresh your
form building skills. You’ll also find Ext ra Help at t he end of t his exercise, which cont ains addit ional informat ion t o
help you complet e t he exercise.

You can find a sample of t he complet ed exercise form in t he Maest ro Exercise Project : Maest ro Training Exercises >
Validat ion Rules Finish. If you have not already import ed t he Maest ro Exercise Project please visit Exercise Setup -
Importing the Maestro Exercise Files for more informat ion.

Step 1 Open Validation Rules Begin


1. Expand t he Organizat ion .
2. Expand t he Project .
3. Select Forms.
4. Double-click Validat ion Rules Begin .
5. Click Edit Version t o open t he form.

Step 2 Create a Valid If Rule


Use t he Valid If rule for t he Cust omer Number. Creat e a rule where t he Cust omer Number is valid if great er t han
10000.

Validat ion Rules Exercise v5.0 - 1119 -


Cust omer Number cont ains a visibilit y rule. You won’t see t his field in preview unt il you select Yes for t he ques-
t ion ‘Are you an exist ing cust omer?’

Step 3 Create a Regular Expression Validation Rule


You can search t he Regular Expression Library (http://regexlib.com ) t o locat e predefined expressions t o use in
your Maest ro form.

Set up a Regular Expression rule t o validat e t he Social Securit y Number component . An example expression is
included in t he image below.

Validat ion Rules Exercise v5.0 - 1120 -


Example Regular expression : ^(?!219-09-9999|078-05-1120)(?!666|000|9\d{2})\d{3}-(?!00)\d
{2}-(?!0{4})\d{4}$

Example M at ch Fails message : Please ent er a number using t his format ###-##-####

Once t he validat ion rule is creat ed, click Save and Preview t he form.

Try ent ering t his number first : 123-4-5678

Then t ry t his number : 123-45-6789

Extra Help
Need some ext ra help?

Use t he informat ion below t o assist you in complet ing t he exercise st eps.

Creat e a Valid if rule


1. Select t he component t o cont ain t he validat ion rule.

2. Click Creat e Rule t hen select Valid if .


3. Type if (.

4. Double-click t he (Cust omer Number) component t o add data.customerNumber t o t he script window.

5. Type < 10000) t hen press Ent er.

6. Type return "Please enter a valid Customer Number.";.

Validat ion Rules Exercise v5.0 - 1121 -


7. Click Save .

Creat e a Regular Expression rule


1. Launch t he Regular Expression Library - http://regexlib.com
2. Locat e t he pre-defined expression you want t o use.
3. Copy t he expression, t hen ret urn t o t he Maest ro form.
4. Select t he component t o cont ain t he validat ion rule.

5. Click Creat e Rule t hen select Regular Expression .


6. Past e t he pre-defined expression in t he M ust M at ch t his expression box.
7. Ent er an appropriat e failure message.

Validat ion Rules Exercise v5.0 - 1122 -


8. Click Save .

Validat ion Rules Exercise v5.0 - 1123 -


Exercise - Assign an Entity to multiple items
You can assign an Entity to multiple items at once using the Structure panel.

Step 1: Add a Section and Components


1. To go to Page Two, display the Structure panel and click Page Two (for the ‘Exercise – Entities’ form)

2. Add a new section to form called ‘HomeAddress’

3. Add (and name) the following ‘text field’ components to the ‘Address’ Section:
• StreetNumber
• StreetName
• Suburb
• PostCode
• Country

4. Display the Entities panel and confirm the new components are ‘Not Assigned’ to any Entities
Step 2: Assign an Entity to multiple items
To apply the ‘location’ Entity to the new components, we need to assign it to the ‘Home Address’ section first, i.e. where all the
components are located.
1. Select the ‘Home Address’ Section (the ID Property should show ’homeAddress’)
2. Use the ID property field to assign the ‘location’ Entity to the Section

3. Display the ‘Structure’ panel > right-click the ‘homeAddress’ Section and choose ‘Apply Entity Path to Children’

4. Display the ‘Entities’ panel and confirm the components are assigned to the ‘location’ Entity

5. Select each component in the form and confirm the IDs have all been assigned to the ‘location’ Entity

6. Click Save
Close the form (Browser Tab)
Exercise - Create an Entity (Entity panel)
You can create a new Entity in the Entities panel by ‘right-clicking’ where you want the new Entity to be placed.

Step 1: Create an Entity (Entities panel)


1. Make sure the ‘Exercise – Entities’ form is displayed in Design view
2. Make sure the Entities panel is visible

3. Right-click the ‘Entities’ icon


4. Choose ‘Add Entity’
5. Note: the ‘Create New Entity’ dialog is displayed
6. Enter ‘location’ for the Entity name and click Save
7. The new ‘location’ Entity now appears in the panel

Step 2: Create a ‘nested’ Entity (Entities panel)


You can also create a nested Entity in the Entities panel.
1. Right-click the ‘location’ Entity
2. Click ‘Add Entity’
3. Enter ‘phone’ for the new nested Entity name and click Save
4. Expand the ‘location’ Entity to display the new nested ‘phone’ Entity

5. Add a new ‘Text Field’ component beneath ‘Email’


6. Use the ID Property field to add this to the nested ‘phone’ Entity and name it ‘HomePhone’

7. Display the ‘Entities’ panel to confirm the ‘Home Phone’ component is related to the nested ‘phone’ Entity

Click Save
Exercise - Create an Entity (ID field)
This exercise will demonstrate how to create an Entity directly in the ID field.

Step 1: Create a form


1. Make sure the Navigator Panel is visible
2. Select Forms
3. Click ‘Create Form’
4. Enter the follow details:
• Form Name: Exercise - Entities
• Description: This form is to demonstrate how to work with Entities.
• Template: Training Template
5. Click ‘Create’
6. Note: a new form should display (new window tab) in Design view

Step 2: Create an Entity


1. Make sure the Palette panel is visible
2. Add a new ‘Text Field’ into the ‘About You’ section
3. Notice: the focus is set by default to the ID property (Properties panel)

4. To create a new Entity, enter ‘applicant’ followed by an underscore, ‘_’


5. Notice: after you enter underscore (_) an inline warning displays beneath ‘An Entity called applicant will be created’

6. Enter ‘FirstName’ as the ID (after the underscore) then press TAB or click away.
7. Notice: the Label Property displays as ‘First Name’ (without the Entity name)

8. Display the ‘Entities’ panel and notice the ‘applicant’ Entity with one related ‘FirstName’ component

9. Click Save
Step 3: Assign an Entity
An existing Entity can be assigned to a new component using the ID field.
1. Add another ‘Text Field’ component beneath ‘First Name’
2. Enter the first few letters of ‘applicant’ in the ID property field, i.e. ‘app’
3. Notice: as you type, any matching Entities will display in an inline dropdown menu

4. Select ‘applicant’ to populate the ID Property field


5. Enter ‘LastName’ (after the underscore) for the ID name.
6. Notice: the label name displays as ‘Last Name’ only
7. Display the ‘Entities’ panel and confirm the ‘applicant’ Entity now has two related components

Step 4: Create a nested Entity


You can create Entities within Entities, i.e. a nested Entity.
1. Add another new ‘Text Field’ beneath ‘Last Name’
2. Enter the first few letters of ‘applicant’ in the ID property field
3. Select the ‘applicant’ Entity
4. Enter ‘work_’ as the new nested Entity, e.g. ‘applicant1_work_’
5. Notice: after you enter the second underscore (_) an inline warning displays beneath ‘An Entity called work will be created’

6. Enter ‘Email’ for the ID name, e.g. ‘applicant1_work_Email’


7. Press Tab or click away from the ID property field
8. Notice: the label name displays as ‘Email’ only
9. Display the ‘Entities’ panel and confirm the nested ‘work’ Entity with one related component

10. Click Save

Please note: any existing IDs with an underscore will not automatically cause Entities to be created. Entities will only be created when
you modify an existing ID. Any underscores followed by one or more digits (like suffixes applied by auto-generated IDs) will also be
ignored.
Exercise - Delete an Entity
You can delete Entities using the Entities panel.
Please note: You can’t delete an Entity if any component IDs use that Entity.
1. Your task is to delete the ‘phone’ Entity, but you’ll need to delete or re-assign any related components.
2. For this exercise, delete the ‘Home Phone’ component on the form
3. Notice: the ‘phone’ Entity no longer has any related component IDs

4. Right-click the ‘phone’ Entity and choose ‘Delete Entity’


5. Click ‘OK’ to confirm
6. The Entity has now been deleted from the Entities panel
7. Click Save
Exercise - Duplicate IDs
This exercise will demonstrate the new duplicate ID functionality. You will:
1. Create a duplicate ID and ‘Review’
2. Create a duplicate ID and ‘Accept’

Step 1: Add a component with a duplicate ID and ‘Review’


1. Note: Make sure the form you created for the 'ID Management exercise' is open
2. Add a new ‘Text Field’ into the ‘About You’ section (beneath ‘First Name’)
3. Update the ID Property to ‘FName’
4. An inline warning confirms ‘Value generates to a duplicate ID’
Note: IDs are case sensitive - if you enter 'fname' instead of 'FName', the inline warning will not display

5. At this point, you can either modify the ID property directly in the field
6. Or if you ‘TAB’ (or click away), a popup will prompt you to ‘Review’ the duplicate ID or ‘Accept’ a suffix

7. For this example, click ‘Review’ and update the ‘ID’ property to ‘MiddleName’

8. Choosing ‘Review’ would let you modify the ID property so that it doesn't cause a duplicate.
Step 2: Add a component with a duplicate ID and ‘Accept’
1. Add a new ‘Text Field’ into the ‘About You’ section (beneath ‘Middle Name’)
2. Update the ID Property ‘MiddleName’ and TAB away
3. For this example, click ‘Accept’ in the popup
4. Choosing ‘Accept’ appends a suffix to the ID Property (i.e. middleName_1)

5. Click ‘Save’
6. Close the form, i.e. the browser tab

Please Note: If you choose ‘Accept’ for duplicate IDs, the ‘XML Name’ and ‘Full Path’ properties (on the ‘Integration’ panel) keep their
default names (i.e. ‘TextField’). To update these properties, you’ll need to uncheck ‘Use Auto-generated XML Name’ and manually
update the ‘XML Name’.
Exercise - ID Management
This exercise will demonstrate the updated functionality for component IDs. You will:
 create a new form
 add a new component
 update the component ID

Step 1: Create a new form


1. Expand the ‘Organization’ (Navigator Panel)
2. Expand the ‘Project’ (Upgrade to Transact Release 17.10)
3. Select ‘Forms’

4. Click the ‘Create Form’ button


5. Enter the following details:
• Form Name: Exercise - ID Management
• Description: This form is to demonstrate the new ID features.
• Template: Training Template
6. Click the ‘Create’ button
7. Note: The form Design view should open in a new Tab

Step 2: Add a new ‘Text Field’ component


1. Make sure the ‘Palette’ panel is displayed
2. Add a new ‘Text Field’ into the ‘About You’ section
3. Note: the initial focus is set to the ID Property field

Step 3: Update the component


1. Update the ‘ID’ Property value to ‘FirstName’
2. Note: The ‘Label’ Property has automatically updated to ‘First Name’
3. Click the ‘Integration’ tab
4. Note: the ‘XML Name’ and ‘Full Path’ properties have updated to the new ‘ID’
5. Click the ‘Properties’ tab
6. Update the ‘ID’ Property to ‘FName’ (then TAB or click away)
7. Note: this time the ‘ID’ Property updates but the ‘Label’ Property remains unchanged. The ‘Label’ only updates when the default
‘ID’ Property is entered.
8. Click the ‘Integration’ tab
9. Note: the ‘XML Name’ and ‘Full Path’ properties have updated to the latest ‘ID’ (i.e. ‘FName’)
10. Click ‘Save’

Please note: If the ‘Use Auto-generated XML Name’ Property is not checked, the ‘XML Name’ and ‘Full Path’ properties won’t update if
the ID changes. These properties will need to be manually updated if required.
Exercise - Impact Analysis
The following exercise will involve the ‘Order’ form.

Step 1: Open the Order form


From the Maestro Transact Management Dashboard:
1. Expand the ‘Upgrade to Transact Release 17.10’
2. Expand ‘Forms’ and select ‘Order Form’
3. Click the ‘Edit Version’ button

4. The ‘Order Form’ should open in a new browser tab

Step 2: Review the current references


Inspect references for the ‘First Name’ field.
1. Right-click the ‘First Name’ text field (in the form)
2. Choose ‘Show References to firstName’
3. Confirm one existing reference to the ‘FullName’ item

4. Click ‘Close’ (to close the window)

Step 3: Add a new Text Field that references ‘First Name’


Add a new Text Field to ‘Page Two’ that references the ‘First Name’ Text Field
1. Display the ‘Structure’ panel
2. Select ‘Page Two’ from the form structure
3. Re-display the ‘Palette’ panel
4. Add a new Text Field to the Page Two ‘Section’
5. Update the ID Property to ‘FirstNameP2’ and press TAB (focus moves to Label Property)
6. Update the Label Property to ‘First Name’ and press TAB
7. With the new Text Field selected, click ‘Create Rule’ (bottom of Properties panel)
8. Click ‘Script’ (under ‘Calculation’)
9. In the navigator column (on the left), expand ‘Page One’, then expand the first ‘Section’

10. Double-click ‘First Name’ to setup a reference to this component, i.e. ‘data.firstName’
11. Click ‘Save’ (to close the window), then Save the form
12. Click ‘Preview’ to test the new reference, i.e. enter a ‘First Name’ on Page One and confirm it displays in ‘First Name’ on Page Two
13. When you’re ready, switch back to Design view

Step 4: Review the updated references


Inspect the references for the ‘First Name’ field on Page One
1. Display the ‘Structure’ panel
2. Select ‘Page One’ from the form structure
3. Re-display the ‘Palette’ panel
4. Right-click ‘First Name’ and click ‘Show References to ‘First Name’
5. Confirm a second reference to ‘firstNameP2’ (on Page Two) now exists

6. Click ‘Close’ (to close the dialog)


7. Click Save then close the form (i.e. the Browser Tab)
Exercise - Semantic Versioning
This exercise will demonstrate how to create multiple semantic versions of a form.

Step 1: Update the 1.0-develop version


1. Select the ‘Exercise - Entities’ form in the Navigator panel
2. Click ‘Edit Version’ to open the form
3. Add a new text field to the ‘Getting Started’ section called ‘PhoneNumber’

4. Save and Close the form (Browser Tab)

Step 2: Create a ‘Tagged’ version


Create the first read-only tagged version (based on ‘1.0-develop’)
1. Select the ‘Exercise - Entities’ form in the Navigator panel
2. Click ‘New Tag’

3. Confirm the new Semantic Version number is 1.0.1


4. Enter Description: ‘This is the first tagged version.’
5. Click ‘Create’

6. Expand the ‘Exercise – Entities’ form in the Navigator panel and confirm the tagged 1.0.1 version is displayed
Step 3: Open the ‘Tagged’ version
1. Select the ‘Exercise - Entities’ form in the Navigator panel
2. Select the ‘1.0.1’ tagged version (note the ‘tick’ icon)

3. Click ‘Edit Version’ to open the form


4. Notice: the Palette panel is empty, i.e. you can’t add new or delete existing components
5. Close the form (Browser Tab)

Step 4: Update the 1.0-develop version


Remember: all changes and updates are completed in 1.0-develop
1. Select the ‘Exercise - Entities’ form in the Navigator panel
2. Select the ‘1.0-develop’ version
3. Click ‘Edit Version’ to open the form

4. Add a new text field to the ‘Getting Started’ section called ‘FaxNumber’

5. Save and Close the form (Browser Tab)

Step 5: Create another ‘Tagged’ version


Create another read-only version (based on ‘1.0-develop’)
1. Select the ‘Exercise - Entities’ form in the Navigator panel
2. Select the ‘1.0-develop’ version
3. Click ‘New Tag’
4. Confirm the new Semantic Version number is 1.0.2
5. Enter Description: ‘This is the second tagged version.’

6. Click ‘Create’

Expand the ‘Exercise – Entities’ form in the Navigator panel and confirm the tagged 1.0.2 version is displayed
Exercise - Upgrade a project
You can upgrade an existing project to the latest Maestro release from the Management Dashboard.

Step 1: Import a project


To upgrade a project, you’ll need to add a legacy project to your organization first.
1. Download this sample project (zipped folder)
2. Remember where the project is stored, e.g. ‘Downloads’
3. Navigate to the Maestro webpage
4. Expand Home (in Navigator Panel)
5. Select the Organization (the Organisation maybe your own name e.g. jsmith
6. Click ‘Import Legacy Project’
7. Name the project - ‘Legacy Project’
8. Click Import
9. Navigate to the location of the sample project
10. Select the project and click Open
11. The imported project should now appear under your organization

Step 2: Upgrade the project


1. Select ‘Legacy Project’ project in the Navigator
2. Click the Project Details tab
3. Display the ‘Release Version’ dropdown and choose ’17.10.0’
4. Note: When you select a new version, a warning message confirms you can’t change the release version back to a previous
version once the Project Details are saved

5. Click OK in the warning message


6. Click Save
7. The project has now been upgraded
Notice: The Release Version dropdown no longer displays any previous release versions
Exercise - Assign an Entity to multiple items
You can assign an Entity to multiple items at once using the Structure panel.

Step 1: Add a Section and Components


1. To go to Page Two, display the Structure panel and click Page Two (for the ‘Exercise – Entities’ form)

2. Add a new section to form called ‘HomeAddress’

3. Add (and name) the following ‘text field’ components to the ‘Address’ Section:
• StreetNumber
• StreetName
• Suburb
• PostCode
• Country

4. Display the Entities panel and confirm the new components are ‘Not Assigned’ to any Entities
Step 2: Assign an Entity to multiple items
To apply the ‘location’ Entity to the new components, we need to assign it to the ‘Home Address’ section first, i.e. where all the
components are located.
1. Select the ‘Home Address’ Section (the ID Property should show ’homeAddress’)
2. Use the ID property field to assign the ‘location’ Entity to the Section

3. Display the ‘Structure’ panel > right-click the ‘homeAddress’ Section and choose ‘Apply Entity Path to Children’

4. Display the ‘Entities’ panel and confirm the components are assigned to the ‘location’ Entity

5. Select each component in the form and confirm the IDs have all been assigned to the ‘location’ Entity

6. Click Save
Close the form (Browser Tab)
Exercise - Create an Entity (Entity panel)
You can create a new Entity in the Entities panel by ‘right-clicking’ where you want the new Entity to be placed.

Step 1: Create an Entity (Entities panel)


1. Make sure the ‘Exercise – Entities’ form is displayed in Design view
2. Make sure the Entities panel is visible

3. Right-click the ‘Entities’ icon


4. Choose ‘Add Entity’
5. Note: the ‘Create New Entity’ dialog is displayed
6. Enter ‘location’ for the Entity name and click Save
7. The new ‘location’ Entity now appears in the panel

Step 2: Create a ‘nested’ Entity (Entities panel)


You can also create a nested Entity in the Entities panel.
1. Right-click the ‘location’ Entity
2. Click ‘Add Entity’
3. Enter ‘phone’ for the new nested Entity name and click Save
4. Expand the ‘location’ Entity to display the new nested ‘phone’ Entity

5. Add a new ‘Text Field’ component beneath ‘Email’


6. Use the ID Property field to add this to the nested ‘phone’ Entity and name it ‘HomePhone’

7. Display the ‘Entities’ panel to confirm the ‘Home Phone’ component is related to the nested ‘phone’ Entity

Click Save
Exercise - Create an Entity (ID field)
This exercise will demonstrate how to create an Entity directly in the ID field.

Step 1: Create a form


1. Make sure the Navigator Panel is visible
2. Select Forms
3. Click ‘Create Form’
4. Enter the follow details:
• Form Name: Exercise - Entities
• Description: This form is to demonstrate how to work with Entities.
• Template: Training Template
5. Click ‘Create’
6. Note: a new form should display (new window tab) in Design view

Step 2: Create an Entity


1. Make sure the Palette panel is visible
2. Add a new ‘Text Field’ into the ‘About You’ section
3. Notice: the focus is set by default to the ID property (Properties panel)

4. To create a new Entity, enter ‘applicant’ followed by an underscore, ‘_’


5. Notice: after you enter underscore (_) an inline warning displays beneath ‘An Entity called applicant will be created’

6. Enter ‘FirstName’ as the ID (after the underscore) then press TAB or click away.
7. Notice: the Label Property displays as ‘First Name’ (without the Entity name)

8. Display the ‘Entities’ panel and notice the ‘applicant’ Entity with one related ‘FirstName’ component

9. Click Save
Step 3: Assign an Entity
An existing Entity can be assigned to a new component using the ID field.
1. Add another ‘Text Field’ component beneath ‘First Name’
2. Enter the first few letters of ‘applicant’ in the ID property field, i.e. ‘app’
3. Notice: as you type, any matching Entities will display in an inline dropdown menu

4. Select ‘applicant’ to populate the ID Property field


5. Enter ‘LastName’ (after the underscore) for the ID name.
6. Notice: the label name displays as ‘Last Name’ only
7. Display the ‘Entities’ panel and confirm the ‘applicant’ Entity now has two related components

Step 4: Create a nested Entity


You can create Entities within Entities, i.e. a nested Entity.
1. Add another new ‘Text Field’ beneath ‘Last Name’
2. Enter the first few letters of ‘applicant’ in the ID property field
3. Select the ‘applicant’ Entity
4. Enter ‘work_’ as the new nested Entity, e.g. ‘applicant1_work_’
5. Notice: after you enter the second underscore (_) an inline warning displays beneath ‘An Entity called work will be created’

6. Enter ‘Email’ for the ID name, e.g. ‘applicant1_work_Email’


7. Press Tab or click away from the ID property field
8. Notice: the label name displays as ‘Email’ only
9. Display the ‘Entities’ panel and confirm the nested ‘work’ Entity with one related component

10. Click Save

Please note: any existing IDs with an underscore will not automatically cause Entities to be created. Entities will only be created when
you modify an existing ID. Any underscores followed by one or more digits (like suffixes applied by auto-generated IDs) will also be
ignored.
Exercise - Delete an Entity
You can delete Entities using the Entities panel.
Please note: You can’t delete an Entity if any component IDs use that Entity.
1. Your task is to delete the ‘phone’ Entity, but you’ll need to delete or re-assign any related components.
2. For this exercise, delete the ‘Home Phone’ component on the form
3. Notice: the ‘phone’ Entity no longer has any related component IDs

4. Right-click the ‘phone’ Entity and choose ‘Delete Entity’


5. Click ‘OK’ to confirm
6. The Entity has now been deleted from the Entities panel
7. Click Save
Exercise - Duplicate IDs
This exercise will demonstrate the new duplicate ID functionality. You will:
1. Create a duplicate ID and ‘Review’
2. Create a duplicate ID and ‘Accept’

Step 1: Add a component with a duplicate ID and ‘Review’


1. Note: Make sure the form you created for the 'ID Management exercise' is open
2. Add a new ‘Text Field’ into the ‘About You’ section (beneath ‘First Name’)
3. Update the ID Property to ‘FName’
4. An inline warning confirms ‘Value generates to a duplicate ID’
Note: IDs are case sensitive - if you enter 'fname' instead of 'FName', the inline warning will not display

5. At this point, you can either modify the ID property directly in the field
6. Or if you ‘TAB’ (or click away), a popup will prompt you to ‘Review’ the duplicate ID or ‘Accept’ a suffix

7. For this example, click ‘Review’ and update the ‘ID’ property to ‘MiddleName’

8. Choosing ‘Review’ would let you modify the ID property so that it doesn't cause a duplicate.
Step 2: Add a component with a duplicate ID and ‘Accept’
1. Add a new ‘Text Field’ into the ‘About You’ section (beneath ‘Middle Name’)
2. Update the ID Property ‘MiddleName’ and TAB away
3. For this example, click ‘Accept’ in the popup
4. Choosing ‘Accept’ appends a suffix to the ID Property (i.e. middleName_1)

5. Click ‘Save’
6. Close the form, i.e. the browser tab

Please Note: If you choose ‘Accept’ for duplicate IDs, the ‘XML Name’ and ‘Full Path’ properties (on the ‘Integration’ panel) keep their
default names (i.e. ‘TextField’). To update these properties, you’ll need to uncheck ‘Use Auto-generated XML Name’ and manually
update the ‘XML Name’.
Exercise - ID Management
This exercise will demonstrate the updated functionality for component IDs. You will:
 create a new form
 add a new component
 update the component ID

Step 1: Create a new form


1. Expand the ‘Organization’ (Navigator Panel)
2. Expand the ‘Project’ (Upgrade to Transact Release 17.10)
3. Select ‘Forms’

4. Click the ‘Create Form’ button


5. Enter the following details:
• Form Name: Exercise - ID Management
• Description: This form is to demonstrate the new ID features.
• Template: Training Template
6. Click the ‘Create’ button
7. Note: The form Design view should open in a new Tab

Step 2: Add a new ‘Text Field’ component


1. Make sure the ‘Palette’ panel is displayed
2. Add a new ‘Text Field’ into the ‘About You’ section
3. Note: the initial focus is set to the ID Property field

Step 3: Update the component


1. Update the ‘ID’ Property value to ‘FirstName’
2. Note: The ‘Label’ Property has automatically updated to ‘First Name’
3. Click the ‘Integration’ tab
4. Note: the ‘XML Name’ and ‘Full Path’ properties have updated to the new ‘ID’
5. Click the ‘Properties’ tab
6. Update the ‘ID’ Property to ‘FName’ (then TAB or click away)
7. Note: this time the ‘ID’ Property updates but the ‘Label’ Property remains unchanged. The ‘Label’ only updates when the default
‘ID’ Property is entered.
8. Click the ‘Integration’ tab
9. Note: the ‘XML Name’ and ‘Full Path’ properties have updated to the latest ‘ID’ (i.e. ‘FName’)
10. Click ‘Save’

Please note: If the ‘Use Auto-generated XML Name’ Property is not checked, the ‘XML Name’ and ‘Full Path’ properties won’t update if
the ID changes. These properties will need to be manually updated if required.
Exercise - Impact Analysis
The following exercise will involve the ‘Order’ form.

Step 1: Open the Order form


From the Maestro Transact Management Dashboard:
1. Expand the ‘Upgrade to Transact Release 17.10’
2. Expand ‘Forms’ and select ‘Order Form’
3. Click the ‘Edit Version’ button

4. The ‘Order Form’ should open in a new browser tab

Step 2: Review the current references


Inspect references for the ‘First Name’ field.
1. Right-click the ‘First Name’ text field (in the form)
2. Choose ‘Show References to firstName’
3. Confirm one existing reference to the ‘FullName’ item

4. Click ‘Close’ (to close the window)

Step 3: Add a new Text Field that references ‘First Name’


Add a new Text Field to ‘Page Two’ that references the ‘First Name’ Text Field
1. Display the ‘Structure’ panel
2. Select ‘Page Two’ from the form structure
3. Re-display the ‘Palette’ panel
4. Add a new Text Field to the Page Two ‘Section’
5. Update the ID Property to ‘FirstNameP2’ and press TAB (focus moves to Label Property)
6. Update the Label Property to ‘First Name’ and press TAB
7. With the new Text Field selected, click ‘Create Rule’ (bottom of Properties panel)
8. Click ‘Script’ (under ‘Calculation’)
9. In the navigator column (on the left), expand ‘Page One’, then expand the first ‘Section’

10. Double-click ‘First Name’ to setup a reference to this component, i.e. ‘data.firstName’
11. Click ‘Save’ (to close the window), then Save the form
12. Click ‘Preview’ to test the new reference, i.e. enter a ‘First Name’ on Page One and confirm it displays in ‘First Name’ on Page Two
13. When you’re ready, switch back to Design view

Step 4: Review the updated references


Inspect the references for the ‘First Name’ field on Page One
1. Display the ‘Structure’ panel
2. Select ‘Page One’ from the form structure
3. Re-display the ‘Palette’ panel
4. Right-click ‘First Name’ and click ‘Show References to ‘First Name’
5. Confirm a second reference to ‘firstNameP2’ (on Page Two) now exists

6. Click ‘Close’ (to close the dialog)


7. Click Save then close the form (i.e. the Browser Tab)
Exercise - Semantic Versioning
This exercise will demonstrate how to create multiple semantic versions of a form.

Step 1: Update the 1.0-develop version


1. Select the ‘Exercise - Entities’ form in the Navigator panel
2. Click ‘Edit Version’ to open the form
3. Add a new text field to the ‘Getting Started’ section called ‘PhoneNumber’

4. Save and Close the form (Browser Tab)

Step 2: Create a ‘Tagged’ version


Create the first read-only tagged version (based on ‘1.0-develop’)
1. Select the ‘Exercise - Entities’ form in the Navigator panel
2. Click ‘New Tag’

3. Confirm the new Semantic Version number is 1.0.1


4. Enter Description: ‘This is the first tagged version.’
5. Click ‘Create’

6. Expand the ‘Exercise – Entities’ form in the Navigator panel and confirm the tagged 1.0.1 version is displayed
Step 3: Open the ‘Tagged’ version
1. Select the ‘Exercise - Entities’ form in the Navigator panel
2. Select the ‘1.0.1’ tagged version (note the ‘tick’ icon)

3. Click ‘Edit Version’ to open the form


4. Notice: the Palette panel is empty, i.e. you can’t add new or delete existing components
5. Close the form (Browser Tab)

Step 4: Update the 1.0-develop version


Remember: all changes and updates are completed in 1.0-develop
1. Select the ‘Exercise - Entities’ form in the Navigator panel
2. Select the ‘1.0-develop’ version
3. Click ‘Edit Version’ to open the form

4. Add a new text field to the ‘Getting Started’ section called ‘FaxNumber’

5. Save and Close the form (Browser Tab)

Step 5: Create another ‘Tagged’ version


Create another read-only version (based on ‘1.0-develop’)
1. Select the ‘Exercise - Entities’ form in the Navigator panel
2. Select the ‘1.0-develop’ version
3. Click ‘New Tag’
4. Confirm the new Semantic Version number is 1.0.2
5. Enter Description: ‘This is the second tagged version.’

6. Click ‘Create’

Expand the ‘Exercise – Entities’ form in the Navigator panel and confirm the tagged 1.0.2 version is displayed
Exercise - Upgrade a project
You can upgrade an existing project to the latest Maestro release from the Management Dashboard.

Step 1: Import a project


To upgrade a project, you’ll need to add a legacy project to your organization first.
1. Download this sample project (zipped folder)
2. Remember where the project is stored, e.g. ‘Downloads’
3. Navigate to the Maestro webpage
4. Expand Home (in Navigator Panel)
5. Select the Organization (the Organisation maybe your own name e.g. jsmith
6. Click ‘Import Legacy Project’
7. Name the project - ‘Legacy Project’
8. Click Import
9. Navigate to the location of the sample project
10. Select the project and click Open
11. The imported project should now appear under your organization

Step 2: Upgrade the project


1. Select ‘Legacy Project’ project in the Navigator
2. Click the Project Details tab
3. Display the ‘Release Version’ dropdown and choose ’17.10.0’
4. Note: When you select a new version, a warning message confirms you can’t change the release version back to a previous
version once the Project Details are saved

5. Click OK in the warning message


6. Click Save
7. The project has now been upgraded
Notice: The Release Version dropdown no longer displays any previous release versions
Glossary
Journey Platform | All Personas

A/ B testing
A/B testing (bucket tests or split-r un testing) is a r andom ized exper im ent with two
var iants, A and B. It includes application of statistical hypothesis testing or "two-
sam ple hypothesis testing" as used in the field of statistics. A/B testing is a way to
com par e two ver sions of a single var iable, typically by testing a subject's r esponse
to var iant A against var iant B, and deter m ining which of the two var iants is m or e
effective.

Abandoned Transaction
Any tr ansaction that has been deem ed as Abandoned in Manager . When a user
leaves the application without explicitly canceling it, the tr ansaction lives in Star ted
status for a per iod defined in Manager , after which it is consider ed as an Aban-
doned tr ansaction.

Acquisition
Acquisition is the pr ocess of captur ing data to star t the pr ocess of becom ing a new
custom er

AcroForm
Acr oFor m s ar e the or iginal PDF for m s technology that accepts input in both For m s
Data For m at (FDF) and XML For m s Data For m at (XFDF). Many 3r d par ty vendor s sup-
por t Acr oFor m s.

ADFS
Active Dir ector y Feder ation Ser vices.

Adobe Flash
Adobe Flash is a depr ecated m ultim edia softwar e platfor m used for pr oduction of
anim ations, r ich Inter net applications, desktop applications, m obile applications,
m obile gam es and em bedded web br owser video player s. Flash displays text, vec-
tor gr aphics and r aster gr aphics to pr ovide anim ations, video gam es and applic-
ations. It allows str eam ing of audio and video, and can captur e m ouse, keyboar d,

Glossary - 1158 -
m icr ophone and cam er a input. Related developm ent platfor m Adobe AIR con-
tinues to be suppor ted.

Adobe LiveCycle ES
Adobe LiveCycle Enter pr ise Suite (ES4) is an ser vice-or iented ar chitectur e Java EE
ser ver softwar e pr oduct fr om Adobe System s used to build applications that auto-
m ate a br oad r ange of business pr ocesses for enter pr ises and gover nm ent agen-
cies. LiveCycle ES4 is an enter pr ise docum ent and for m platfor m that allows
captur ing and pr ocessing infor m ation, deliver ing per sonalized com m unications,
and pr otecting and tr acking sensitive infor m ation. It is used for pur poses such as
account opening, ser vices and benefits enr ollm ent, cor r espondence m anagem ent,
r equest for pr oposal pr ocesses, and other m anual based wor kflows.

Agile software development


Agile softwar e developm ent is an appr oach to softwar e developm ent under which
r equir em ents and solutions evolve thr ough the collabor ative effor t of self-or gan-
izing and cr oss-functional team s and their custom er /end user .

AIM
Association for Autom atic Identification and Mobility (AIM) is an industr y tr ade
gr oup that developed and standar dized bar codes, Autom atic identification and
data captur e.

Amazon AWS Security Token Service


The AWS Secur ity Token Ser vice (STS) is a web ser vice that enables you to r equest
tem por ar y, lim ited-pr ivilege cr edentials for AWS Identity and Access Managem ent
(IAM) user s or for user s that you authenticate (feder ated user s).

Amazon CloudFront
Am azon CloudFr ont is a content deliver y networ k (CDN). It is integr ated with Man-
ager to pr ovide an easy way to distr ibute static content such as im ages to end
user s with low latency, and high data tr ansfer speeds. This im pr oves the speed at
which for m s load, pr oviding a better custom er exper ience. It also r educes load on
theManager ser ver s, r esulting in a higher tr ansaction thr oughput per ser ver .

Glossary - 1159 -
Amazon HSM
AWS CloudHSM is a cloud-based har dwar e secur ity m odule (HSM) that enables you
to easily gener ate and use your own encr yption keys on the AWS Cloud. With
CloudHSM, you can m anage your own encr yption keys using FIPS 140-2 Level 3 val-
idated HSMs.

Amazon Key M anagement Service


AWS Key Managem ent Ser vice (KMS) is a m anaged ser vice that m akes it easy for
you to cr eate and contr ol the encr yption keys used to encr ypt your data, and uses
FIPS 140-2 validated har dwar e secur ity m odules to pr otect the secur ity of your
keys. AWS Key Managem ent Ser vice is integr ated with m ost other AWS ser vices to
help you pr otect the data you stor e with these ser vices. AWS Key Managem ent Ser -
vice is also integr ated with AWS CloudTr ail to pr ovide you with logs of all key usage
to help m eet your r egulator y and com pliance needs.

Amazon Redshift
Am azon Redshift is an Inter net hosting ser vice and data war ehouse pr oduct which
for m s par t of the lar ger cloud-com puting platfor m Am azon Web Ser vices. It is built
on top of technology fr om the m assive par allel pr ocessing (MPP) data-war ehouse
com pany Par Accel to handle lar ge scale data sets and database m igr ations.

Amazon Resource Name


An Am azon Resour ce Nam e (ARN) is a file nam ing convention used to identify a par -
ticular r esour ce in the Am azon Web Ser vices (AWS) public cloud. ARNs, which ar e
specific to AWS, help an adm inistr ator tr ack and use AWS item s and policies acr oss
AWS pr oducts and API calls.

Amazon S3
Am azon S3 is object stor age built to stor e and r etr ieve any am ount of data fr om
anywher e – web sites and m obile apps, cor por ate applications, and data fr om IoT
sensor s or devices. It is designed to deliver 99.999999999% dur ability, and stor es
data for m illions of applications used by m ar ket leader s in ever y industr y. S3
pr ovides com pr ehensive secur ity and com pliance capabilities that m eet even the
m ost str ingent r egulator y r equir em ents.

Glossary - 1160 -
Amazon Simple Email Service
Am azon Sim ple Em ail Ser vice (SES) is a pay-per -use ser vice that allows you to build
in em ail functionality into an application that you ar e r unning on AWS.

Amazon Simple Queue Service


Am azon Sim ple Queue Ser vice (Am azon SQS) is a pay-per -use web ser vice for stor -
ing m essages in tr ansit between com puter s. Developer s use SQS to build dis-
tr ibuted applications with decoupled com ponents without having to deal with the
over head of cr eating and m aintaining m essage queues.

Amazon Web Services


Am azon Web Ser vices (AWS) is a com pr ehensive, evolving cloud com puting plat-
for m pr ovided by Am azon. It pr ovides a m ix of infr astr uctur e as a ser vice (IaaS),
platfor m as a ser vice (PaaS) and packaged softwar e as a ser vice (SaaS) offer ings.

Angular
Angular is a platfor m that m akes it easy to build applications with the web. Angular
com bines declar ative tem plates, dependency injection, end to end tooling, and
integr ated best pr actices to solve developm ent challenges. Angular em power s
developer s to build applications that live on the web, m obile, or the desktop.

AngularJS
Angular JS is a str uctur al fr am ewor k for dynam ic web apps. It lets you use HTML as
your tem plate language and lets you extend HTML's syntax to expr ess your applic-
ation's com ponents clear ly and succinctly. Angular JS's data binding and depend-
ency injection elim inate m uch of the code you would other wise have to wr ite. For
m or e infor m ation, see http://angular js.or g/

Anti-M oney Laundering


Anti-Money Launder ing (AML) r efer s to existing laws or pr ocedur es m eant to
r educe illegally obtained incom e. The legal contr ols that r equir e financial insti-
tutions and other r egulated entities to pr event, detect, and r epor t m oney laun-
der ing activities.

Apache Ant
Apache Ant is a softwar e tool for autom ating softwar e build pr ocesses, which or i-
ginated fr om the Apache Tom cat pr oject. It was a r eplacem ent for the Make build

Glossary - 1161 -
tool of Unix.

Apache HTTP Server


Apache HTTP Ser ver is fr ee and open-sour ce cr oss-platfor m web ser ver softwar e,
r eleased under the ter m s of Apache License 2.0. Apache is developed and m ain-
tained by an open com m unity of developer s under the auspices of the Apache Soft-
war e Foundation.

Apache Velocity Template


Apache Velocity Tem plates ar e used extensively thr oughout Jour ney platfor m to
define htm l page layout, em ail body and subject. A tem plate is com bined with
m odel containing a num ber or objects to pr oduce a Str ing. For m or e infor m ation
see http://velocity.apache.or g/engine/devel/user -guide.htm l

API
Application Pr ogr am m ing Inter face.

Artifactory
Ar tifactor y is a pr oduct by JFr og that ser ves as a binar y r epositor y m anager , which
is an extension to the sour ce code r epositor y wher e it stor es the outcom e of your
build pr ocess, often denoted as ar tifacts.

Assistive Technology
is an um br ella ter m that includes assistive, adaptive, and r ehabilitative devices for
people with disabilities while also including the pr ocess used in selecting, locating,
and using them .

Automated Clearing House


Autom ated Clear ing House (ACH) is the electr onic networ k used to tr ansfer m oney
between accounts at differ ent institutions.

AWS Aurora RDS


Am azon Relational Database Ser vice (Am azon RDS) is a web ser vice that m akes it
easier to set up, oper ate, and scale a r elational database in the cloud. It pr ovides
cost-efficient, r esizable capacity for an industr y-standar d r elational database and
m anages com m on database adm inistr ation tasks.

Glossary - 1162 -
Azure
Micr osoft Azur e is a cloud com puting ser vice cr eated by Micr osoft for building, test-
ing, deploying, and m anaging applications and ser vices thr ough Micr osoft-m an-
aged data center s.

Azure Blob Storage


Azur e Blob Stor age is Micr osoft's object stor age solution for the cloud. Blob stor -
age is optim ized for stor ing m assive am ounts of unstr uctur ed data. Unstr uctur ed
data is data that doesn't adher e to a par ticular data m odel or definition, such as
text or binar y data.

Azure Key Vault


Azur e Key Vault is a cloud ser vice that pr ovides a secur e stor e for secr ets. You can
secur ely stor e keys, passwor ds, cer tificates, and other secr ets.

Azure Queue Storage


Azur e Queue Stor age pr ovides cloud m essaging between application com ponents.
In designing applications for scale, application com ponents ar e often decoupled so
they can scale independently. Queue stor age deliver s asynchr onous m essaging
between application com ponents, whether they ar e r unning in the cloud, on the
desktop, on an on-pr em ises ser ver , or on a m obile device. Queue stor age also sup-
por ts m anaging asynchr onous tasks and building pr ocess wor k flows.

Bank Secrecy Act


Bank Secr ecy Act (BSA)/Anti-Money Launder ing (AML) is the BSA r equir es financial
institutions to collabor ate with the gover nm ent in cases of suspected m oney laun-
der ing and fr aud. Banks m ust conduct anti-m oney launder ing checks and keep
r ecor ds of suspicious events.

Banking Platform
A plug-and-play business m odel that allows m ultiple par ticipants (pr oducer s and
consum er s) to connect to it, inter act with each other , and cr eate and exchange
value. Successful platfor m s attr act both pr oducer s and consum er s, m atch pr o-
ducer s with consum er s, and pr ovide seam less integr ation am ong par ticipants.
Avoka Platfor m enables account opening and onboar ding.

Glossary - 1163 -
Barcode
Bar code is a m achine-r eadable code in the for m of num ber s and a patter n of par -
allel lines of var ying widths, pr inted on a com m odity and used especially for stock
contr ol.

BAU
usiness As Usual (BAU) is the view of an or ganisation, business unit, wor k team or
team m em ber com pleting their ever yday wor k in the nor m al way.

Biometrics
Is the electr onically m atching of a per son's unique physical char acter istics with
their account.

BIRT
Business Intelligence and Repor ting Tools (BIRT) is an open sour ce data visu-
alization and r epor ting platfor m . For m or e infor m ation, see http://www.e-
clipse.or g/bir t/

Blockchain
Also known as distr ibuted ledger technology (DLT), is a softwar e that is a shar ed
r ecor d of infor m ation m anaged by a networ k of com puter s r ather than a centr al
author ity. It is secur ed using cr yptogr aphy.

Bounce or bounced transaction


Bounce is when a user views a for m but never star ts it and sim ply closes the win-
dow im m ediately or navigates away.

Bounced Transaction
Any tr ansaction wher e the applicant (user ) did not inter act with the web applic-
ation (for m ). Navigation acr oss the for m or scr olling the page does not count as an
inter action. A legitim ate inter action is one wher e a user inputs data into the for m
in som e way, such as text input, r adio button input, clicking on a checkbox, clicking
the Save button, attaching a file etc. It typically takes 24-48 hour s for a tr ansaction
in Open status to tr ansition to Bounced status. This tim e will var y based on the set-
tings configur ed in Manager .

Glossary - 1164 -
BPM N
Business Pr ocess Modeling Notation (BPMN) is a m ethod of illustr ating business
pr ocesses in the for m of a diagr am sim ilar to a flowchar t.

BSG
Business Ser vices Gr oup (BSG)

CentOS
CentOS (Com m unity Enter pr ise Oper ating System ) is a Linux distr ibution that
pr ovides a fr ee, enter pr ise-class, com m unity-suppor ted com puting platfor m func-
tionally com patible with its upstr eam sour ce, Red Hat Enter pr ise Linux (RHEL).

Changelog
is a r ecor d of changes to a softwar e pr oject or other technology pr oduct. This type
of r ecor d has its own for m at for var ious types of pr ojects, but is gener ally useful in
showing when and why changes wer e m ade, and who m ade them .

Checking Account
The basic account for easy access to your m oney.

ClamAV
Clam AntiVir us (Clam AV) is a fr ee, cr oss-platfor m and open-sour ce antivir us soft-
war e toolkit able to detect m any types of m alicious softwar e, including vir uses. One
of its m ain uses is on m ail ser ver s as a ser ver -side em ail vir us scanner . The applic-
ation was developed for Unix and has thir d par ty ver sions available for AIX, BSD,
HP-UX, Linux, m acOS, OpenVMS, OSF (Tr u64) and Solar is.

CLI
A com m and line inter face (CLI) is a text-based user inter face (UI) used to view and
m anage com puter files.

Cloud computing
Cloud com puting is shar ed pools of configur able com puter system r esour ces and
higher -level ser vices that can be r apidly pr ovisioned with m inim al m anagem ent

Glossary - 1165 -
effor t, often over the Inter net. Cloud com puting r elies on shar ing of r esour ces to
achieve coher ence and econom ies of scale, sim ilar to a public utility.

Code Reuse
Code r euse aim s to save tim e and r esour ces and r educe r edundancy by taking
advantage of assets that have alr eady been cr eated in som e for m within the soft-
war e pr oduct developm ent pr ocess. The key idea in r euse is that par ts of a com -
puter pr ogr am wr itten at one tim e can be or should be used in the constr uction of
other pr ogr am s wr itten at a later tim e.

Completed Transaction
Any tr ansaction that has been com pleted by the user and subm itted to Manager .

Component
A com ponent is the gener al nam e for anything that can be dr agged fr om the
Palette onto a for m . Com ponents can be anything fr om a single data entr y field, to
a lar ge com plex r e-usable block.

Content Delivery Network


A content deliver y networ k or Content Distr ibution Networ k (CDN) is a system of
distr ibuted ser ver s (networ k) that deliver pages and other Web content to a user ,
based on the geogr aphic locations of the user , the or igin of the webpage and the
content deliver y ser ver .

Content Security Policy


Content Secur ity Policy (CSP) is a com puter secur ity standar d intr oduced to pr e-
vent cr oss-site scr ipting (XSS), clickjacking and other code injection attacks r es-
ulting fr om execution of m alicious content in the tr usted web page context. CSP
pr ovides a standar d m ethod for website owner s to declar e appr oved or igins of con-
tent that br owser s should be allowed to load on that website—cover ed types ar e
JavaScr ipt, CSS, HTML fr am es, web wor ker s, fonts, im ages, em beddable objects
such as Java applets, ActiveX, audio and video files, and other HTML5 featur es. For
m or e infor m ation, see https://www.w3.or g/TR/CSP/

Continuous Integration
Continuous Integr ation (CI) is a developm ent pr actice that r equir es developer s to
integr ate code into a shar ed r epositor y sever al tim es a day. Each check-in is then

Glossary - 1166 -
ver ified by an autom ated build, allowing team s to detect pr oblem s ear ly.

Coordinated Universal Time


Coor dinated Univer sal Tim e (UTC) is the pr im ar y tim e standar d by which the wor ld
r egulates clocks and tim e.

CORS
Cr oss-Or igin Resour ce Shar ing (CORS) is a m echanism that uses additional HTTP
header s to tell a br owser to let a web application r unning at one or igin (dom ain)
have per m ission to access selected r esour ces fr om a ser ver at a differ ent or igin. A
web application executes a cr oss-or igin HTTP r equest when it r equests a r esour ce
that has a differ ent or igin (dom ain, pr otocol, and por t) than its own or igin.

Credit Rating
An evaluation of cr edit-wor thiness based on financial r esour ces and cr edit histor y.
Usually expr essed as a letter gr ade (A, B+, etc.)

Credit Report
A r epor t on an individual or or ganisation identifying cr edit details such as: defaults,
judgm ents, bankr uptcies, etc.

Credit Score
In contr ast to a cr edit r ating, the cr edit scor e is a num ber (600, 700, etc.) indicating
an individual's cr edit-wor thiness.

Credit Union
A m em ber -owned financial cooper ative, contr olled by its m em ber s and oper ated
on the pr inciple of people helping people, pr oviding its m em ber s cr edit at com -
petitive r ates as well as other financial ser vices. Cr edit unions offer m any of the
sam e financial ser vices as banks, but often using a differ ent ter m inology.

CRM
Custom er r elationship m anagem ent (CRM) is an appr oach to m anage a com pany's
inter action with cur r ent and potential custom er s. It uses data analysis about cus-
tom er s' histor y with a com pany to im pr ove business r elationships with custom er s,
specifically focusing on custom er r etention and ultim ately dr iving sales gr owth.

Glossary - 1167 -
Cron
Cr on is a tim e-based job scheduler in Unix-like com puter oper ating system s.
People who set up and m aintain softwar e envir onm ents use cr on to schedule jobs
(com m ands or shell scr ipts) to r un per iodically at fixed tim es, dates, or inter vals.

Cryptocurrency
A digital cur r ency that r elies on cr yptogr aphy to validate and secur e tr ansactions.

CSRF
Cr oss-site r equest for ger y (CSRF), also known as one-click attack or session r iding,
is a type of m alicious exploit of a website wher e unauthor ized com m ands ar e tr ans-
m itted fr om a user that the web application tr usts.

CSS
CSS stands for Cascading Styles Sheets and is used to define styles for a Maestr o
For m , including the design, layout, and var iations in the for m ’s display on differ ent
devices and scr een sizes. The CSS on a Maestr o for m is pr im ar ily taken car e of by
the Tem plate Designer . The Tem plate Designer will im plem ent the br anding and/or
styling of the for m ’s assets.CSS can be applied to the tem plate of the for m , indi-
vidual com ponents, and any other asset associated with a Maestr o for m .

CSS3
CSS3 is the latest evolution of the Cascading Style Sheets language and aim s at
extending CSS2.1. It br ings a lot of long-awaited novelties, like r ounded cor ner s,
shadows, gr adients, tr ansitions or anim ations, as well as new layouts like m ulti-
colum ns, flexible box or gr id layouts.

CSV
CSV is a com m a-separ ated values fil, which s a delim ited text file that uses a
com m a to separ ate values. A CSV file stor es tabular data (num ber s and text) in
plain text. Each line of the file is a data r ecor d. Each r ecor d consists of one or m or e
fields, separ ated by com m as.

Current Account
A tr ansaction account, checking account, dem and deposit account, or shar e dr aft
account (at cr edit unions) is a deposit account held at a bank or other financial
institution.

Glossary - 1168 -
Custom component
Som etim es it is useful to cr eate a r e-usable var iant of either a sim ple or com plex
com ponent. The m ain var iations ar e: • A com ponent with a r e-usable business r ule,
par ticular ly a validation r ule. An em ail field is an exam ple of this. • A com ponent
(r adio button or dr opdown list) with a specific set of values. An exam ple of this is a
dr opdown list of States. • A com ponent with a par ticular XML binding.

Customer Experience
Custom er Exper ience (CX) is the pr oduct of an inter action between an or ganization
and a custom er over the dur ation of their r elationship. This inter action is m ade up
of thr ee par ts: the custom er jour ney, the br and touchpoints the custom er inter -
acts with, and the envir onm ents the custom er exper iences (including digital envir -
onm ent) dur ing their exper ience. A good custom er exper ience m eans that the
individual's exper ience dur ing all points of contact m atches the individual's expect-
ations.

Customer Identification Program


Custom er Identification Pr ogr am (CIP) The CIP is a r equir ed pr ovision under the
USA PATRIOT Act. CIP is m or e com m only known as KYC.

CVE
Com m on Vulner abilities and Exposur es (CVE) is a list of publicly disclosed com -
puter secur ity flaws, wher e each secur ity flaw has a CVE ID num ber assigned to it
for fur ther r efer ence.

CX
Custom er Exper ience (CX) is an aggr egate of a custom er ’s A-Z exper ience with a
br and. It is not a snapshot in tim e, such as a key touchpoint or a cr itical inter action.

DAO
Deposit Account Opening ( DAO). DAO bank for m s allow user s to open Checking,
Savings and Money Mar ket Accounts.

Glossary - 1169 -
DB
A database is a data str uctur e that stor es or ganized infor m ation. Most databases
contain m ultiple tables, which m ay each include sever al differ ent fields. For
exam ple, a com pany database m ay include tables for pr oducts, em ployees, and fin-
ancial r ecor ds. Each of these tables would have differ ent fields that ar e r elevant to
the infor m ation stor ed in the table.

DDA
Dir ect Deposit Account (DDA) is sim ply a checking or savings account which offer s
the ability to send and r eceive funds electr onically.

DDS
The Data Distr ibution Ser vice (DDS) is a m iddlewar e pr otocol and API standar d for
data-centr ic connectivity fr om the Object Managem ent Gr oup (OMG). It integr ates
the com ponents of a system together , pr oviding low-latency data connectivity,
extr em e r eliability, and a scalable ar chitectur e that business and m ission-cr itical
Inter net of Things (IoT) applications need.

Design
A design is a gener ic nam e for a for m , r eceipt, tem plate, or com ponent that you
can cr eate in Maestr ousing the Maestr o editor

Design M ode
Design m ode displays the editor window so that Maestr o assets can be cr eated
and updated

DevOps
DevOps is a softwar e developm ent m ethodology that com bines softwar e devel-
opm ent (Dev) with infor m ation technology oper ations (Ops). The goal of DevOps is
to shor ten the system s developm ent life cycle while also deliver ing featur es, fixes,
and updates fr equently in close alignm ent with business objectives.

Digital Adoption
Achieving a state in which digital tools ar e being used as intended, and to their
fullest extent. It is about m or e than just basic functions — digital adoption happens
when technology becom es second natur e to its user .

Glossary - 1170 -
Digital Banking
The m ove to online banking wher e banking ser vices ar e deliver ed over the Inter net.
The advantages for banks and custom er s ar e pr oviding m or e convenient and
faster banking ser vices.

Digital ID
Also known as Digital Cr edential, is the electr onic equivalent of an individual's iden-
tity car d. A digital ID can be pr esented electr onically to pr ove an individual's iden-
tity and their r ight to access infor m ation or ser vices online.

Digital Native
A per son that gr ew-up in the digital age and is com for table with technology.

Disaster-Recovery-as-a-Service
Disaster -Recover y-as-a-Ser vice (DRAAS) is the hosting of ser ver s by a thir d par ty in
case of a disaster .

Document Object M odel


The Docum ent Object Model (DOM) is a cr oss-platfor m and language-independent
application pr ogr am m ing inter face that tr eats an HTML, XHTML, or XML docum ent
as a tr ee str uctur e wher ein each node is an object r epr esenting a par t of the doc-
um ent. The objects can be m anipulated pr ogr am m atically and any visible changes
occur r ing as a r esult m ay then be r eflected in the display of the docum ent.

DocuSign eSignature
DocuSign is the leader in eSignatur e tr ansaction m anagem ent. The Jour ney plat-
for m uses this solution to speed the r ate at which all digital docum ents ar e com -
pleted, signed, and r etur ned.

EAR
Enter pr ise Ar chive.

Electronic Check Presentment


Electr onic Check Pr esentm ent (ECP) is an electr onic im age of a check that can be
pr ocessed by banks.

Glossary - 1171 -
Electronic Deposit Verification
Electr onic Deposit Ver ification (EDV) is a way to ver ify an account at another bank
that you want to link to fr om the cur r ent institution.

Electronic Funds Transfer


Electr onic Funds Tr ansfer (EFT) is the tr ansfer of m oney between accounts thr ough
electr onic paym ent system s.

Electronic Identity Verification


Electr onic Identity Ver ification (eIDV) is an electr onic m ethod to confir m the iden-
tification of an individual.

End-of-Life
End-of-life (EOL) is a ter m used with r espect to a pr oduct supplied to custom er s,
indicating that the pr oduct is in the end of its useful life (fr om the vendor 's point of
view), and a vendor stops m ar keting, selling, or r ewor k sustaining it.

Endpoint
Endpoint is a web addr ess (URL) at which clients of a specific ser vice can gain
access to it. By r efer encing that URL, clients can get to oper ations pr ovided by that
ser vice.

Entity
Entity is a gener ic nam e for var ious objects, which Jour ney Manager uses inter nally,
for exam ple, an or ganization is an entity that owns for m s.

EOT font
Em bedded OpenType (EOT) fonts ar e a com pact for m of OpenType fonts designed
by Micr osoft for use as em bedded fonts on web pages. These files use the exten-
sion . eot

ERP
Enter pr ise r esour ce planning (ERP) is the integr ated m anagem ent of m ain busi-
ness pr ocesses, often in r eal-tim e and m ediated by softwar e and technology.

ES6
ECMAScr ipt (ES6) is a gener al-pur pose pr ogr am m ing language, standar dized by
Ecm a Inter national accor ding to the docum ent ECMA-262. It is a JavaScr ipt

Glossary - 1172 -
standar d m eant to ensur e the inter oper ability of Web pages acr oss differ ent Web
br owser s.

Europay, M asterCard, and Visa


Eur opay, Master Car d, and Visa (EMV) is a paym ent m ethod based on agr eed stand-
ar ds for use with sm ar t paym ent car ds (also r efer r ed to as chip or IC car ds).

FAR
FAR is a For m Ar chive that contains a for m and all r elated r esour ces that can be
deployed as a package in var ious Jour ney Manager envir onm ents.

Fast IDentity Online


Fast IDentity Online (FIDO) is an industr y consor tium with the aim to addr ess the
lack of inter oper ability am ong str ong authentication devices and the pr oblem s
user s face cr eating and r em em ber ing m ultiple user nam es and passwor ds. It com -
pr ises a set of technology-agnostic secur ity specifications for str ong authen-
tication.

Field
A field is a specific type of com ponent used for displaying and enter ing data into a
for m application. Exam ples include the Text Field or Decim al Field. In Jour ney Ana-
lytics only, a field also r efer s to any field, r adio button or com ponent in a for m
application used to enter data.

Financial Institution
An institution (public or pr ivate) that collects funds (fr om the public or other insti-
tutions) andinvests them in financial assets.

Financial Technology
Financial Technology, also known as FinTech, is a new industr y that uses new tech-
nology and innovation to im pr ove activities in finance. It aim s to com pete with tr a-
ditional financial m ethods in the deliver y of financial ser vices to custom er s by
im pr oving custom er exper ience, r educing tim e-to-m ar ket, decr easing cost to m en-
tion a few.

Glossary - 1173 -
Financial Technology Terms
Financial technology, often r efer r ed to as FinTech or fintech, is an um br ella ter m
descr ibing new technology used to suppor t or enable banking and financial ser -
vices.

Finovate
Also known as FinTech Innovation, a dem o-focused confer ence ser ies focused
exclusively on showcasing the best and m ost innovative new financial and banking
technologies.

FinServ
Anything that descr ibes Financial Ser vices.

Fluent
Fluent is a pr ogr am m ing style that can be applied to a wide r ange of pr ogr am m ing
languages. Acr oss the Jour ney platfor m , fluent is com m only associated with the Flu-
ent SDK. The Fluent SDK is intended for use in developer integr ated developer
envir onm ent’s (IDE) and contains libr ar ies and pr oject files for all the differ ent ser -
vices it suppor ts.

Font Awesome
Font Awesom e is a font and icon toolkit based on CSS and Less.

Form Builder
A For m Builder is the r ole nam e of the per son that cr eates the for m . A For m
Builder focuses on the specific for m content as well as the jour ney of the for m
user .

Form User
The for m user is the per son com pleting the for m . They m ay also be known as
"user ".

Frictionless
Achieved with or involving little difficulty, or effor tless. Avoka’s Platfor m helps to
pr ovide fr ictionless custom er onboar ding and account opening exper iences.

FTX
For m Tr ansaction Exper iences

Glossary - 1174 -
Fully qualified domain name
Fully qualified dom ain nam e (FQDN), som etim es also r efer r ed to as an absolute
dom ain nam e, is a dom ain nam e that specifies its exact location in the tr ee hier -
ar chy of the Dom ain Nam e System (DNS). It specifies all dom ain levels, including at
least a second-level dom ain and a top-level dom ain.

General Availability
Gener al availability (GA) is the m ar keting phase when all com m er cialization activ-
ities per taining to the softwar e pr oduct have been com pleted and it is available for
pur chase. It is also known as pr oduction r elease.

Geolocation
Identifying per son or device’s geogr aphical location. This m ay involve GPS or
Global Positioning System .

Git
Git is a ver sion contr ol system for tr acking changes in com puter files and coor din-
ating wor k on those files am ong m ultiple people. It is pr im ar ily used for sour ce
code m anagem ent in softwar e developm ent,[8] but it can be used to keep tr ack of
changes in any set of files.

GitHub
GitHub Inc. is a web-based hosting ser vice for ver sion contr ol using Git. It is m ostly
used for com puter code. It offer s all of the distr ibuted ver sion contr ol and sour ce
code m anagem ent (SCM) functionality of Git as well as adding its own featur es.

GitLab
GitLab is a web-based Git-r epositor y m anager with wiki and issue-tr acking featur es,
using an open-sour ce license, developed by GitLab Inc.

Google Tag M anager


Google Tag Manager (GTM) is a tag m anagem ent system (TMS) that allows you to
quickly and easily update tr acking codes and r elated code fr agm ents collectively
known as tags on your website or m obile app.

Glossary - 1175 -
Groovy
Gr oovy is a power ful scr ipting language which r uns on the Java Vir tual Machine.
Acr oss theJour ney platfor m , Gr oovy is used to cr eate ser vices in Manager . These
ser vices ar e pr im ar ily used to cr eate plug-in style system s that inter act with Man-
ager .

GUI
The gr aphical user inter face (GUI) is a for m of user inter face that allows user s to
inter act with electr onic devices thr ough gr aphical icons and audio indicator such
as pr im ar y notation, instead of text-based user inter faces, typed com m and labels
or text navigation.

GUID
A GUID (global unique identifier ) is a ter m for a num ber that its pr ogr am m ing gen-
er ates to cr eate a unique identity for an entity such as a Wor d docum ent. GUIDs
ar e widely used in Micr osoft pr oducts to identify inter faces, r eplica sets, r ecor ds,
and other objects.

GZIP
GZIP is a file for m at and a softwar e application used for file com pr ession and
decom pr ession.

HA
High availability (HA) is a char acter istic of a system which aim s to ensur e an agr eed
level of oper ational per for m ance, usually uptim e, for a higher than nor m al per iod.

Happy path
A happy path is a default scenar io featur ing no exceptional or er r or conditions.

Home M ortgage Disclosure Act


Hom e Mor tgage Disclosur e Act (HMDA) is HMDA r equir es banks and cr edit unions
to collect and publicly r epor t data on par ticular types of m or tgages and lines of
cr edit.

Glossary - 1176 -
HSM
A har dwar e secur ity m odule (HSM) is a physical com puting device that safeguar ds
and m anages digital keys for str ong authentication and pr ovides cr yptopr ocessing.

HTM L5
Maestr o for m s ar e fundam entally built using HTML 5. The str uctur e of the for m
and the text displayed in the for m ar e all configur ed and established using HTML5.
HTML is the standar d m ar kup language for cr eating Web pages and stands for
Hyper text Mar kup Language. HTML 5 descr ibes the str uctur e of a Maestr o for m .

HTTP
HTTP ( Hyper Text Tr ansfer Pr otocol) is the under lying pr otocol used by the Wor ld
Wide Web and this pr otocol defines how m essages ar e for m atted and tr ansm itted,
and what actions Web ser ver s and br owser s should take in r esponse to var ious
com m ands.

HTTP referer
The HTTP r efer er (HTTP r efer r er ) is an optional HTTP header field that identifies the
addr ess of the webpage that linked to the r esour ce being r equested. By checking
the r efer r er , the new webpage can see wher e the r equest or iginated.

Icon Picker
The Icon Picker is a selection dialog allowing you to pick an icon fr om the r ange of
im ages shipped with Maestr o.

IDE
Integr ated Developm ent Envir onm ent.

In-Progress Transaction
Any tr ansaction that is Opened, Star ted or Saved.

IP address
IP addr ess is a unique str ing of num ber s separ ated by full stops that identifies
each com puter using the Inter net Pr otocol to com m unicate over a networ k.

Glossary - 1177 -
iText
iText is a libr ar y for cr eating and m anipulating PDF files in Java and .NET.

Java
Java is a pr ogr am m ing language that pr oduces softwar e for m ultiple platfor m s.
When a pr ogr am m er wr ites a Java application, the com piled code (known as byte-
code) r uns on m ost oper ating system s (OS), including Windows, Linux and Mac OS.
Java der ives m uch of its syntax fr om the C and C++ pr ogr am m ing languages.

Javadoc
Javadoc is a docum entation gener ator cr eated by Sun Micr osystem s for the Java
language for gener ating API docum entation in HTML for m at fr om Java sour ce code.

JavaScript
Javascr ipt (JS) is a scr ipting languages, pr im ar ily used on the Web. It is used to
enhance HTML pages and is com m only found em bedded in HTML code. JavaScr ipt
is an inter pr eted language. Thus, it doesn't need to be com piled.

JDBC
JDBC (Java Database Connectivity) is the Java API that m anages connecting to a data-
base, issuing quer ies and com m ands, and handling r esult sets obtained fr om the
database.

JDK
The Java Developm ent Kit is a distr ibution of Java Technology by Or acle Cor -
por ation. It im plem ents the Java Language Specification and the Java Vir tual
Machine Specification and pr ovides the Standar d Edition of the Java Application
Pr ogr am m ing Inter face. For m or e infor m ation, see https://www.or acle.com /java/

Joint account
A bank account held by m or e than one per son. Joint holder s of an account ar e
r egar ded in law as together m aking up the ‘owner ’ of the account.

Glossary - 1178 -
JSON
JSON (JavaScr ipt Object Notation) is a syntax for stor ing and exchanging data and is
used in Maestr o to stor e for m s. If a For m Builder wants to tr ansfer their for m to
another system , they can do so by using the Download JSON file button.

JVM
Java Vir tual Machine (JVM) is a softwar e-based m achine that r uns Java pr ogr am s. It
can be installed on sever al differ ent oper ating system s, including Windows, OS X,
and Linux. JVMs allow Java apps to r un on alm ost any com puter .

KB
A knowledge base (KB) is a technology used to stor e com plex str uctur ed and
unstr uctur ed infor m ation used by a com puter system .

Know your customer


Know your custom er (KYC) r equir es that banks have a r easonable belief that they
know the tr ue identity of custom er s and establish r easonable and pr actical r isk-
based pr ocedur es for ver ifying the identity of each custom er . The pr ocedur es
m ust include account opening pr ocedur es that specify the identifying info that will
be obtained fr om each custom er , such as nam e, date of bir th, addr ess, ID num ber
(e.g. SSN).

Knowledge-Based Authentication
Knowledge-Based Authentication (KBA) aid(s) used for fr aud pr evention? An
exam ple would be a “secr et question” user s m ust answer befor e being gr anted
access to account infor m ation.

Kofax
Kofax softwar e enables or ganizations to Wor k Like Tom or r ow - today. It helps
or ganizations tr ansfor m infor m ation-intensive business pr ocesses, r educe m anual
wor k and er r or s, m inim ize costs, and im pr ove custom er engagem ent.

KPI
Key Per for m ance Indicator (KPI) is a m easur able value that dem onstr ates how
effectively a com pany is achieving key business objectives. Or ganizations use KPIs

Glossary - 1179 -
to evaluate their success at r eaching tar gets.

Landing Page
A web page that is accessed fr om another website or softwar e application.

LDAP
Lightweight Dir ector y Access Pr otocol (LDAP) s an open, vendor -neutr al, industr y
standar d application pr otocol for accessing and m aintaining distr ibuted dir ector y
infor m ation ser vices over an Inter net Pr otocol networ k.

LESS
LESS is a dynam ic pr epr ocessor style sheet language that can be com piled into Cas-
cading Style Sheets (CSS) and r un on the client side or ser ver side.

Less CSS
Less is a dynam ic pr epr ocessor style sheet language that can be com piled into Cas-
cading Style Sheets and r un on the client side or ser ver side.

LexisNexis
LexisNexis is a cor por ation pr oviding com puter -assisted legal r esear ch (CALR) as
well as business r esear ch and r isk m anagem ent ser vices.

Linux
Linux is a fam ily of fr ee and open-sour ce softwar e oper ating system s built ar ound
the Linux ker nel. Typically, Linux is packaged in a for m known as a Linux dis-
tr ibution (or distr o for shor t) for both desktop and ser ver use.

LM S
Lifecycle Managem ent Suiteis softwar e designed for lending. For m or e infor m ation,
see https://www.tem enos.com /us/news/2015/02/10/tem enos-pur chases-us-based-
financial-softwar e-pr ovider -akceler ant/

Loan to Value Ratio


Loan to Value Ratio (LVR) is the am ount, as a per centage, bor r owed for an asset
against the value of the asset.

Glossary - 1180 -
Locale
Locale is a set of par am eter s that defines the user 's language, r egion and any spe-
cial var iant pr efer ences that the user wants to see in their user inter face. Usually a
locale identifier consists of at least a language code and a countr y/r egion code.

Preview M ode
Pr eview m ode displays the for m so that you can inter act with the com ponents on
the for m as if it wer e live.

Native multi-field component


A native m ulti-field (or com plex) com ponent is still a com pletely self-contained com -
ponent. Ther e is no fixed boundar y between a sim ple and a com plex native com -
ponent, although any com ponent with m or e than one visible data entr y ar ea within
it would usually be consider ed to be com plex

Template Designer
The Tem plate Designer is r esponsible for im plem enting and m aintaining tem plates
which ar e the star ting point for all for m s cr eated in Maestr o. The key activity of the
Tem plate Designer is to im plem ent the tem plate content such as com m on page
com ponents that typically sur r ound specific for m content, including header , nav-
igator , and footer . The Tem plate Designer will also cr eate styles that the For m
Builder will use in the cr eation of for m content including text field styles, buttons,
and section header s.

M ulti-field component, or complex component


A m ulti-field com ponent is m ade up of m or e sub-par ts than a r egular com ponent.
For exam ple, a Section consists of the Heading text, sub-text, help text, a col-
lapse/expand button and a significant am ount of JavaScr ipt and CSS. An addr ess
block contains sever al differ ent sim ple data entr y fields. A com ponent such as a
Dr iver 's License scanning com ponent m ay have m ultiple data entr y fields, a cam -
er a button, descr iptive im ages, and m or e. Multi-field com ponents can be built as
either a native com ponent or a r e-usable block.

Glossary - 1181 -
Re-usable Block
A custom block is a collection of sim ple com ponents, that can be r e-used. An
exam ple of a r e-usable block is an Addr ess Block, which consists of two lines of text
plus City, State, and ZIP Code. Unlike a native m ulti-field com ponent, each of the
sub-elem ents of the custom block will be visible in the Str uctur e tab and can be
m odified individually by the per son using your block.

M aestro form
Maestr o for m is a device used to collect infor m ation fr om a user . Its pur pose will
var y depending on the or ganization that is building and im plem enting the for m .
The developm ent technologies and pr ogr am m ing languages that ar e available to
For m Builder s will var y depending on these pur poses. However , ther e ar e sever al
developm ent technologies and pr ogr am m ing languages that ar e used in ever y
Maestr o for m . These developm ent technologies and pr ogr am m ing languages ar e
identified below, as well as their r ole in the developm ent of a for m or their place in
the Jour ney platfor m .

M aven
Apache Maven is a softwar e pr oject m anagem ent and com pr ehension tool. Based
on the concept of a pr oject object m odel (POM), Maven can m anage a pr oject's
build, r epor ting and docum entation fr om a centr al piece of infor m ation.

M DS
Master Dem o System (MDS) is the Tem enos cloud platfor m , which hosts dem o ver -
sions of som e Tem enos pr oducts.

M etadata
Metadata is data that descr ibes other data. Meta is a pr efix that in m ost infor m -
ation technology usages m eans "an under lying definition or descr iption." Metadata
sum m ar izes basic infor m ation about data, which can m ake finding and wor king
with par ticular instances of data easier . For exam ple, author , date cr eated and
date m odified and file size ar e exam ples of ver y basic docum ent m etadata. Having
the abilty to filter thr ough that m etadata m akes it m uch easier for som eone to loc-
ate a specific docum ent.

M icro-deposits
Sm all deposits (nom inal am ount) m ade to ver ify an account.

Glossary - 1182 -
M icrosoft SQL Server
Micr osoft SQL Ser ver is a r elational database m anagem ent system developed by
Micr osoft. As a database ser ver , it is a softwar e pr oduct with the pr im ar y function
of stor ing and r etr ieving data as r equested by other softwar e applications—which
m ay r un either on the sam e com puter or on another com puter acr oss a networ k
(including the Inter net).

M icrosoft Windows Server


Micr osoft Windows Ser ver OS (oper ating system ) is a ser ies of enter pr ise-class
ser ver oper ating system s designed to shar e ser vices with m ultiple user s and
pr ovide extensive adm inistr ative contr ol of data stor age, applications and cor -
por ate networ ks.

M inification
Minification is the pr ocess of r em oving all unnecessar y char acter s fr om the sour ce
code of inter pr eted pr ogr am m ing languages or m ar kup languages without chan-
ging its functionality.

M itek
Mitek is a softwar e com pany that specializes in digital identity ver ification and
m obile captur e built on ar tificial intelligence algor ithm s. The com pany's technology
allows people to deposit checks via their m obile phones and open bank accounts
fr om m obile devices. Additionally, the technology ver ifies people’s identity with pat-
ented algor ithm s that captur e, classify and authenticate photos of identity doc-
um ents including passpor ts, ID car ds, and dr iver 's licenses. The identity of the
per son holding the docum ent is confir m ed thr ough a biom etr ic facial com par ison
of the photo on the docum ent to a selfie.

M ongoDB
MongoDB is a cr oss-platfor m docum ent-or iented database pr ogr am . Classified as
a NoSQL database pr ogr am , MongoDB uses JSON-like docum ents with optional
schem as.

M y Term
My definition

Glossary - 1183 -
M ySQL
MySQL is an open-sour ce r elational database m anagem ent system (RDBMS). It's an
Or acle-backed open sour ce r elational database m anagem ent system (RDBMS)
based on Str uctur ed Quer y Language (SQL). MySQL r uns on vir tually all platfor m s,
including Linux, UNIX and Windows. Although it can be used in a wide r ange of
applications, MySQL is m ost often associated with web applications and online pub-
lishing.

Object (computer science)


In com puter science, an object can be a var iable, a data str uctur e, a function, or a
m ethod, and as such, is a value in m em or y r efer enced by an identifier . In the class-
based object-or iented pr ogr am m ing par adigm , object r efer s to a par ticular
instance of a class, wher e the object can be a com bination of var iables, functions,
and data str uctur es. In r elational database m anagem ent, an object can be a table
or colum n, or an association between data and a database entity (such as r elating
a per son's age to a specific per son).

Office of Foreign Asset Control


Office of For eign Asset Contr ol (OFAC) enfor ces econom ic and tr ade sanctions.
Banks m ust per for m an OFAC scr een on custom er s opening an account.

Omnichannel
Om nichannel is a ser vice deliver y m odel that integr ates differ ent inter action points
for custom er s such as online, by phone or in stor e. Om nichannel Banking offer s
banking access acr oss these thr ee m ethods.

Onboarding
The steps r equir ed to get a new custom er integr ated into a new pr ogr am . These
steps m ay var y business to business.

Open Banking
Indicated the use of open APIs by banks to enable softwar e developer s to cr eate
applications using the bank’s data.

Glossary - 1184 -
Open Transaction
All tr ansactions, when cr eated byManager , ar e consider ed to be in Open status.
Fr om this status, a tr ansaction can either pr oceed to the Star ted or Bounced
statuses.

Open UX
Open UX is the open API for developm ent of financial custom er jour neys on the
Tem enos Jour ney platfor m . Team s skilled in use of React, Angular or other Javas-
cr ipt fr am ewor ks will find this the fastest path to developing pr oduction class
applications.

OpenSAM L
OpenSAML is a set of open sour ce C++ & Java libr ar ies used in suppor t of the Shib-
boleth Pr oject's im plem entation of the Secur ity Asser tion Mar kup Language
(SAML).

Oracle Linux
Or acle Linux (OL, for m er ly known as Or acle Enter pr ise Linux) is a Linux distr ibution
packaged and fr eely distr ibuted by Or acle, available par tially under the GNU Gen-
er al Public License since late 2006. It is com piled fr om Red Hat Enter pr ise Linux
(RHEL) sour ce code, r eplacing Red Hat br anding with Or acle's. It is also used by
Or acle Cloud and Or acle Engineer ed System s such as Or acle Exadata and other s.

Oracle RDBM S
Or acle Database is a m ulti-m odel database m anagem ent system pr oduced and
m ar keted by Or acle Cor por ation. It is a database com m only used for r unning
online tr ansaction pr ocessing (OLTP), data war ehousing (DW) and m ixed (OLTP &
DW) database wor kloads.

Origination
Or igination is the pr ocess of setting up the appr oved custom er (new or existing)
with specific pr oducts and featur es, and get them com pletely configur ed in the
cor e.

Glossary - 1185 -
P

PaaS
Platfor m as a Ser vice (PaaS) is a categor y of cloud com puting ser vices that
pr ovides a platfor m allowing custom er s to develop, r un, and m anage applications
without the com plexity of building and m aintaining the infr astr uctur e typically asso-
ciated with developing and launching an app.

Page Base Content


A web page’s content as defined in the for m space in Manager .

Payee
A per son or business to whom a check is wr itten.

Payment Card Industry Compliance


Paym ent Car d Industr y Com pliance (PCI Com pliance) is a set of secur ity standar ds
designed to pr otect car d infor m ation dur ing and after financial tr ansactions.

Payment Gateway
A ser vice pr ovider that author izes car d paym ents.

PCI policy
PCI policy is a type of secur ity policy that cover s how an or ganization addr esses the
12 r equir em ents of the Paym ent Car d Industr y Data Secur ity Standar d (PCI DSS). A
PCI policy is r equir ed of all m er chants and ser vice pr ovider s who stor e, pr ocess or
tr ansm it cr edit car d holder data.

Pen Test
Penetr ation testing, also called pen testing or ethical hacking, is the pr actice of test-
ing a com puter system , networ k or web application to find secur ity vulner abilities
that an attacker could exploit. Penetr ation testing can be autom ated with softwar e
applications or per for m ed m anually. Either way, the pr ocess involves gather ing
infor m ation about the tar get befor e the test, identifying possible entr y points,
attem pting to br eak in, either vir tually or for r eal, and r epor ting back the findings.

Glossary - 1186 -
Personal Identification Number
Per sonal identification Num ber (PIN) is a num ber issued with your debit or cr edit
car d.

Personally identifiable information


Per sonally identifiable infor m ation (PII) is any data that could potentially identify a
specific individual. Any infor m ation that can be used to distinguish one per son
fr om another and can be used for de-anonym izing anonym ous data can be con-
sider ed PII.

Personally Identifiable Information


Per sonally Identifiable Infor m ation (PII) is infor m ation about an individual that can
be used to distinguish or tr ace an individual‘s identity, such as nam e, social secur -
ity num ber , date and place of bir th, m other ‘s m aiden nam e, or biom etr ic r ecor ds;
and any other infor m ation that is linked to an individual.

PhantomJS
Phantom JS is a scr ipted, headless br owser used for autom ating web page inter -
action. Phantom JS pr ovides a JavaScr ipt API enabling autom ated navigation, scr een-
shots, user behavior and asser tions m aking it a com m on tool used to r un br owser -
based unit tests in a headless system like a continuous integr ation envir onm ent.
Phantom JS is based on WebKit m aking it a sim ilar br owsing envir onm ent to Safar i
and Google Chr om e (befor e Chr om e's for k of WebKit evolved into Blink). It is open-
sour ce softwar e r eleased under the BSD License.

PII
Per sonally Identifiable Infor m ation (PII) is infor m ation about an individual that can
be used to distinguish or tr ace an individual‘s identity, such as nam e, social secur -
ity num ber , date and place of bir th, m other ‘s m aiden nam e, or biom etr ic r ecor ds;
and any other infor m ation that is linked to an individual. In Eur ope, PII is known as
per sonal data.

POM XM L
A Pr oject Object Model or POM is the fundam ental unit of wor k in Maven. It is an
XML file that contains infor m ation about the pr oject and configur ation details used
by Maven to build the pr oject. It contains default values for m ost pr ojects.

Glossary - 1187 -
Proxy
A pr oxy ser ver is a ser ver (a com puter system or an application) that acts as an
inter m ediar y (a gateway) for r equests fr om clients seeking r esour ces fr om other
ser ver s. A client connects to the pr oxy ser ver , r equesting som e ser vice, such as a
file, connection, web page, or other r esour ce available fr om a differ ent ser ver and
the pr oxy ser ver evaluates the r equest as a way to sim plify and contr ol its com -
plexity.

Puppeteer
Puppeteer is a Node libr ar y which pr ovides a high-level API to contr ol headless
Chr om e or Chr om ium over the DevTools Pr otocol. It can also be configur ed to use
full (non-headless) Chr om e or Chr om ium .

QR Code
QR Code (Quick Response Code) is a m achine-r eadable code consisting of an ar r ay
of black and white squar es, typically used for stor ing URLs or other infor m ation for
r eading by the cam er a on a sm ar tphone.

RAF
RAF is an RAF file is a digital photogr aph captur ed by select Fuji digital cam er as,
such as the high-end FinePix m odels. It contains an im age in the uncom pr essed
RAW Fuji (RAF) for m at. RAF files m ay also include a .JPG ver sion of the sam e im age
within the file for thum bnail pr eview pur poses.

ReactJS
ReactJS is a JavaScr ipt libr ar y for building user inter faces.

Recovery Point Objective


Recover y point objective (RPO) is the age of files that m ust be r ecover ed fr om
backup stor age for nor m al oper ations to r esum e if a com puter , system , or net-
wor k goes down as a r esult of a har dwar e, pr ogr am , or com m unications failur e.

Glossary - 1188 -
Recovery Time Objective
Recover y Tim e Objective (RTO) is the tar geted dur ation of tim e and a ser vice level
within which a business pr ocess m ust be r estor ed after a disaster (or disr uption) in
or der to avoid unacceptable consequences associated with a br eak in business
continuity.

Red Hat Enterprise Linux Server


is a distr ibution of the Linux oper ating system developed for the business m ar ket.

Reference Number
A r efer ence num ber is a unique identifier assigned to each tr ansaction.

Referer URL
Refer er URL is the URL that was used to navigate to the for m .

Regular Expression
A r egular expr ession (r egex) is a sequence of char acter s that define a sear ch pat-
ter n. Usually such patter ns ar e used by str ing-sear ching algor ithm s for "find" or
"find and r eplace" oper ations on str ings, or for input validation.

REST
REST or RESTful API design (Repr esentational State Tr ansfer ) is designed to take
advantage of existing pr otocols. While REST can be used over near ly any pr otocol,
it usually takes advantage of HTTP when used for Web APIs.

Routing Number
The num ber s that appear at the bottom of a check to identify the financial insti-
tution.

SaaS
Softwar e as a ser vice (SaaS) is a softwar e licensing and deliver y m odel in which soft-
war e is licensed on a subscr iption basis and is centr ally hosted.

SalesForce
Salesfor ce is the custom er r elationship m anagem ent (CRM) platfor m .

Glossary - 1189 -
SAM L
Secur ity Asser tion Mar kup Language (SAML) is an open standar d that allows iden-
tity pr ovider s (IdP) to pass author ization cr edentials to ser vice pr ovider s (SP).
SAML tr ansactions use Extensible Mar kup Language (XML) for standar dized com -
m unications between the identity pr ovider and ser vice pr ovider s. SAML is the link
between the authentication of a user ’s identity and the author ization to use a ser -
vice.

Saved Transaction
Any tr ansaction that has explicitly been Saved by the user . When a user r esum es a
Saved tr ansaction, it can m ove to Com pleted status if the user subm its the for m .
Or it can m ove to Abandoned status if the user abandons the application.

SCCS
Sour ce Code Contr ol System (SCCS) is a ver sion contr ol system designed to tr ack
changes in sour ce code and other text files dur ing the developm ent of a piece of
softwar e. This allows the user to r etr ieve any of the pr evious ver sions of the or i-
ginal sour ce code and the changes which ar e stor ed.

SDK
Softwar e Developm ent Kit (SDK) br ings together a gr oup of tools that enable the
pr ogr am m ing of m obile applications.

SDLC
Softwar e Developm ent Life Cycle (SDLC) is a pr ocess used by the softwar e industr y
to design, develop and test high quality softwar es.

Section
Applications built in Maestr o or Com poser ar e divided into sections. A section can
be a page or m odal page or m odal dialogue.

Security M anager
Secur ity m anager s ar e the Jour ney Manager 's com ponents that ar e r esponsible for
User Authentication, User Author ization, User Self-Registr ation, and Session Man-
agem ent. Secur ity m anger s ar e designed to handle var ious sets of user s r equir ing
access to differ ent for m spaces and can be associated with one or m or e for m
spaces. User s can be exter nal or inter nal, and they can r equir e access to for m

Glossary - 1190 -
spaces or a com bination of for m spaces and m odules in differ ent envir onm ents.
You can find secur ity m anager s under Secur ity > Secur ity Manager s.

Semantic versioning
Sem antic Ver sioning is a for m al convention for specifying com patibility using a
thr ee-par t ver sion num ber : m ajor ver sion; m inor ver sion; and patch. The patch
num ber is incr em ented for m inor changes and bug fixes which do not change the
softwar e's application pr ogr am m ing inter face (API). The m inor ver sion is incr e-
m ented for r eleases which add new, but backwar d-com patible, API featur es, and
the m ajor ver sion is incr em ented for API changes which ar e not backwar d-com -
patible. For exam ple, softwar e which r elies on ver sion 2.1.5 of an API is com patible
with ver sion 2.2.3, but not necessar ily with 3.2.4.

SEP
System Event Publisher

Service-Level Agreement
A ser vice-level agr eem ent (SLA) is a com m itm ent between a ser vice pr ovider and a
client. Par ticular aspects of the ser vice – quality, availability, r esponsibilities – ar e
agr eed between the ser vice pr ovider and the ser vice user .

Session ID
Session ID is a unique num ber that a Web site's ser ver assigns a specific user for
the dur ation of that user 's visit (session). The session ID can be stor ed as a cookie,
for m field, or URL (Unifor m Resour ce Locator ). Som e Web ser ver s gener ate session
IDs by sim ply incr em enting static num ber s.

Session management
Session m anagem ent is the r ule set that gover ns inter actions between a web-
based application and user s. Br owser s and websites use HTTP to com m unicate,
and a web session is a ser ies of HTTP r equests and r esponse tr ansactions cr eated
by the sam e user . Since HTTP is a stateless pr otocol, wher e each r equest and
r esponse pair is independent of other web inter actions, each com m and r uns inde-
pendently without knowing pr evious com m ands. In or der to intr oduce the concept
of a session, it is necessar y to im plem ent session m anagem ent capabilities that
link both the authentication and access contr ol (or author ization) m odules com -
m only available in web applications.

Glossary - 1191 -
SharePoint
Shar ePoint is a web-based collabor ative platfor m that integr ates with Micr osoft
Office.

Single-page web application


A single-page application (SPA) is a web application or website that inter acts with
the user by dynam ically r ewr iting the cur r ent web page with new data fr om the
web ser ver , instead of the default m ethod of a web br owser loading entir e new
pages.

Single Channel
The ser vice deliver y m odel that lim its custom er s to a single inter action point or
pathway. Custom er s ar e r estr icted to just online, phone, or in stor e/br anch access,
for exam ple.

SLA
A ser vice-level agr eem ent (SLA) is a com m itm ent between a ser vice pr ovider and a
client. Par ticular aspects of the ser vice – quality, availability, r esponsibilities – ar e
agr eed between the ser vice pr ovider and the ser vice user .

SmartForm
A Sm ar tFor m is a dynam ic electr onic for m with capabilities beyond a tr aditional
paper or PDF for m , allowing electr onic com pletion, dynam ic sections, database
calls and electr onic subm ission.

SM TP
SMTP (Sim ple Mail Tr ansfer Pr otocol) is a TCP/IP pr otocol used in sending and
r eceiving e-m ail. However , since it is lim ited in its ability to queue m essages at the
r eceiving end, it is usually used with one of two other pr otocols, POP3 or IMAP, that
let the user save m essages in a ser ver m ailbox and download them per iodically
fr om the ser ver . In other wor ds, user s typically use a pr ogr am that uses SMTP for
sending e-m ail and either POP3 or IMAP for r eceiving e-m ail. On Unix-based sys-
tem s, sendm ail is the m ost widely-used SMTP ser ver for e-m ail. A com m er cial pack-
age, Sendm ail, includes a POP3 ser ver . Micr osoft Exchange includes an SMTP
ser ver and can also be set up to include POP3 suppor t.

Glossary - 1192 -
SoE
System s of Engagem ent (SoE) is the technology used by an or ganization to help
facilitate and or chestr ate the custom er jour ney via m or e per sonalized, seam less
inter actions acr oss the var ious touchpoints. These include social m edia channels,
em ail m ar keting platfor m s, m obile apps, and content m anagem ent system s.

Software as a Service
Softwar e as a Ser vice (SaaS) is a softwar e distr ibution m odel wher e logical suppor t
and data ar e stor ed in the ser ver s of an IT com pany, and custom er s access the ser -
vice online. This m odel is com m on in FinTech ser vices because of scalability and
secur ity.

SOQL
Salesfor ce Object Quer y Language (SOQL) is used to constr uct sim ple but power ful
quer y str ings in the quer yStr ing par am eter in the quer y() call, in Apex statem ents,
in Visualfor ce contr oller s and getter m ethods, or in the Schem a Explor er of the
For ce.com IDE.

SoR
System of Recor d (SOR) is an ISRS (infor m ation stor age and r etr ieval system ) that is
the author itative sour ce for a par ticular data elem ent in a system containing m ul-
tiple sour ces of the sam e elem ent. To ensur e data integr ity, ther e m ust be one --
and only one -- system of r ecor d for a given piece of infor m ation.

SoW
A statem ent of wor k (SoW) is a docum ent r outinely em ployed in the field of pr oject
m anagem ent. It defines pr oject-specific activities, deliver ables and tim elines for a
vendor pr oviding ser vices to the client.

SSL
SSL (Secur e Sockets Layer ) and its successor , TLS (Tr anspor t Layer Secur ity), ar e
pr otocols for establishing authenticated and encr ypted links between networ ked
com puter s. Although the SSL pr otocol was depr ecated with the r elease of TLS 1.0
in 1999, it is still com m on to r efer to these r elated technologies as “SSL” or
“SSL/TLS.”

Glossary - 1193 -
SSO
Single sign-on (SSO) is a pr oper ty of access contr ol of m ultiple r elated, yet inde-
pendent, softwar e system s. With this pr oper ty, a user logs in with a single ID and
passwor d to gain access to any of sever al r elated system s.

Started Transaction
Star ted Tr ansaction is any tr ansaction wher e a user inter acted with a for m applic-
ation by inputting som e data. A star ted tr ansaction is a pr ogr essive step towar ds
com pletion. Star ted tr ansactions and Bounced tr ansactions ar e m utually exclusive.
For instance, a star ted tr ansaction can never becom e a bounced tr ansaction and
vice ver sa.

Static Content Externalization


Static Content Exter nalization (SCE).

SVG font
An SVG font is a new ver sion of the OpenType for m at, with SVG standing for Scal-
able Vector Gr aphics. The SVG glyph for m at allows the char acter s to be displayed
in m ultiple color s and differ ent tr anspar encies, and som e m ay even be anim ated.

SVN
Subver sion (SVN) is a softwar e ver sioning and r evision contr ol system .

Thread
A thr ead of execution is the sm allest sequence of pr ogr am m ed instr uctions that
can be m anaged independently by a scheduler , which is typically a par t of the oper -
ating system .

TIG
Tr ansact Integr ation Gateway

TimeToCustomerValue
TTCV

Glossary - 1194 -
TIS
Top Im age System s (TIS) is a global innovator of on-pr em ise and cloud-based applic-
ations that optim ize content-dr iven business pr ocesses such as pr ocur e to pay
oper ations, r em ittance pr ocessing, integr ated r eceivables, custom er r esponse
m anagem ent and m or e.

TLS
Tr anspor t Layer Secur ity (TLS) is a cr yptogr aphic pr otocol designed to pr ovide com -
m unications secur ity over a com puter networ k.

Token-signing certificate
Token signing cer tificates ar e standar d X509 cer tificates that ar e used to secur ely
sign all tokens that the feder ation ser ver issues. Token decr yption cer tificates ar e
standar d X509 cer tificates that ar e used to decr ypt any incom ing tokens. They ar e
also published in feder ation m etadata.

Topic-based authoring
Topic-based author ing is a m odular appr oach to content cr eation wher e content is
str uctur ed ar ound topics that can be m ixed and r eused in differ ent contexts.

Transact Application
A Jour ney Application is what the applicant or user inter acts with to subm it their
application. It is a Maestr o or Tr ansact Com poser for m , possibly with som e Tr ans-
act Exchange com ponents, as well as other configur ation infor m ation and ser vices
code. Once the user subm its the for m application, it becom es a com pleted tr ans-
action in Manager .

Transact Application Version


A Jour ney Application Ver sion is a ver sion of a for m application as published by
Manager .

Transact Insights Field Name


Jour ney Analytics Field Nam e is another ver sion of a for m application field nam e
configur ed in the Maestr o Data tab to im pr ove r eadability of the analytics data on
Jour ney Analytics.

Glossary - 1195 -
Transact Integration Agent
Tr ansact Integr ation Agent is a softwar e appliance hosted inside the client or gan-
ization’s data center , which r eceives for m subm ission deliver ies and file attach-
m ents fr om the Jour ney Manager ser ver .

Transact M anager
Jour ney Manager is a ser ver application, deployed in the cloud or on-pr em ise, that
hosts for m s, contr ols inter action with custom er s, calls on specialized ser vices like
identity ver ification or r isk analysis and exchanges data with back office system s of
r ecor d.

Transaction
A tr ansaction is cr eated when a user opens a for m application.

Transpiler
Ttr anspiler is a sour ce-to-sour ce tr anslator , sour ce-to-sour ce com piler , tr anscom -
piler , which is a type of tr anslator that takes the sour ce code of a pr ogr am wr itten
in a pr ogr am m ing language as its input and pr oduces an equivalent sour ce code in
the sam e or a differ ent pr ogr am m ing language.

Transport Layer Security


Tr anspor t Layer Secur ity (TLS) is a pr otocol that pr ovides pr ivacy and data integr ity
between two com m unicating applications. It's the m ost widely deployed secur ity
pr otocol used today, and is used for Web br owser s and other applications that
r equir e data to be secur ely exchanged over a networ k, such as file tr ansfer s, VPN
connections, instant m essaging and voice over IP.

TTF font
Tr ueType (TTF) is an outline font standar d developed by Apple in the late 1980s as a
com petitor to Adobe's Type 1 fonts used in PostScr ipt. It has becom e the m ost
com m on for m at for fonts on the classic Mac OS, m acOS, and Micr osoft Windows
oper ating system s.

Two-factor authentication
Two-factor authentication (2FA), som etim es r efer r ed to as two-step ver ification or
dual factor authentication, is a secur ity pr ocess in which the user pr ovides two dif-
fer ent authentication factor s to ver ify them selves to better pr otect both the user 's

Glossary - 1196 -
cr edentials and the r esour ces the user can access. Two-factor authentication
pr ovides a higher level of assur ance than authentication m ethods that depend on
single-factor authentication (SFA), in which the user pr ovides only one factor -- typ-
ically a passwor d or passcode. Two-factor authentication m ethods r ely on user s
pr oviding a passwor d as well as a second factor , usually either a secur ity token or a
biom etr ic factor like a finger pr int or facial scan.

UAT
User acceptance testing (UAT) is the last phase of the softwar e testing pr ocess. Dur -
ing UAT, actual softwar e user s test the softwar e to m ake sur e it can handle
r equir ed tasks in r eal-wor ld scenar ios, accor ding to specifications.

Underbanked
People who have lim ited or no access to pr oper banking or ser vices.

Unicode
Unicode is an infor m ation technology standar d for the consistent encoding, r ep-
r esentation, and handling of text expr essed in m ost of the wor ld's wr iting system s.

Unit Test
is a softwar e developm ent life cycle (SDLC) com ponent in which a com pr ehensive
testing pr ocedur e is individually applied to the sm allest par ts of a softwar e pr o-
gr am for fitness or desir ed oper ation. Unit Testing is a softwar e testing m ethod by
which individual units of sour ce code ar e tested to deter m ine whether they ar e fit
for use. For m or e infor m ation, see http://docs.gr oovy-lang.or -
g/next/htm l/docum entation/cor e-testing-guide.htm l.

USA PATRIOT Act


The pur pose of the USA PATRIOT Act is to deter and punish ter r or ist acts in the
United States and ar ound the wor ld and str engthen U.S. m easur es to pr event,
detect and pr osecute inter national m oney launder ing and financing of ter r or ism .

User Agent
User agent is softwar e (a softwar e agent) that is acting on behalf of a user . One
com m on use of the ter m r efer s to a web br owser that r etr ieves, r ender s and

Glossary - 1197 -
facilitates end user inter action with Web content.

User authentication
User authentication is the ver ification of an active hum an-to-m achine tr ansfer of
cr edentials r equir ed for confir m ation of a user 's authenticity.

User authorization
User author ization is inter ested in who the user is, and is used to deter m ine what
functions, actions, data, or other par ts of an application the user has access to.

UTC
Univer sal Tim e Coor dinated. Pr ior to 1972, this tim e was called Gr eenwich Mean
Tim e (GMT) but is now r efer r ed to as Coor dinated Univer sal Tim e or Univer sal Tim e
Coor dinated (UTC). It is a coor dinated tim e scale, m aintained by the Bur eau Inter -
national des Poids et Mesur es (BIPM). It is also known as "Z tim e" or "Zulu Tim e".

UX
User exper ience (UX) design is the pr ocess of cr eating pr oducts that pr ovide m ean-
ingful and r elevant exper iences to user s. This involves the design of the entir e pr o-
cess of acquir ing and integr ating the pr oduct, including aspects of br anding,
design, usability, and function.

UXP
A user exper ience platfor m (UXP) is an integr ated set of technologies used to
pr ovide inter action between a user and a set of applications, pr ocesses, content,
ser vices or other user s. A UXP has sever al com ponents, including por tals, m ashup
tools, content m anagem ent, sear ch, r ich Inter net application (RIA) tools, analytics,
collabor ation, social and m obile tools. It m ay be deliver ed as a suite of pr oducts or
as a single pr oduct.

Virtual Data Centre


Vir tual Data Centr e (VDC) is an autom ated and scalable Infr astr uctur e as a Ser vice
(IaaS) cloud platfor m pr oviding com pute, networ k and stor age.

Glossary - 1198 -
Virtual M achine
A vir tual m achine (VM) is a softwar e pr ogr am or oper ating system that not only
exhibits the behavior of a separ ate com puter , but is also capable of per for m ing
tasks such as r unning applications and pr ogr am s like a separ ate com puter . A vir -
tual m achine, usually known as a guest is cr eated within another com puting envir -
onm ent r efer r ed as a "host." Multiple vir tual m achines can exist within a single host
at one tim e.

Virtualization
Vir tualization is the cr eation of a vir tual r esour ce such as a ser ver , desktop, oper -
ating system , file, stor age or networ k to m anage wor kloads by r adically tr ans-
for m ing tr aditional com puting to m ake it m or e scalable.

Virus Scanning Engine


Vir us Scanning Engine is Antivir us softwar e (AV softwar e), also known as anti-m al-
war e, which is a com puter pr ogr am used to pr event, detect, and r em ove m alwar e.

WAR
WAR file (Web Application Resour ce or Web application ARchive) is a file used to dis-
tr ibute a collection of JAR-files, JavaSer ver Pages, Java Ser vlets, Java classes, XML
files, tag libr ar ies, static web pages (HTML and r elated files) and other r esour ces
that together constitute a web application.

White-label
White-label softwar e is softwar e that is pur chased by a com pany fr om a ser vice pr o-
vider and r e-br anded as its own.

Wireframe
A wir efr am e is a diagr am or a set of diagr am s that consists of sim ple lines and
shapes r epr esenting the skeleton of a website or an application's user inter face
(UI) and cor e functionality. In Maestr o, it's the centr al par t of the Design m ode inter -
face.

Glossary - 1199 -
WOFF font
The Web Open Font For m at (WOFF) is a font for m at for use in web pages. WOFF
files ar e OpenType or Tr ueType fonts, with for m at-specific com pr ession applied
and additional XML m etadata added.

WOFF2 font
WOFF2 font is a web font file cr eated in the WOFF (Web Open Font For m at) 2.0
for m at, an open for m at used to deliver webpage fonts on the fly. It is saved as a
com pr essed container that suppor ts Tr ueType (. TTF) and OpenType (. OTF) fonts.
WOFF2 files also suppor t font licensing m etadata.

Workflow
A wor kflow is pr ogr ession of steps (tasks, events, inter actions) that com pr ise a
wor k pr ocess, involve two or m or e per sons, and cr eate or add value to the or gan-
ization's activities. In a sequential wor kflow, each step is dependent on occur r ence
of the pr evious step; in a par allel wor kflow, two or m or e steps can occur con-
cur r ently.

WYSIWYG
WYSIWYG, an acr onym for What You See Is What You Get, is a system in which edit-
ing softwar e allows content to be edited in a for m that r esem bles its appear ance
when pr inted or displayed as a finished pr oduct, such as a pr inted docum ent, web
page, or slide pr esentation.

X-Frame-Options
X-Fr am e-Options HTTP r esponse header can be used to indicate whether or not a
br owser should be allowed to r ender a page in a <fr am e>, <ifr am e>, <em bed> or
<object> . Sites can use this to avoid clickjacking attacks, by ensur ing that their con-
tent is not em bedded into other sites.

XDP
XML Data Package (XDP) for m at is a file for m at developed by Adobe System s for
packaging PDF data into XML files; contains the entir e PDF docum ent contents
including for m and tem plate data; m ay also include char acter -encoded sections for
binar y content.

Glossary - 1200 -
XLS
is a file extension for a spr eadsheet file for m at cr eated by Micr osoft for use with
Micr osoft Excel. XLS stands for eXceL Spr eadsheet. Micr osoft Excel files use a pr o-
pr ietar y for m at for stor ing Micr osoft Excel docum ents.

XM L
XML (Extensible Mar kup Language) is a m ar kup language that defines a set of r ules
for encoding docum ents in a for m at that is both hum an-r eadable and m achine-
r eadable.

XPath
XPath (XML Path Language) is a quer y language for selecting nodes fr om an XML
docum ent. In addition, XPath m ay be used to com pute values (e.g., str ings, num -
ber s, or Boolean values) fr om the content of an XML docum ent. XPath was defined
by the Wor ld Wide Web Consor tium (W3C).

XQuery
XQuer y is a specification for a quer y language that allows a user or pr ogr am m er to
extr act infor m ation fr om an Extensible Mar kup Language (XML) file or any col-
lection of data that can be XML-like.

XSD
XSD (XML Schem a Definition) is a Wor ld Wide Web Consor tium (W3C) r ecom -
m endation that specifies how to for m ally descr ibe the elem ents in an Extensible
Mar kup Language (XML) docum ent.

XSS
Cr oss-site scr ipting (XSS) is a type of secur ity vulner ability that can be found in
som e web applications. XSS attacks enable attacker s to inject client-side scr ipts
into web pages viewed by other user s. A cr oss-site scr ipting vulner ability m ay be
used by attacker s to bypass access contr ols such as the sam e-or igin policy.

Glossary - 1201 -

You might also like