You are on page 1of 497

Board 6.

1 Manual

Table Of Contents
Foreword ........................................................................................................................................................ 1
Board Capsules and Databases .................................................................................................................... 2
BOARD Capsules and Databases ............................................................................................................. 2
Board Capsules .......................................................................................................................................... 2
Board Databases ........................................................................................................................................ 4
The workspace ............................................................................................................................................... 5
Installation concepts....................................................................................................................................... 6
Installation concepts ................................................................................................................................... 6
Choosing the architecture .......................................................................................................................... 7
Stand-alone installation overview ............................................................................................................... 7
CMS installation overview .......................................................................................................................... 8
WebServer installation overview ................................................................................................................ 8
The Client-Master-Server Architecture .......................................................................................................... 9
Component connections and deployment ..................................................................................................... 9
Application architecture ................................................................................................................................ 11
Deployment configurations .......................................................................................................................... 11
Deployment configurations ....................................................................................................................... 12
Stand-alone installation ............................................................................................................................ 12
CMS installation........................................................................................................................................ 13
Dimensioning criteria.................................................................................................................................... 15
Dimensioning criteria ................................................................................................................................ 15
Running multiple sessions of BoardServer .............................................................................................. 15
Server clustering and dynamic load-balancing ........................................................................................ 16
Board in a demilitarized zone (DMZ) ........................................................................................................... 17
Board Client installation and configuration .................................................................................................. 19
BoardMaster and BoardServer installation .................................................................................................. 22
BoardMaster configuration ........................................................................................................................... 23
BoardMaster configuration ....................................................................................................................... 23
CMS configuration tab .............................................................................................................................. 23
Web Configuration tab .............................................................................................................................. 25
Security ..................................................................................................................................................... 28
How to create a User Group..................................................................................................................... 29
How to create a user account................................................................................................................... 32
How to find a user account ....................................................................................................................... 33
Licenses and accounts summary ............................................................................................................. 34
Monitor ...................................................................................................................................................... 34
Options Tab .............................................................................................................................................. 35
Board Server configuration .......................................................................................................................... 36
Installation example of a StandAlone architecture....................................................................................... 39
iii

Board 6.1 Manual


Installation example of a CMS architecture ................................................................................................. 40
Licenses overview ........................................................................................................................................ 43
License activation process overview............................................................................................................ 44
License activation process overview ........................................................................................................ 44
Prerequisites............................................................................................................................................. 44
Creating the half-KEY file ............................................................................................................................. 45
Sending the half-KEY for certification .......................................................................................................... 46
Receive and verify the certified KEY............................................................................................................ 48
Moving a license from one computer to a new one ..................................................................................... 48
Uninstalling a license ................................................................................................................................... 49
Upgrading a license ..................................................................................................................................... 49
Reinstalling a license ................................................................................................................................... 50
Important notes ............................................................................................................................................ 50
The BoardMaster program ........................................................................................................................... 51
The BoardMaster program ....................................................................................................................... 51
Installing BoardMaster as a Windows system service ............................................................................. 52
Starting and stopping BoardMaster interactively...................................................................................... 52
Starting and stopping BoardMaster from the command line .................................................................... 53
Board Activities log files ............................................................................................................................... 53
Database log file ....................................................................................................................................... 53
BoardServer log file .................................................................................................................................. 54
Web users activity log .............................................................................................................................. 55
HTTP service log file ................................................................................................................................ 57
Before you start ............................................................................................................................................ 59
The approach ........................................................................................................................................... 59
Understanding the database caching ....................................................................................................... 59
Accessing database design functions .......................................................................................................... 60
Database design functions summary ........................................................................................................... 61
Creating a new Database ............................................................................................................................ 62
Making a backup copy of a database .......................................................................................................... 62
Changing the name of a database ............................................................................................................... 63
Time range ................................................................................................................................................... 63
Time range ............................................................................................................................................... 63
Defining the years range .......................................................................................................................... 64
Defining the Fiscal Year ........................................................................................................................... 65
Using the Bimonth .................................................................................................................................... 65
Using Quarters ......................................................................................................................................... 65
Using Weeks ............................................................................................................................................ 66
Using Day ................................................................................................................................................. 67
Setting the time entities language ............................................................................................................ 67
Defining custom time entities ................................................................................................................... 67
iv

Table Of Contents
Defining time entities relationships ........................................................................................................... 68
Adding and deleting members of a custom time entity ............................................................................ 69
Assigning relationships ............................................................................................................................. 70
Viewing a relationship in analytical mode ................................................................................................ 71
Viewing a relationship in summarized mode ............................................................................................ 72
Identifying missing relationships (orphan items) ...................................................................................... 73
Assigning a relationship to all orphan items ............................................................................................. 73
Entities ......................................................................................................................................................... 74
Basic concepts ......................................................................................................................................... 74
Creating an entity ..................................................................................................................................... 74
Defining the Max Item Number................................................................................................................. 76
Modifying entity properties ....................................................................................................................... 77
Deleting an entity ...................................................................................................................................... 78
Setting the entity cut-off ............................................................................................................................ 78
Inserting, editing and deleting entity members ......................................................................................... 79
Deleting all entity members ...................................................................................................................... 80
Relationships................................................................................................................................................ 81
Basic concepts ......................................................................................................................................... 81
Defining a relationship .............................................................................................................................. 82
Removing a relationship ........................................................................................................................... 83
Assigning a relationship ........................................................................................................................... 83
Viewing relationship in analytical mode.................................................................................................... 85
Viewing relationship in summarized mode ............................................................................................... 85
Identifying missing relationships (orphan items) ...................................................................................... 86
Assigning a relationship to all orphan items ............................................................................................. 86
The Normalize function ............................................................................................................................ 86
InfoCubes ..................................................................................................................................................... 87
Basic concepts ......................................................................................................................................... 87
Introducing sparse structures ................................................................................................................... 88
Sparse actual size and density................................................................................................................. 89
The sparse types: Dynamic, Static and Static External ........................................................................... 90
About InfoCubes, versions and sparse structures ................................................................................... 91
Numeric data types................................................................................................................................... 91
MXC data type .......................................................................................................................................... 92
Text data types ......................................................................................................................................... 92
Date data type .......................................................................................................................................... 93
Creating an InfoCube ............................................................................................................................... 93
Copying an InfoCube structure................................................................................................................. 95
Creating a new InfoCube with the same structure as an existing one ..................................................... 95
Moving an InfoCube ................................................................................................................................. 95
Adding a new version to an InfoCube ...................................................................................................... 95
v

Board 6.1 Manual


Verifying and Aligning InfoCube versions ................................................................................................ 96
Clearing an InfoCube ............................................................................................................................... 97
Deleting an InfoCube ................................................................................................................................ 97
The Database Designer environment .......................................................................................................... 97
What is the DB Designer .......................................................................................................................... 97
The DB Designer workspace.................................................................................................................... 97
Designing Entities and hierarchies ........................................................................................................... 99
Creating or editing and InfoCubes.......................................................................................................... 100
DB Designer Options .............................................................................................................................. 102
Data Reader ............................................................................................................................................... 102
Basic concepts ....................................................................................................................................... 102
Valid date formats................................................................................................................................... 103
Append and Replace options ................................................................................................................. 104
Data loading guidelines .......................................................................................................................... 105
Creating a text file Data Reader protocol ............................................................................................... 106
Loading data from multi-column text files ............................................................................................... 107
Creating an ODBC Data Reader protocol .............................................................................................. 108
Editing and testing the SQL statement of an ODBC Data Reader protocol ........................................... 111
Setting the ODBC Connection string ...................................................................................................... 112
Defining an ETL transformation and validation rule ............................................................................... 112
Copying a Data Reader protocol ............................................................................................................ 114
Deleting a Data Reader protocol ............................................................................................................ 115
Running a Data Reader protocol ............................................................................................................ 115
Optimization tips ..................................................................................................................................... 116
Interrupting a Data Reader protocol ....................................................................................................... 116
Batch reader............................................................................................................................................... 116
Basic concepts ....................................................................................................................................... 116
Creating a Batch Reader procedure....................................................................................................... 116
Running a Batch Reader procedure ....................................................................................................... 117
Deleting a Batch Reader procedure ....................................................................................................... 118
Drill-Through .............................................................................................................................................. 118
Basic concepts ....................................................................................................................................... 118
Creating a Drill-Through protocol ........................................................................................................... 119
Rules .......................................................................................................................................................... 121
Basic concepts ....................................................................................................................................... 121
Defining a Rule ....................................................................................................................................... 122
Using a rule in a Layout .......................................................................................................................... 123
Using a rule in a DataFlow ..................................................................................................................... 124
Security ...................................................................................................................................................... 125
Basic concepts ....................................................................................................................................... 125
Defining a security profile ....................................................................................................................... 126
vi

Table Of Contents
Assigning a security profile to a user account ........................................................................................ 127
DB Verify &endash; database integrity check and optimization ................................................................ 127
Log file ........................................................................................................................................................ 127
Capsule basic concepts ............................................................................................................................. 129
Prerequisites........................................................................................................................................... 129
Capsule structure ................................................................................................................................... 129
Understanding Runtime mode and Design mode .................................................................................. 130
Working with Capsules .............................................................................................................................. 131
The Capsule object model ...................................................................................................................... 131
Opening a Capsule ................................................................................................................................. 131
Navigating through screens.................................................................................................................... 131
Workspace features................................................................................................................................ 133
Collaboration functions .............................................................................................................................. 133
Boards collaboration functions .............................................................................................................. 133
Presenting a Briefing .............................................................................................................................. 134
Attending a Briefing ................................................................................................................................ 135
Running a Synchronous Collaborative session...................................................................................... 136
The Workspaces DynaSheet and DynaWrite ........................................................................................... 138
The Select .................................................................................................................................................. 138
What is the Select function ..................................................................................................................... 138
Making a selection .................................................................................................................................. 139
Resetting a selection .............................................................................................................................. 139
Adding entity members to a selection .................................................................................................... 140
The Find function .................................................................................................................................... 141
The Keep function .................................................................................................................................. 141
The Focus function ................................................................................................................................. 142
The time entities scroll buttons ............................................................................................................... 142
The DynaBar .............................................................................................................................................. 142
What is the DynaBar............................................................................................................................... 142
Configuring the DynaBar ........................................................................................................................ 143
Using the DynaBar ................................................................................................................................. 144
DynaBar synchronization across screens .............................................................................................. 144
Drill-down and drill-through ........................................................................................................................ 145
How to drill-down .................................................................................................................................... 145
How to drill-through ................................................................................................................................ 146
Printing from a drill-down window........................................................................................................... 146
Exporting data to Microsoft Excel .............................................................................................................. 147
Capsules Management .............................................................................................................................. 147
Copying and Deleting Capsules ............................................................................................................. 147
Copying or deleting Capsule screens or Procedures ............................................................................. 147
Opening a capsule from command line .................................................................................................. 148
vii

Board 6.1 Manual


Scheduling Capsule procedures ............................................................................................................ 148
Capsules Design ........................................................................................................................................ 149
Capsule design concepts and guidelines ............................................................................................... 149
Understanding Capsules caching........................................................................................................... 150
Creating a new Capsule ......................................................................................................................... 151
Protecting a Capsule .............................................................................................................................. 151
Screens ...................................................................................................................................................... 152
About screens......................................................................................................................................... 152
Screen properties ................................................................................................................................... 153
Creating a screen ................................................................................................................................... 154
Saving a screen ...................................................................................................................................... 155
Deleting a screen.................................................................................................................................... 155
Creating screen panes ........................................................................................................................... 155
Adding and removing objects on a screen ............................................................................................. 156
Defining the Menu .................................................................................................................................. 157
Screen size ............................................................................................................................................. 157
The Undo function .................................................................................................................................. 158
The Layout object....................................................................................................................................... 158
About the Layout .................................................................................................................................... 158
Defining a Layout.................................................................................................................................... 158
Setting Data ............................................................................................................................................ 162
Data Selection ........................................................................................................................................ 162
Column Algorithm ................................................................................................................................... 163
Ranking function ..................................................................................................................................... 165
Entities & relationships ........................................................................................................................... 166
Heading .................................................................................................................................................. 166
Decimal digits ......................................................................................................................................... 166
Divide By ................................................................................................................................................ 166
Summary algorithm ................................................................................................................................ 166
Row totals ............................................................................................................................................... 167
Allow Changes........................................................................................................................................ 167
Hide zeros .............................................................................................................................................. 168
Hide this block ........................................................................................................................................ 168
Functions tab .......................................................................................................................................... 168
Rule ........................................................................................................................................................ 170
References tab ....................................................................................................................................... 170
Alert tab .................................................................................................................................................. 173
The format tab ........................................................................................................................................ 176
Setting Axes ........................................................................................................................................... 176
Setting Filters.......................................................................................................................................... 178
The Layout toolbox ................................................................................................................................. 179
viii

Table Of Contents
Button ......................................................................................................................................................... 180
The Button object ................................................................................................................................... 180
Creating a Button.................................................................................................................................... 180
Button Appearance ................................................................................................................................. 180
Button Actions ........................................................................................................................................ 181
Button Options ........................................................................................................................................ 182
Picture ........................................................................................................................................................ 183
The Picture object................................................................................................................................... 183
Creating a Picture or a text label ............................................................................................................ 183
Folder ......................................................................................................................................................... 184
The Folder object.................................................................................................................................... 184
Creating a Folder .................................................................................................................................... 184
DataView .................................................................................................................................................... 185
The DataView object .............................................................................................................................. 185
Creating a DataView .............................................................................................................................. 185
Data-entry features ................................................................................................................................. 185
Formatting options .................................................................................................................................. 186
Drill-down on a cell ................................................................................................................................. 187
Graph ......................................................................................................................................................... 188
The Graph object .................................................................................................................................... 188
Creating a Child Layout Graph ............................................................................................................... 188
Creating a Stand-alone Layout Graph ................................................................................................... 189
Formatting a Graph using the Chart Wizard .......................................................................................... 190
Formatting a Graph using the Chart Designer ....................................................................................... 190
Creating and using chart templates........................................................................................................ 192
GDE Graphic Data-entry ......................................................................................................................... 192
The GDE object ...................................................................................................................................... 192
Creating a Child Layout GDE ................................................................................................................. 193
Creating a Stand-alone Layout GDE ...................................................................................................... 194
Using a GDE........................................................................................................................................... 194
Setting a background picture on the GDE object ................................................................................... 195
Mapping ..................................................................................................................................................... 195
The Mapping object ................................................................................................................................ 195
Creating a Mapping ................................................................................................................................ 196
Using a Mapping chart ........................................................................................................................... 196
Setting a background picture on the Mapping object ............................................................................. 198
Cockpit ....................................................................................................................................................... 198
The Cockpit object .................................................................................................................................. 198
Creating a Cockpit .................................................................................................................................. 199
Using a Cockpit ...................................................................................................................................... 200
Setting a background picture on the Cockpit object ............................................................................... 201
ix

Board 6.1 Manual


Alert box ..................................................................................................................................................... 201
The Alert object ...................................................................................................................................... 201
Creating an Alert..................................................................................................................................... 202
Using an Alert ......................................................................................................................................... 203
Setting a background picture on the Alert object ................................................................................... 204
DynaSheet ................................................................................................................................................. 204
The DynaSheet object ............................................................................................................................ 204
Creating a DynaSheet ............................................................................................................................ 204
The DynaSheet Designer ....................................................................................................................... 205
DynaSheet options ................................................................................................................................. 206
DynaWrite .................................................................................................................................................. 206
The DynaWrite object ............................................................................................................................. 206
Creating a DynaWrite object .................................................................................................................. 206
The DynaWrite environment................................................................................................................... 207
Viewer ........................................................................................................................................................ 207
The Viewer object ................................................................................................................................... 207
Creating a Viewer object ........................................................................................................................ 208
Creating a dynamic Viewer object .......................................................................................................... 208
Flowchart.................................................................................................................................................... 208
The Flowchart object .............................................................................................................................. 209
Creating a Flowchart .............................................................................................................................. 210
The Flowchart properties ........................................................................................................................ 211
The Flowchart box properties ................................................................................................................. 213
The Flowchart arrow properties.............................................................................................................. 215
STO - Simple Transaction object ............................................................................................................... 215
The Simple Transaction object ............................................................................................................... 215
Creating a STO....................................................................................................................................... 216
Data-entry default and the Choose( ) function ....................................................................................... 219
Using the STO ........................................................................................................................................ 222
Data-entry and DS&S ................................................................................................................................ 224
The Logical Data-entry: Data Split & Splat ............................................................................................. 224
Inverse algorithm .................................................................................................................................... 225
About procedures ....................................................................................................................................... 227
The Procedure Designer ............................................................................................................................ 227
Opening the Procedures Designer ......................................................................................................... 227
Creating a procedure .............................................................................................................................. 227
Moving an action .................................................................................................................................... 228
Copying and deleting procedures........................................................................................................... 228
Editing an existing procedure ................................................................................................................. 228
Actions reference ....................................................................................................................................... 228
Goto ........................................................................................................................................................ 229
x

Table Of Contents
Select ...................................................................................................................................................... 230
Process ................................................................................................................................................... 231
The DataFlow process ........................................................................................................................... 232
Print ........................................................................................................................................................ 234
Launch .................................................................................................................................................... 235
Data Read .............................................................................................................................................. 235
Xtract ...................................................................................................................................................... 237
More ....................................................................................................................................................... 238
The Broadcasting function ......................................................................................................................... 238
About the Broadcasting function ............................................................................................................ 238
How to set up a Broadcasting screen..................................................................................................... 239
Board Web Server basics concepts ........................................................................................................... 241
About Board Web Server ....................................................................................................................... 241
About Board Web Queries ..................................................................................................................... 241
The Board Web root directory ................................................................................................................ 241
The Web Server architecture ..................................................................................................................... 242
Overview................................................................................................................................................. 242
Notes on Security ................................................................................................................................... 242
Getting started............................................................................................................................................ 242
Installation and overview ........................................................................................................................ 242
Notes on Database design and content ................................................................................................. 243
Building your Board Management Intelligence Quick Site ......................................................................... 243
What is Quick Site .................................................................................................................................. 243
Board Quick Site features ...................................................................................................................... 244
Quick Site navigator tree ........................................................................................................................ 244
Personal folders and Group folders ........................................................................................................... 246
The online Query Builder and Query Manager .......................................................................................... 246
Accessing the Query Builder .................................................................................................................. 246
Creating a query using the Query Builder .............................................................................................. 247
Saving a Board Web query .................................................................................................................... 250
Query Builder functions reference .......................................................................................................... 251
Fundamental end-user functions ............................................................................................................... 258
Navigating through an existing query ..................................................................................................... 258
Changing page ....................................................................................................................................... 259
Changing selection ................................................................................................................................. 260
Saving a Query to a MS-Excel file.......................................................................................................... 261
Using the Drill-down and Drill-through features ..................................................................................... 261
Printing a query ...................................................................................................................................... 262
Data entry options .................................................................................................................................. 262
How to port Capsules reports to the Board Web queries .......................................................................... 264
Generating the Board Web query script from a Capsule ....................................................................... 264
xi

Board 6.1 Manual


Exporting charts templates ..................................................................................................................... 265
Integrating Board Web queries and features to your Web site .................................................................. 267
Launching a Web Query from a hyperlink .............................................................................................. 267
Launching other Board web functions from a hyperlink ........................................................................ 267
Board Web Query Script ............................................................................................................................ 268
Creating a BOARD Web Query using the script language..................................................................... 268
Query script structure ............................................................................................................................. 269
Master and Multi-table queries ............................................................................................................... 269
Procedures ............................................................................................................................................. 271
Customizing Board Web pages with Cascading Style Sheets (CSS) ........................................................ 272
About CSS .............................................................................................................................................. 272
The Board web queries Style Sheet: Board_Style.css........................................................................... 272
The navigator tree Style Sheet: Ftie4style.css ....................................................................................... 274
Adding JavaScript functions to Board Web queries ............................................................................... 274
Board Web Script commands reference .................................................................................................... 275
Database ................................................................................................................................................ 275
Select ...................................................................................................................................................... 275
Show ....................................................................................................................................................... 275
ByRow .................................................................................................................................................... 278
ByCol ...................................................................................................................................................... 278
ByPage ................................................................................................................................................... 278
Drillby ...................................................................................................................................................... 278
Graph ...................................................................................................................................................... 279
Options ................................................................................................................................................... 279
Run ......................................................................................................................................................... 280
Backcolor ................................................................................................................................................ 280
MenuList ................................................................................................................................................. 280
Page header options .............................................................................................................................. 281
StyleSheet .............................................................................................................................................. 281
MetaHead ............................................................................................................................................... 281
MetaBody ............................................................................................................................................... 282
Single Sign-On (SSO) ................................................................................................................................ 282
SSO Basic concepts ............................................................................................................................... 282
How SSO works ..................................................................................................................................... 282
How to setup SSO .................................................................................................................................. 283
Source code samples to create the SSO cookie.................................................................................... 285
Release notes for version 6.1 .................................................................................................................... 289
Upgrading to version 6.1 instructions ..................................................................................................... 289
What's new in version 6.1....................................................................................................................... 289
Bug Fixes and changes of version 6.1 ................................................................................................... 296
LDAP and AD Authentication ................................................................................................................. 297
xii

Table Of Contents
LDAP and AD authentication .............................................................................................................. 297
Microsoft AD Authentication ............................................................................................................... 299
OpenLDAP Authentication .................................................................................................................. 301
LDAP General concepts ..................................................................................................................... 304
Release notes for version 6.0D.................................................................................................................. 306
Release notes for version 6.0 .................................................................................................................... 307
What's new in version 6.0....................................................................................................................... 307
Instructions for upgrading to version 6.0 ................................................................................................ 308
Skins: interface look and feel themes..................................................................................................... 309
The DynaWrite++ environment .............................................................................................................. 310
The DynaSheet++ environment ............................................................................................................. 314
DataView cells as Buttons ...................................................................................................................... 317
Sorting on columns of a DataView or DynaSheet report........................................................................ 318
The BLOB InfoCubes ............................................................................................................................. 318
Data-entry Locking ................................................................................................................................. 321
Drill-to Child Screen................................................................................................................................ 322
The Select Based On Action .................................................................................................................. 325
The automatic roll-up rule ....................................................................................................................... 326
New Select options ................................................................................................................................. 328
Changes to the Button and Picture objects ............................................................................................ 330
On-screen-exit procedure ....................................................................................................................... 330
Version 6.0 other changes and bug-fixes ............................................................................................... 331
Release notes for version 5.6D.................................................................................................................. 333
Release notes for version 5.6B .................................................................................................................. 334
Release notes for version 5.6 .................................................................................................................... 337
What's new in version 5.6....................................................................................................................... 337
Instructions for upgrading to version 5.6 ................................................................................................ 338
BoardClient version 5.6 new features .................................................................................................... 339
DataView Dynamic format .................................................................................................................. 339
DataView Header ................................................................................................................................ 341
Cockpits enhanced ............................................................................................................................. 344
Multi-language Database capabilities ................................................................................................. 346
Capsule Themes ................................................................................................................................. 348
Improved performance for large reports ............................................................................................. 351
BoardClient 5.6 - Other changes ........................................................................................................ 351
Board Web Server version 5.6 new features ......................................................................................... 353
The Web Menu Designer .................................................................................................................... 353
Web Button Themes ........................................................................................................................... 358
Board Web Server Pages ................................................................................................................... 359
Release Notes for version 5.5E ................................................................................................................. 369
Release notes for version 5.5B4 ................................................................................................................ 370
xiii

Board 6.1 Manual


Release notes for version 5.5B .................................................................................................................. 372
Release notes for version 5.5 .................................................................................................................... 376
What's new in version 5.5....................................................................................................................... 376
Upgrading to version 5.5 instructions ..................................................................................................... 378
The New KeyManager program ............................................................................................................. 379
Parent-child Databases .......................................................................................................................... 380
About Parent-Child databases ............................................................................................................ 380
Setting up a Child-DB relationship ...................................................................................................... 383
Go to a Child-DB screen ..................................................................................................................... 383
Drill-down to a child-DB ...................................................................................................................... 384
Named Selection .................................................................................................................................... 384
Dynamic Time Selection ......................................................................................................................... 387
The new ASCII DataReader interface .................................................................................................... 389
The new ODBC or OLEDB DataReader interface ................................................................................. 391
Defining an OLE DB or an ODBC connection ........................................................................................ 397
ODBC DataReader options .................................................................................................................... 399
RDB InfoCubes....................................................................................................................................... 400
About RDB InfoCubes ........................................................................................................................ 400
Creating an RDB InfoCube ................................................................................................................. 401
Linking an existing table of a relational database to an RDB InfoCube ............................................. 403
Creating a new table to store an RDB InfoCube ................................................................................ 405
Additional RDB InfoCube setup options ............................................................................................. 406
Other changes and enhancements included in version 5.5 ................................................................... 408
Bug fixes and optimizations included in version 5.5............................................................................... 415
Release notes for Board version 5.0.C3 .................................................................................................... 416
Release notes for Board version 5.0.C ...................................................................................................... 418

xiv

Chapter 1 Welcome on Board

version 6.1

User manual
Foreword
Board-Management Intelligence has been designed to provide an information management tool to
assist decision-making processes that ensures:
Speed
Ease of use
Rapid applications development
Interactive modelling
BOARD is a unique product, based on an abstraction rooted in a profound knowledge of
organizational and management issues. In addition to simple analysis and data navigation (normally
referred to as Business Intelligence), BOARD models information and processes to perform advanced
simulations and help answer predictive-type questions. This can all be carried out without any
programming and with total adaptation to any company structure.
BOARD heralds a new category of products, designed to place technology at the service of
management needs: Management Intelligence Toolkits. BOARD is extremely versatile, providing the
right tools to improve decision-making at every level and function of a company. In addition, due to
BOARDs exceptional ease of use, costs associated with application development, maintenance, and
user training are extremely low.

Board 6.1 Manual

Here are just some examples of Boards many uses:


Sales analysis
Sales planning
Market analysis integrating internal and external data
Economic and financial budgeting
Sales force support systems
Service level and orders management cycle analysis
Customers classification models
Planning and production (including sales budget, stock, and production capacity)
Models for calculating standard product costs using ABC methodology

Board Capsules and Databases


BOARD Capsules and Databases
Board Management Intelligence Toolkit is a comprehensive solution for advanced Business
Intelligence implementations. The Board Toolkit includes a high performance multidimensional
database (the M-OLAP engine), capable of handling extremely large amounts of data without suffering
from the typical limitations of traditional M-OLAP engines, and a powerful yet simple front end
development environment for building applications that range from simple reporting to complex
planning and simulation.

Board Capsules
A Capsule generally is a collection of screens, each containing single or multiple objects such as
spreadsheets charts, images or dashboards and indicators.
A Capsule is the end-user environment that allows viewing and manipulating data from a Board
database, it provides the typical multidimensional analysis functions such as drill-down and slice and
dice and several more.
Capsules made of several screens generally include buttons allowing navigation from one screen to
another, providing the user with a guided and logical path through the various business analyses,
simulation models or business tasks such as a companys budgeting process.
A Capsule may also be a free and unstructured environment for ad-hoc analysis. Users can create
their own Capsules and manage them in a personal folder. The Capsule Designer environment
provides tools and objects &endash; with native data analysis features - for creating simple reports or
complex business models.
A Capsule does not necessarily only hold data presentation objects like spreadsheets and charts, it
may also include some database administration tasks organized in a Board Procedure. A Procedure is
a sequence of actions such as a DataFlow, which is a calculation between InfoCubes (for example
calculating the Cost of good sold by multiplying the InfoCubes Quantity times the Product
Standard Cost) or a DataReader, which is a process that loads data from a given data source into a
Board Database.
In a typical Board environment all the different types of Capsules can be found. The analysis
Capsules, holding the reports and charts and other analysis objects. The application Capsules, which
are Management Intelligence applications combining reporting with data-entry and simulation screens.
Finally, the administration Capsules, managed by the database administrator for the management of
the database such as scheduled daily updates, reports distribution etc...

Example of how to create a Capsule.


You may freely compose your own Capsule by dragging and dropping objects (such as spreadsheet
reports, charts, dashboard, menu buttons...) from the toolbox onto the Capsule screen as illustrated.
2

Chapter 1 Welcome on Board

It has never been so easy to create reports and sophisticated analysis which are perfectly tailored to
your requirements and of outstanding presentation quality.
Hereafter are a few examples of Capsules which can be created with only a few mouse clicks.
A sales performance monitoring analysis example.

A Dashboard example
3

Board 6.1 Manual

Board Databases
Boards database engine is designed to ensure maximum efficiency in managing very large volumes
of data and to provide top-level performance. The implementation of exclusive multidimensional
management techniques completely avoids the database explosion problem typically associated with
multidimensional databases (also referred to as M-OLAP).
Boards databases are multidimensional and are therefore optimal for online analytical processing
(OLAP) of applications. Conceptually, a multidimensional database uses the idea of a data cube
where the cube dimensions represent the different possible perspectives on data. For example, a
"sales" cube could be viewed by various dimensions such as product (i.e. the sales figure per
product), geography (i.e. sales figure by city or region), time and so on.
The information, such as turnover, balance sheets, general expenses, etc., is stored in
multidimensional objects called InfoCubes that are structured by Entities (such as Month, Customer,
and Product). Some Entities can be linked by relationships to establish hierarchical structures (e.g.
Customer Country State).
A Board database is made up of
Entities: these are information sets, generally text and codes like the set of Customers, Products,
and Cities. Entities (and hierarchies) are the InfoCubes dimensions.
Hierarchies: when two or more entities have an n-to-one relationship, then a hierarchy can be
defined. For example, the entities Customer, City and State can be organized into the hierarchy
Customer City State since there is an n-to-one relationship existing between Customer and
City and between City and State.
InfoCubes: the data (often numerical but not strictly) that can be analyzed and viewed by its
different dimensions.
Entities, Hierarchies and InfoCubes form the multidimensional data model of the company or more
generally the system modelled. We will use term dimension to refer to an independent entity or an
entire hierarchy, used as an axis for an InfoCube. For example, the entity Currency can be a
dimension for InfoCubes such as Orders figure and Invoice figure. The three entities Customer, City
and State, being hierarchically related form a unique dimension referred to as the Customer dimension
&endash; the dimension is named after the entity at the bottom of the hierarchy.

Chapter 1 Welcome on Board

The workspace
The following illustration shows Boards main environment.

Click the connect icon to connect to a Board server and view the list of existing Capsules and
databases.

The Toolbar contains all icons to access and work with datatabases and Capsules. Depending on the
Board license and on the users security privileges, some icons may be disabled. For example, to
access any database design function you must have the appropriate developer license (called FULL
license) and have designer privileges on the database. The design toolbar can be hidden or shown by
pressing the F4 key on the keyboard or by clicking the design icon.

The Navigator shows the list of Capsules and databases. To open a Capsule, click the desired
Capsule name,

Board 6.1 Manual

To open a database, click the database name.

Installation concepts
Installation concepts
This section provides an overview of the installation process, detailed instructions are provided in
subsequent chapters. To evaluate which architecture best suits your needs, we recommend having a
careful read through the chapter entitled ’Architecture, which illustrates in detail the technical
and functional characteristics of the various architectures.
The installation process requires going through the following four main steps:

Chapter 1 Welcome on Board


1.
2.
3.
4.

Choose your Board installation architecture


Install the software
Install your Board license
Set the basic configuration parameters

Choosing the architecture


Board supports different installation architectures.
Stand-Alone, all Board programs (BoardClient and BoardServer) as well as Board databases and
Capsules are installed on one computer. This type of architecture allows a user to work locally on
his computer independently. This architecture is often used on Laptop computers for users that
need to work off-line as well as in the development environment since it allows a Board developer
to work freely without affecting other users. This type of architecture solely allows for a single
user to work on a Capsule or database.

Note! A stand-alone architecture requires a Board license of type Stand-Alone (refer to


the Licenses chapter for details) to be present on the PC.

Client-Master-Server (CMS), this is the typical multi-tier client/server architecture used in multi-user
environments. The Board databases and Capsules reside on a server where the BoardMaster
and BoardServer programs are installed. On users PCs, only the BoardClient program should be
installed. Users connect to the Board server which will carry out all the required processing on the
multidimensional databases. This architecture uses the servers resources only. Users can
connect to the Board sever through any type of TCP/IP network (a LAN, WAN, Intranet or the
Internet).
BoardClient users can access the Capsules environment and provided they have an appropriate
license, they can also access the database design environment.
Note! For a CMS installation a Board license of type CMS is required. The BoardMaster
program detects and verifies the licenses authenticity. For more details on licenses,
refer to the Licenses chapter.

WebServer, this architecture is similar to the CMS since the Board database resides on the server
and the processing also is carried out by the server, however users only need an Internet
browser such as Microsoft Internet Explorer or Netscape Navigator.
Internet browser users do not access Capsules, they navigate through a Board web site where
some Board analyses are found. It is not possible to access any database design functions such
as creating Infocubes, Entities and relationships, via the Internet browser.
Note! For a WebServer installation, a license of type CMS with E-Server users is
required. The BoardMaster program detects and verifies the licenses authenticity. For
more details on licenses, refer to the specific Licenses chapter.

Stand-alone installation overview


All setup programs must be run on the same computer. After completing the following steps you will
be ready to start using Board:
7

Board 6.1 Manual


1.

run BoardClient installation program and follow instructions. This setup program only prompts the
destination directory (the default is c:\Board.Sys ) and installs BoardClient.exe and
KeyManager.exe programs.

2.

run BoardServer installation program, follow instructions and choose the same destination
directory used for the BoardClient program. This setup installs several programs including
BoardMaster.exe, BoardServer.exe and others.

3.

launch the KeyServer program to create and activate your Board license. Refer to the Licenses
chapter for details on how to create and certify your StandAlone license.

4.

run the BoardClient program by clicking the BoardClient icon from Windows Start menu or double
clicking the BoardClient.exe program file.

5.

The first time BoardClient is started, the Local Setup window opens automatically: define your
preferences such as the default user name, connection name, background colors etc.

You are now ready to start using Board. To run the BoardClient program, click the BoardClient icon
from the Windows Start menu or double clicking the BoardClient.exe program file.

CMS installation overview


Use the following as a checklist when doing your CMS installation:
On the server :
1.

run the BoardServer installation program. This will install BoardMaster.exe, BoardServer.exe and
KeyManager.exe programs.

2.

launch the KeyServer program to create and activate your CMS license.

3.

Run the BoardMaster program. Enable the CMS service checkbox located on the first tab, then
go to the Security tab to define user accounts: username, password and privileges.

4.

Start the BoardMaster CMS service by clicking the Start icon.

The server is now fully configured and ready to accept connections from Boardclient users.
On each of the client computers,
1.

run the BoardClient installation program.

2.

run the BoardClient program by clicking the BoardClient icon from Windows Start menu or double
clicking the BoardClient.exe program file.

3.

The first time BoardClient is started, the Local Setup window opens automatically: In the Host
field, type the IP address of the BoardMaster server, then enable the option ”Ask
password at logon (this step is detailed in chapter BoardClient).

The BoardClient is now ready to run and connect to the BoardMaster.

WebServer installation overview


Use the following as a checklist when installing Board WebServer:
On the server :
1.

Run the BoardServer installation program. This


BoardServer.exe and KeyManager.exe programs.

2.

Run the BoardWebKit setup program. This will create Boards web site home directory.

3.

Launch the KeyServer program to create and activate your CMS license for E-Server users.

4.

Run the BoardMaster program. Enable the WEB service checkbox located on the second tab
(named Web), then go to the Security tab to define user accounts: username, password and
privileges.

5.

Start the BoardMaster HTTP service by clicking the Start icon.

will

install

BoardMaster.exe,

The Board server is now fully configured. No configuration is needed on the users PCs.
8

Chapter 2 Board Architecture


The Client-Master-Server Architecture
Client-Master-Server (CMS) is a three-tier architecture:
BoardClient is the front-end user program
BoardServer is the multidimensional database engine that carries out all processing on the Board
databases. It executes all aggregations, calculations, selections, procedures, data acquisition
procedures or any other interaction involving the Board multidimensional database.
BoardMaster is a middle layer between BoardClient and BoardServer. It handles incoming user
requests and dispatches them to the BoardServers. BoardMaster also provides Web access (the
HTTP service) and a security layer such as the users authentication and some other specific
privilege settings on user accounts.
Communications between the three components uses a proprietary protocol named ROAR (Remote
Object Access & Replication) which provides extremely high performance in communications. ROAR
uses the TCP/IP network protocol, it is a data convention format used in communications between any
two Board programs; it is not a network protocol and does not require additional installation.
The ROAR protocol transfers data from the clients memory (BoardClient) to the servers memory
(BoardServer) through a compressed binary stream. This technology is fundamentally more efficient
compared to the verbose syntax of XML or HTML and their need for interpretation. The data traffic
generated in the dialog between BoardClient and BoardMaster is extremely low thanks to the
specialized ROAR protocol, which was designed with this as the primary objective.
The BoardClient computers may therefore be remote to the BoardMaster, connected through a low
bandwidth network such as a WAN or Intra/Internet. Due to the low network traffic, the response times
are low. This allows not only remote access to large volumes of data, not feasible with HTML or other
non-optimized protocols, but also the ability to manage large numbers of simultaneous users since
each user requires little bandwidth.

Component connections and deployment


Data transmissions between the various components take place as illustrated:

We can identify four layers: BoardClient, BoardMaster, BoardServer and the Board databases.
9

Board 6.1 Manual

To evaluate the optimal location for each component, it is important to consider the functional role of
each layer.
Several connection types can be established between each component as summarized in the
following schema:

BoardClient and BoardMaster can be:


Installed ”Locally, meaning that they reside on the same computer (local
connection). In this case the BoardServer must also be installed on the same computer. This
type of installation is called stand-alone installation.
Connected through a local area network (LAN): BoardMaster and BoardClient are located on
different computers in the same LAN

10

Chapter 2 Board Architecture


Connected through WAN or Intra/Internet: BoardMaster and BoardClient are installed on
different computers in remote locations.
BoardMaster and BoardServer can be:
Installed ”Locally, meaning that they reside on the same computer.
Connected through a local area network (LAN), located on different computers in the same
LAN
BoardServer and a Board database can be:
Connected locally, meaning they reside on the same computer
Connected through a local area network (LAN), located on different computers in the same
LAN
BoardClient and BoardServer may also communicate directly (a stand-alone installation); in this case
the BoardMaster is not required.

Application architecture
Board applications (Capsules and databases) may be stored locally on the PC, on a server on the
LAN or hosted on a server accessed through a WAN. It is therefore possible to either centralize the
companys applications in a single site, or to decentralize applications but still provide every user in
the company access to any Capsule and database, regardless of where it is held (be it on a local or
remote server).
The two architectural options:

Several factors should be considered when planning the location of applications, such as: availability
of human resources with the required skills, hardware availability, and other organizational
considerations. It is important to note that this choice should not be driven by technical considerations;
users can access their Board applications regardless of their physical location.

Deployment configurations
11

Board 6.1 Manual

Deployment configurations
There are two main types of installations:
Stand-alone: also referred to as Desktop installation, the processing takes place on the client
PC
Client-Master-Server (CMS): processing takes place on the server, the client only receives
the results
The following sections describe the different architectures available and aim to provide all relevant
information which may be necessary in order to evaluate and plan the architectures which best suit
your project.

Stand-alone installation
In a stand-alone (or desktop) architecture, the users PC calculates the reports and all other database
activities. This occurs regardless of the database location, which might reside on the PCs local hard
disk or on a network servers shared disk. The response time of reports and calculations is determined
by the processing power of the users personal computer. With a stand-alone architecture, the users
hardware is of upmost importance and must be proportional in size to the Board database and the
desired response times.
In a stand-alone architecture:
The BoardClient and BoardServer programs are installed on the same computer and
connected directly (local connection), without going through a BoardMaster
It is not necessary to install BoardMaster
The Board database can reside either on the local hard disk or on a shared network folder, in
the latter case the server will only act as a file server

This architecture does not optimize network traffic but does not require much processing workload
from the server (very little CPU and RAM resources are required for file sharing). This architecture fully
utilizes the processing power of the users PCs.
This is the preferred configuration option when:
12

Chapter 2 Board Architecture


Users have computers with sufficient processing power
The network traffic is not a critical factor, therefore minimizing traffic is not relevant
You do not wish to centralize processing on a single server
You do not have a server with sufficient processing power, capable of serving all
simultaneous users within satisfactory response times
The user also needs to work while disconnected from the LAN, accessing a database on the
local hard disk (e.g. laptop computers)
The user should use a local database, for example while doing development or maintenance
work on Board databases and Capsules

Note! When comparing the stand-alone architecture to the CMS architecture (described
hereafter), consider that performance for the stand-alone solution is not substantially
affected by the number of users, but is dependent on the performance of the users PC.
Generally, PCs are less powerful than servers, the CMS architecture can leverage power
of the server, but the critical point in this architecture is ensuring stable performance as
the number of users grows. When evaluating the necessary hardware for the server, you
should estimate not only the number of users during peak hours but also the users
scalability (i.e. how much the number of users will grow by in the future?).

CMS installation
In the CMS architecture, the computer where BoardServer is installed executes reports and all other
database activities.
In a CMS architecture:
BoardClient and BoardMaster program are installed on different computers.
BoardMaster and BoardServer generally are installed on the same computer but may also
be on different computers within the same LAN.
The Board database should be stored on the hard-disk of the BoardServer computer, or in
a shared directory within the BoardServers LAN.
The BoardClient connects only to the BoardMaster.
On the server computer, several sessions of BoardServer must be executed to grant
parallel processing for simultaneous requests.
The BoardMaster program manages the incoming users requests then dispatches them to
the various BoardServers, providing dynamic load balancing.

13

Board 6.1 Manual

The network traffic between BoardClient and BoardMaster is very low; this allows for an efficient
connection through a WAN or Intra/Internet. It is therefore possible for some users connect to the
BoardMaster from remote sites (e.g. from an affiliate company in another city or country) as illustrated
below.

14

Chapter 2 Board Architecture

Dimensioning criteria
Dimensioning criteria
In a CMS architecture, the centralized processing on the server is the critical factor that determines
performance. The servers hardware should have sufficient power to sustain satisfactory performance
during utilization peaks. It is important to benchmark not only the response times of the most
commonly used reports but also the response times when multiple users are working simultaneously.
The average number of simultaneous users and the maximum number of simultaneous users (referred
to as the utilization peak) also need to be estimated.
In case users need to access the Capsules from remote locations (through a WAN, Intranet, modem)
some techniques to minimize network traffic should be considered in the design of the Capsules and
databases. Tuning guidelines for remote access will be discussed in detail later. however, here is brief
example for illustrative purposes: embedding large pictures and background images in a Capsule may
generate high traffic and consequently affect performance; transfer times improve by reducing
embedded pictures.

Running multiple sessions of BoardServer


Multiple sessions of BoardServer must be running concurrently (a pool of BoardServers) in order to
grant parallel processing of multiple requests. The BoardMaster program starts and manages the
multiple BoardServer sessions. When a pool of BoardServers is running, BoardMaster manages the
incoming traffic and assigns the processing requests to the various sessions. The number of parallel
sessions to start is a parameter that can be set in the BoardMaster configuration. The following
schema represents a server where BoardMaster activates a pool of three BoardServers.

When a Board user sends a request, BoardMaster assigns it to the first available BoardServer. If a
second request arrives from another user while the first one is executing, BoardMaster assigns it to
the next available BoardServer. Should all sessions of BoardServer be busy, the request is held in a
queue and will be executed as soon as a BoardServer completes its current processing. When a
BoardServer completes a request, it returns the result to the BoardMaster, which instantly returns it to
the user.

Note! A BoardServer session cannot be halted while it is executing a request.

15

Board 6.1 Manual


Generally, the optimal number of BoardServer sessions is three or four per CPU. To begin with, run 3
sessions on a single processor server (6 on a bi-processor, on a 4-processor 8 sessions are generally
sufficient). Then change the number to two or four sessions and analyze which setting gives the best
overall behavior under real utilization conditions. The optimal number of sessions is also dependent on
the type of utilization that users will require from the system. To handle a large number of users that
request small reports (i.e. reports that require little processing time), it is better to run a higher number
of BoardServer sessions (5 or 6 per CPU). Alternately, if the number of simultaneous users is not high
but the average report requirements are large, then it is more efficient to activate a smaller number of
BoardServer sessions so that each session can access a larger share of RAM and of CPU.

Note! Only multi-processor computers can grant true parallel processing of requests.
On single-processor computers, the parallelism of BoardServers is fictitious; it is
simulated by the operating system that assigns the unique CPU to the BoardServers on
a time-sharing basis. For this reason, using multi-processor computers brings
substantial benefits to CMS architectures.

Server clustering and dynamic load-balancing


The CMS architecture has a simple yet powerful load-balancing feature that distributes the workload to
different computers. This feature allows you to rapidly scale the processing power of the Board CMS
installation as needed.
For example, consider what happens if the number of BoardClient users doubles due to the
incorporation of additional Board projects. It is likely that the servers power that was originally
dimensioned for a certain group of users is insufficient to serve twice that number without significant
performance loss. Upgrading the servers hardware is an option, but this is not always possible, and
often adding or upgrading the original server is not sufficient. A simple solution is to add a secondary
server, of a similar power to that of the main server, and install a pool of BoardServers that will
contribute to the initial pool.
The multiple computers form a cluster of servers, where one is the primary server (where BoardMaster
is installed) and others are the secondary servers. Only a minor setting on the configuration of the
BoardMaster is necessary to include a secondary server in the cluster.
Schema of a cluster made of four servers:

16

Chapter 2 Board Architecture

The server where BoardMaster is installed is the primary server and remains the only address to
which users connect.
All users are registered only on the primary server that performs the user authentication
process.
The secondary servers are transparent to the users. No re-configuration is needed on the
BoardClient when a server is added to or removed from the cluster. The users cannot recognize
which server the requests are assigned, this is controlled by the BoardMaster on a loadbalancing basis.
The pool of BoardServers is managed with a dynamic algorithm. The assignment of requests to
a BoardServer is re-evaluated dynamically for each request in order to minimize response time.
Two requests from the same user could be dispatched to different servers since BoardServer
processes are state-less.
The secondary servers must be connected to the primary server through a 100 Mbps LAN
connection.
The number of BoardServer sessions to launch on each computer is not fixed; it should be
determined based on the hardware characteristics of the computer (single or multi processor,
size of RAM).

Note! When configuring secondary servers, it is necessary to specify where the Board
databases are stored (usually on the primary server). The secondary servers access the
database through a shared directory on the LAN. To maximize performance, it is possible to
create local copies of the database on the secondary servers. In doing so, all BoardServers
access the database from the local hard disk, resulting in better performance. This can only
be implemented when all users access the Board databases with read-only access (no writeback and no updates to the database are made by any user). Board does not synchronize
the local copies of the databases; this must be done with other tools external to Board. A
program that provides file copying is sufficient. We recommend copying the entire database
folder to all secondary servers after every database update (for example, when new data is
loaded from the datareader).

Board in a demilitarized zone (DMZ)


17

Board 6.1 Manual


When a Board application should be made accessible from the Internet the BoardMaster must be
running on a machine facing the Internet. Most organizations isolate such machines in a special
network called the demilitarized zone (DMZ), which is separate from the normal organizational network
(the LAN).
Two installation choices are possible. You may install BoardMaster, BoardServer and the Board
databases on the machine located in the DMZ or you may install BoardMaster on the DMZ machine
and the BoardServer and database on a machine located in the LAN. Users connect to the
BoardMaster through a TCP port usually using port 80 for Internet browser users and port 7000 for
BoardClient users (port numbers can be reconfigured). The firewall should then accept TCP traffic,
originating from the Internet or from the LAN and going through ports 80 and 7000 and forward it to
the server running the BoardMaster.
The Board database can be located in the DMZ, however the data sources, usually an ERP, a CRM or
other transactional system running on a relational database are usually located in the LAN. To update
the Board database through an ODBC connection to the relational database system, it is necessary to
open a TCP/IP port for the ODBC connection. This firewall rule should allow TCP traffic on the port
used by the ODBC driver. However, this traffic must be flowing from from the machine where
BoardServer is installed to the machine where the relational database management system is running.

18

Chapter 3 Installation and Configuration


Board Client installation and configuration
Hardware requirements
Processor: Pentium III 500MHz or higher
Physical memory : minimum 128 MB RAM
Screen resolution : minimum 1024x768
The following operating systems support BoardClient:
Windows NT 4 with Service Pack 6 (or later editions)
Windows 2000 Professional Edition and Server with Service Pack 3
Windows XP Professional Edition with Service Pack 1
Windows 2003 Server

Notes! BoardClient is not supported on Windows 98, ME and XP Home Edition. Screen
resolution 800x600 does not allow you to correctly use BoardClient.

Run the setup program and follow the on-screen instructions.


After completing the installation process, launch the BoardClient program and open the Setup window.

Note that the first time BoardClient is run, the local Setup window opens automatically.

To open the Setup window, click the icon highlighted in the following illustration,

The setup window is illustrated hereafter,

19

Board 6.1 Manual

Local Board Location

BoardClients local working directory. This directory must be


private for the user (not a shared directory) and must be on a
local hard disk (not a network drive). The local working
directory, named Board.Loc, is created automatically as a
subdirectory of the specified path.
Note! When installing BoardClient on a Citrix or Terminal
Server environment, ensure that this directory is a private
users folder (the users home path or equivalent).

User name

Sets the user name.


Note! The user name must be unique, unexpected errors may
occur if two workstations use the same user name.

Password

Sets the default password for a BoardMaster connection. If the


option ”Ask password at startup is enabled, this is the
password prompted at the BoardClient start up.

Host IP Address

Type the addresses of the BoardMaster servers to connect to.


It is possible to specify:
- An IP address, e.g.: 192.168.1.100
- A UNC name, e.g.: \\Server_Name\
- A host name, e.g.: www.myBoardServer.com
Note! The name Localhost is conventionally used to specify
the local computer. If the BoardMaster is located on the same
computer as the BoardClient, the name Localhost can be used

20

Chapter 3 Installation and Configuration


to specify the local connection.
It is possible to type a friendly name for the server (an alias)
following the servers address, separated by a comma. If an
alias is specified, the user will view the friendly name instead
of the servers address in the BoardClient main window.
Example:
192.168.10.200, Financial Analytical Applications
www.myBoardServer.com, Board public applications
Port

Socket number of the TCP/IP connection. Ask your Board


system administrator for the BoardMaster port number. The
default value is 7000 but it may be re-tuned as desired by the
system administrator.
Note! If there is a firewall between BoardClient and
BoardMaster networks, the TCPIP traffic on this port must be
enabled.

Time out (sec.)

Sets the communications time out value. When the specified


number of seconds has elapsed without receiving a response
from the BoardMaster, the BoardClient program frees the
communication and allows the user to continue working on
other tasks. The processing on the server side is not
interrupted, it continues until to its natural completion.

UserName

Optional field to store the user name for connection to the


BoardMaster address. If this field is not defined, the default
user name is used.

Password

Optional field to store the password for the user name (prior
field).
Note! This password is stored on the BoardClient. If this option
is used, it is strongly recommended that you enable the option
”Ask password at Startup to maintain a secure access
to your Board applications. For the most effective security, it is
recommended that you do not use this option and instead let
the user type the password every time they connect to a
BoardMaster.

Voice Port

Socket number for the voice traffic with the BoardMaster. Ask
your Board system administrator for the BoardMaster voice
port number. Voice transmission is only activated by the
Synchronous Collaboration function (formerly called Peer-toPeer). The default value is 8000 but it may be re-tuned as
desired by the system administrator.
Note! If there is a firewall between BoardClient and
BoardMaster, the TCPIP traffic on this port must be enabled.
21

Board 6.1 Manual

Report Rows Upper Limit Sets the maximum number of rows for a report. The purpose of
this threshold is to avoid executing very large reports (runaway
queries).
Note that this value must not exceed the equivalent setting of
the BoardServer.
Buffer active when row
number >

Sets the report buffer limit. To allow exporting data to MSExcel, set a value greater or equal to 70,000.

Ask password at StartUp When this option is enabled, BoardClient prompts for a
password at start up. The program closes after three failed
attempts.
Ask password at LogOn When this option is enabled, BoardClient prompts for a
username and password when logging on to a BoardMaster. If
a default user name and password are defined, then they are
automatically displayed in the logon window.
Paper Size

Sets the default paper size for printing.

Default BackColor

Changes the Capsules default background color.

Board License Controller Specifies the Board license type. Select the type of license
available from the drop down list. Hardware licenses are
named with the prefix ”HL. For any standalone
software license, select the option ”Software Key. For
contemporary user licenses, choose the option ”Public
Key.
Note! In most cases the system automatically detects
the appropriate setting.
The Software Key option will be selected automatically when
a valid Board StandAlone license file is detected. The
StandAlone license file (a file with extension .KEY) should be
located in the same directory as the BoardClient program;
When a valid license is not detected, then the value will default
to OnLine License. This is the case when a concurrent-users
license is installed on the server, the BoardClient will only
obtain the license grant when connecting to the server.
F7 Export

Allows reports to be exported to Microsoft Excel. If Microsoft


Excel is installed on the computer, type the full path of the
program file. Pressing the F7 key from a Capsule screen
opens Excel and exports data from the Capsule screen into the
spreadsheet.

BoardMaster and BoardServer installation


22

Chapter 3 Installation and Configuration

Hardware requirements
Processor: Pentium 4 or above
Physical memory: minimum 256 MB RAM, recommended 512 to 1GB.
The following operating systems support BoardMaster and BoardServer:
Windows NT 4 with Service Pack 6
Windows 2000 Professional or Server Edition with Service Pack 3 (or later editions).
Windows XP Professional Edition with Service Pack1
Windows 2003 Server.

Note! For ODBC connections, MDAC 2.7 Service Pack 1 (or later editions) is required.

To install BardMaster and BoardServer, run the setup program and follow the on-screen instructions.

Note! A certified Board license file (KEY file), either StandAlone or CMS license, must be
present in the directory where BoardMaster is installed. When a CMS license is detected,
BoardMaster assumes the role of license manager.

BoardMaster configuration
BoardMaster configuration
The BoardMaster program has four configuration tabs.
CMS tab includes the configuration parameters needed to setup the CMS service (the ROAR
protocol), which is the service that allows BoardClients to connect to the BoardMaster.
WEB tab includes the parameters for the HTTP service, which is for access through a web browser.
Security tab, allows defining the user accounts and security privileges.
Monitor tab, shows the status of the CMS and HTTP services and the connected users.

Note! If BoardMaster does not detect a valid license file (KEY file), the Security tab does
not appear and it is not possible to define user profiles. In cases where BoardClient users
have their own StandAlone license, a zero users license should be installed on the
BoardMaster computer.

CMS configuration tab

23

Board 6.1 Manual

Activate

Enable this to option to activate the CMS service, allowing BoardClient users
to connect to the BoardMaster. When the Start button is clicked, a TCP/IP
service (using the ROAR protocol) is started on the port number defined by
the Local Port field.

Board Q Path

Shared temporary working directory for BoardMaster and BoardServer. This


directory name must also be specified on the BoardServer configuration.
When a cluster of BoardServers is installed, this shared directory allows
synchronizing the start up of the BoardServers installed on different
computers (the BoardServers cluster).

Unicode

Enable this option for double-byte languages support such as Korean,


Japanese, Chinese, Cyrillic or other double-byte languages.
System service installation icon. Click this icon to install BoardMaster as a
system service. You have administrator privileges to install the service
successfully. The service will be installed with the following options:
Startup type to Manual and LogOn as to LocalSystem account.
To change these settings use the Windows Services management console.
If the BoardMaster program is launched while the service is running,
only two tabs are shown; the Security tab, allows you to create and
edit user accounts and the Monitor tab which displays BoardMaster
and BoardServers activity. To access and modify the parameters
located on the CMS and Web tabs, stop the Board Master service

24

Chapter 3 Installation and Configuration


then run BoardMaster as an application.

BoardServer.exe Path

Type the full path and name of the BoardServer.exe file. This field
generally defaults to the correct value.

Nr.

Number of BoardServer processes to launch in parallel.


When the CMS service is started (clicking the ”Start button), the
BoardMaster program starts the defined number of BoardServer sessions.
Communication with the BoardServers uses the ports subsequent to that
defined in the CMS tab (see below). For example, if BoardMaster accepts
incoming traffic through port 7000 and 3 BoardServers sessions are launched,
then communication between BoardMaster and BoardServer will use ports
7001 to 7003.

Local port

Port number used to accept connections from BoardClients. This same port
number must be set on the BoardClient configuration (in the Setup window) as
BoardMaster port.

Voice Port

Port number used for voice traffic. This port number must be set on the
BoardClient configuration (in the Setup window) as BoardMaster voice port.

Time out

Maximum waiting time (in seconds) in communications between BoardMaster


and BoardServer.

Network servers

This option allows you to set up a cluster of servers providing dynamic load
balancing.
In the first available row, type the secondary server address (using the IP
address or the UNC name), then the socket number and the number of
BoardServer processes running on that computer.
The Active checkbox must be enabled for the BoardMaster to include the
server in the load balancing server pool. When disabled, the secondary server
is considered off-line.
Note that the BoardServer sessions must be launched separately on the
secondary servers; the BoardMaster does not launch processes on other
computers.

Web Configuration tab

25

Board 6.1 Manual

Activate

Enabling this to option activates the WEB service. The web service is a HTTP
service that allows users to connect through an Internet browser. An appropriate
license for E-Server Users must be present in order to run this service.
BoardMaster can simultaneously run both WEB and CMS services. In this case,
the BoardServer sessions are dedicated to a specific service. For example, it is
possible to configure 5 BoardServer sessions for the CMS service and 3 for the
WEB service.

Base Path

HTTP
service
home
directory.
The
default
value
”C:\BoardPub”.This directory must be on a local hard disk.

is

Board Q Path

This parameter is also present in the CMS tab, refer to prior section for details.

Local Port

Port number of the HTTP server. The default value for HTTP services is 80, it is
recommended you use the default value unless this port is already in use by
another HTTP server running on the same computer.

Timeout

This time out parameter is the maximum time that the BoardMaster waits for a
response from BoardServer. If the BoardServer does not return the result to a
users request within the timeout, then a time out message is sent to the user.

Local Servers Nr

Number of BoardServer processes to launch. When the Web service is started


(clicking the ”Start button), the BoardMaster program automatically
starts the defined number of BoardServer processes.
Opens the Secure Socket Layer (SSL) and Single Sign On (SSO) configuration
windows. SSL provides data encryption. When SSL is enabled, all HTML pages
and other data exchanged by an Internet browser user and the server are
managed through the HTTPS protocol. This is a secure HTPP protocol. Refer to
the SSL chapter for more details.
Board Web Single Sign-On (SSO) is a feature allowing users that have loggedon a web application through their browser, to access their Board Web
application without need to type their username and password a second time.
Refer to the SSO chapter for more details.

Database

26

Type the names of databases that should be made available through Board Web
server.

Chapter 3 Installation and Configuration

Password

If the Board database is password


administrator’s password.

protected,

type

the

database

Path

Type the full path of the folder where the BOARD Database is located. Note that
when the Board database is the standard \Board\Database directory (with
Main as the alias) then this parameter should be omitted (leave the field blank).

Alias

If the Board database is not located in the main database folder (alias is Main)
type the BOARD Database alias. Otherwise, when the database is located in the
standard main directory, leave this field blank as done in the prior field.

Tree Query Menu

When this option is active, the left navigation menu of the Board Quick site is
refreshed every time the WEB service is started.
When the number of existing reports is high, refreshing the left navigator may
require several minutes, therefore, it may be useful to disable this option when
doing development work that requires frequent restarts of the service.

Query Builder Active

Similar to the Tree Query Menu feature, this option refreshes the Query Builder
page of published databases every time the WEB service is started.

Entity Cut Off

Maximum number of items contained in an entity available in the Select function.


Entities with a higher number of occurrences than this threshold allows, are not
included in the Select function. Excluding large entities improves performance of
accessing the Select function.
The Select function (which is also included in the query builder function) is an
HTML page, containing the full list of entities and entity members of a database.
The HTML page size is largely determined by the entities and their content.
Entities in a database can contain thousands or hundreds of thousands of
members, including this type of entity in an HTML page would generate a
considerably large page, which may take too long to load. This parameter allows
you to control and optimize the size of the HTML page corresponding to the
Select and Query builder functions.
It is recommended to keep these pages to a reasonable size, taking the
infrastructure of the installation, the average bandwidth available to users
(broadband Internet access or slower modems are used) and other project
considerations into account.
Typical values for this parameter range between 500 and 3000.
Tuning: to determine the correct value, carry out the following test:
Set a value, for example 1000, then start the BoardMaster Web
service.
From a computer that simulates the worse case scenario in terms of
performance and network connection conditions, logon to the Board
Web application.
Then click the Query builder function and measure the time required to
load the page on the browser.
Consider if the recorded time is acceptable for the users.
If the time is too high, the reduce the Entity Cutt-off value then rerun
the test.
If the time is acceptable but some entities are excluded from the
selection, then increase the value and rerun the test.

Display c+d

When this option is enabled, all BOARD web queries display the code and the
description of any entity member, overriding the setup defined in the database.
27

Board 6.1 Manual

It is recommended that you always enable this option because it grants complete
robustness to all features, even in cases where some entity occurrences have
duplicate names.
HTML Max Kbytes

Maximum size of an HTML page returned to a user. This parameter allows


preventing users from creating unreasonably large reports resulting in large
HTML pages.
When the size limit is exceeded, a warning message indicating the maximum
allowed size and the size of the requested page is returned to the user.
It is recommended to always specify a value for this parameter, generally the
value should not exceed 500 KB .

Response Interval

Sets the rate at which the availability of the requested report is performed.
When a user requests an analysis (i.e. clicks a report name), the server instantly
returns a ”Please wait message page, and forwards the users request
to a BoardServer. After the number of seconds set by the Response interval
parameter, the users browser will automatically reconnect to the BoardMaster
and check whether the requested analysis is ready. If the result is ready then it is
returned to the user otherwise a new ”please wait message is returned
and a new connection will again be made after the interval has elapsed. This
technique allows for the handling of large amounts of simultaneous users by
minimizing the bandwidth and the BoardMasters resources needed by each
individual user.
This parameter should be calibrated depending on the number of simultaneous
users and the servers performance. For small to medium installations with up to
100~200 users set the interval in the range of 1 to 3. For larger installations with
hundreds of users, set the value in the range of 3 to 5.

Max Queue

Maximum number of requests queued on the BoardMaster. This parameter


allows you to manage utilization peaks without compromising the response time
of web queries. When the queue of web queries reaches the defined limit, further
requests are rejected and users receive a warning message specifying that the
server is too busy to accept new requests, retry at a later time.
Setting the value to zero sets the queue length to unlimited, however, it is
recommended to always define a maximum queue length in the range 3-10,
since Internet users will generally prefer receiving an immediate response, even
though it may only be a message warning them that the server is busy, rather
than having to wait a long time because the server is overloaded at that time.

Click Expires

Security

28

Minimal required time between two mouse clicks from the same user. This
feature prevents generating worthless workload on the server caused by a single
user clicking repeatedly without waiting for the response from the first click.

Chapter 3 Installation and Configuration

The Security tab allows is used to define user accounts and security privileges for users accessing the
Web and CMS services.
Access to this area can be password protected. To set a password, click the
the top left and set your password.

icon located at

It is possible to define a set of privileges and settings and save it as a User Group. When creating a
user account, it is possible to define the individual user rights or assign the account to a User Group
from which it will inherit all settings.
An account may belong to a single User Group (one only) or to none.
Related Topics
How to create a user account
How to create a user group

How to create a User Group


To create a user group, click the User Groups tab then click the Set button on an empty line. The
following definition window opens:

29

Board 6.1 Manual

User Group

Define the User Group name.

CMS

Enable the Allow Access checkbox if you want to allow the user to connect to
BoardMaster using a BoardClient (i.e. using the CMS service).
Assign License: Choose this option when the user doesnt have a standalone
license on his computer and a CMS-Contemporary Users license is installed on
the BoardMaster server.
Authorized Visitor: Choose this option if the user has a standalone license
installed on the computer running BoardClient.
License: Select the license type to assign to the user.
Note! When the user has a StandAlone license, this option allows you to demote
the license level. For example, selecting Lite license grants the rights of a Lite
license even if the user has a higher license such as Full standalone.

30

Chapter 3 Installation and Configuration

WEB

Enable the Allow Access checkbox if you want to allow the user to connect
using an Internet browser (i.e. using the WEB service). This checkbox can only
be enabled if an E-Server license is available on the BoardMaster.
Query builder provides access to the report builder page, which allows changing
the layout of a report or creating new ones from scratch.
Allow upload grants rights to save new reports or change existing reports. This
option should only be enabled if Query builder access is enabled.
Personal folder this option creates a personal reports folder that can only be
accessed by the user.
Select icon this option provides access to the Select function.

Capsules Folders

This group of settings allows you to define which Capsules a user may view. With
regards to confidentiality, we can identify three types of Capsules,
public Capsules that can be viewed by all Board users;
group Capsules, restricted to a particular user group such as a company
department or a project team and
private Capsules, these are users personal Capsules.
Note that the Capsule in itself does not contain any data but only analyses
definitions, which, when opened, will be populated with data filtered on the users
database security profile. The database security profile defines what portion of a
cube the user may view &endash; for example with regards to a sales cube, a
user may be allowed to view it entirely or have access partially restricted to a
state or a specific product group. A public Capsule may for example contain
some reports and key performance indicators that every Board user is able to
monitor (such as actual sales versus sales budget) but each user will actually be
looking at its own sales figures and its own performance indicators. A Capsule is
therefore public because it provides all users with the same evaluation criteria
and analysis methodology but not necessarily the same data.
Organizing Capsules into directories and sub-directories, then defining who can
view which folders, is a simple way of managing Capsules access. In all Board
installations there is always a default Capsules folder called Main, generally used
as the public Capsules folder. For each user group and for each individual user,
create a folder, using for example, the group name or the user name to store the
group Capsules and the private users Capsules. For example, if some Capsules
should only be available to the finance department users, create a directory on
the server where these capsules will be stored, then only grant access to this
folder to the finance department users (see below how to grant access to a
Capsules folder).
Allow access to local Capsules folder: grants access to Capsules located in
the Main folder, which, by default, is the directory
c:\Board\Capsules.
Allow Access to All folders: grants access to all existing Capsule folders.
Allow Access to Listed Folders: This option allows you to explicitly define the
names of Capsule folders that you want the user to be granted access to. The
folders list should be typed in the table just below, using the folders alias. For
example, to include the directory:
c:\App\Board\Finance\Capsules\ for which the alias Finance
defined, type Finance.

was

For details on what constitutes a folder alias and how to define it, refer to the
31

Board 6.1 Manual


BoardServer setup section.
Deny Access to Listed Folders: Unlike the previous option, this allows you to
name which Capsules folders you want to deny the user or user group access to.
DB
Web/CMSDefault Board database security profile.
Default PWD D
Whenever the user accesses any database, the system will look for their profile
in the database security and apply the relevant restrictions and privileges. For
more details, refer to section Database design/ Security.
In some cases, the user may have various security profiles depending on the
database. The table below shows how to define the database and corresponding
security profile when they should be different from the default ones.
Example

In the example above, users of this group will be assigned the security profile
named AREA1 for all databases except when accessing the databases named
Sales, Costs and Production for which the security profiles are ALL, PCENTER A
and GROUP34.

How to create a user account


To create a user account, click the User Names tab then click the Set button on an empty line. The
following definition window opens:

32

Chapter 3 Installation and Configuration

User Name

Type the user name. This field is not case sensitive.

User PW

Type the user password. This field is case sensitive.

User Group

If the account privileges should be inherited from a previously defined user group,
select the User Group from the list box.
A user may be included in a single User Group only. When a User Group is
selected, all settings are inherited from the group. Changes made to the User
Group settings are inherited by all users in the group.
Other settings are identical to the User Group definition window.

How to find a user account


33

Board 6.1 Manual


By default, when opening the Security tab, user accounts are sorted by name in ascending order.

To sort accounts by license type, click on the Sort by Access button,


To sort accounts by user name, click on the Sort by Name button
To search a user name, use the Search field

Licenses and accounts summary


The total number of defined users and the number of available licenses installed is displayed in the
summary table as shown in the following example:

In this example the following accounts are defined: 1 user with FULL license rights, 2 users with USER
license rights and 4 users with Web access. The BoardMaster has the following Contemporary User
licenses installed: 1 Full, 5 User, 10 Lite+, 10 Lite, and 25 Web users.
Contemporary Users displays the number of defined users (first column) and the maximum number
of contemporary users (second column) for each license type.
As previously discussed, there are two types of BoardClient users:
Users with a StandAlone license, defined as ”Authorized Visitor
Users that request a license from the BoardMaster at log-on, defined as ”Assign License. In
the latter case, a Contemporary User license must be installed on the server.
Given these two user types, the number in the first column may be higher than the number in the
second column. For example, if there are 20 users with StandAlone licenses and the BoardMaster has
3 Contemporary User licenses installed. You may define 25 accounts, where 20 are
”Authorized visitors and 5 ”Assign license, of these 5 only 3 may work
simultaneously.
Named Users displays the number of accounts with Web access (in the first column) and the
maximum number of Web users available (in the second column).

Monitor
34

Chapter 3 Installation and Configuration


The Monitor tab displays various logs of BoardMaster activities.

Active Users window: displays the user name, IP address and connection status of the users
currently connected to the BoardMaster. When a user logs on, he/she is assigned to a slot. The
subsequent users requests (such as reports, or any other interaction with a database) are forwarded
to a BoardServer and identified by the users slot number.
Active Servers window: displays the BoardServers sessions which are running; the slot number is
shown while the BoardServer is executing a request for the user connected that slot. When
BoardServer is idle, the slot number field is cleared. The database field indicates which database the
BoardServer is working on or has last worked on.
Licenses and accounts window: displays the number of connected users by license type (Lic
column), the maximum number of Concurrent User licenses installed on the BoardMaster (Max
column) and the number of users connected as visitors (Vis column).
HTTP Traffic log window shows the http service log.

Options Tab
The options Tab contains a log windows used for troubleshooting and some self-recovery parameters.
The BoardMaster AutoResume feature allows the system to identify and fix cases of processes
which are not responding correctly to the BoardMaster. This feature allows you to eliminate or reduce
BoardMaster service down-time. The AutoResume feature is a watchdog that monitors the
BoardServers activity. When a BoardServer doesn't respond in a timely fashion, the BoardMaster kills
the dummy process and restores a fresh BoardServer process.
The CMS Log window (click the check box to start logging) traces all TCP socket activity going on
between the BoardClient<>BoardMaster and between BoardMaster<>BoardServer. This function can
be used to troubleshoot systems experiencing connection problems.

35

Board 6.1 Manual

AutoResume parameters
Server Not Responding

Maximum number of minutes that the BoardMaster waits for a


response from the BoardServer after posting a job request. This
threshold applies to all types of requests except DataFlow and
DataReader jobs and for WebQueries requests.

Batch Processing

Maximum number of minutes that the BoardMaster waits for a


response from the BoardServer after posting a DataFlow or
DataReader job request.

Network Stream Control

Maximum number of seconds that the BoardMaster waits for the "endof-stream" data once the transmission of a data stream is pending (or
in progress). This setting allows to resolve cases of lost data packets
due to unreliable data transmissions.

Query Response Time

Maximum number of minutes that the BoardMaster waits for a


response from the BoardServer after submitting a WebQueries
request.

Board Server configuration


To access the BoardServer configuration window, open the BoardServer program then click the
Setup button.

36

Chapter 3 Installation and Configuration

The BoardServer setup settings are


Local Board Location

Boards data directory where Capsules, Databases and other Boards


folders are located. The system automatically creates a subdirectory of the
specified path, named Board, containing data directories such as
Board\Capsules and Board\Database as well as working directories
such as Board\Temp.
The default value is c:\
Note! For optimum performance set the local Board location to a
local hard disk of the computer where the BoardServer is running.

Report Rows Upper Limit

Maximum number of rows allowed in a report. The purpose of this threshold


is to avoid executing very large reports (runaway queries).
Note that this value should be set equal to (or higher than) the highest
value set for the same field when configuring the BoardClient program on
users computers.
When a user requests a report, before executing it, the BoardServer
estimates the number of rows the report has by multiplying the number of
selected occurrences of the entities set by row. If the number of estimated
rows exceeds the limit, then the report is not executed.
If a user requests a report with one entity by row, then the estimated
number of rows is given by the number of selected occurrences of this
entity. For example, for a report which has the Customer entity by row, the
estimate is the number of selected Customers (open the select window to
view the selected occurrences).
If a user requests a report which has two independent entities by row, for
example Month then Customer, and has selected 3 Months and 1000
Customers, the estimated number of rows is 3000.
The maximum number for this parameter is 2 billion.

37

Board 6.1 Manual

Unicode

Activate this option when you want the databases and Capsules to manage
double-byte languages such as Korean, Japanese, Chinese, Russian,
Greek etc.

More Capsule Folders

This feature allows you to define directories which hold different Capsules
to the default Board\Capsules directory and assign an alias (i.e. a short
name) to the directory.
Type the full name of the directory in the More Capsule Folder [Path] field.
Type a short name in the Alias [Short-name] field as illustrated

If the directory defined contains subdirectories holding Capsules, the first


subdirectory level is also visible.
More Database Folders

This feature allows you to define directories which hold different Board
databases to the default Board\Database directory and assign an alias
(i.e. a short name) to the directory.
Type the full name of the directory in the More Database Folder [Path] field.
Type a short name in the Alias [Short-name] field as illustrated

Monitored Q Path

Name of the BoardMaster &endash; BoardServer shared directory. This


parameter is relevant for CMS architectures only, not for standalone
installations.
This directory should match the directory defined in BoardMaster CMS or
Web tab also named Monitored Q path.
Keeping the default setting c:\Board\temp\Q is recommended
This shared directory is used for various purposes. Firstly, it is used to
synchronize the BoardMaster and the BoardServers: when the
BoardMaster CMS or WEB services are started, it launches the
BoardServer sessions and creates a file named Booking.srv in this
directory. On closing the BoardMaster program or stopping the CMS or
WEB services (clicking the Stop button on the BoardMaster), the file is
renamed as Booking.stp. Whilst idle, the BoardServer programs,
constantly monitor the Booking file and when the stp extension is found
the programs exit. Note that while a BoardServer is executing a request (an
analysis or a procedure) it does not monitor the file. This mechanism allows
a BoardServer to smoothly complete its tasks in cases where the
BoardMaster is stopped while the BoardServer is executing a lengthy
process such as a data reading process or a dataflow.
Another purpose of this directory relates to the WEB service: when the
WEB service is running, the BoardMaster writes users requests (queries,
procedures or any other request available through the web client) into this

38

Chapter 3 Installation and Configuration


directory (in the form of a file). The BoardServer sessions continuously
monitor the directory and when a request is found, it is picked up and
executed. The result is then written in the Board\Temp\A directory from
where the BoardMaster will pick it up and return it to the user that
requested it.

Port

This is a read-only field, displaying the socket number used by the


BoardServer for communications with the BoardMaster or the BoardClient.
Note that this field is not relevant for BoardServers serving the
BoardMasters WEB service.

Note! After changing any of the parameters, close and restart the BoardServer: in case
of a Standalone installation, closing your BoardClient the restarting it will automatically
close and restart the Boardserver; in case of CMS installations, stop and restart the
BoardMaster CMS service (click the Stop/Start buttons).

Installation example of a StandAlone architecture


In a standalone (or desktop) installation, BoardClient and BoardServer are installed on the same
computer and connect directly without need for a BoardMaster. The typical steps for a standalone
installation are:
1.

Run the BoardClientSetup.exe program: this will install BoardClient on c:\Board.sys.

2.

Run the BoardServerSetup.exe program: this will install BoardServer in the same directory. If
prompted, shutdown and restart your computer. Note that this setup program will also install
BoardMaster.exe but this program in not needed in a standalone installation, you may delete it
if desired.

3.

Install and certify your Board StandAlone license; the KeyManager program (which is installed
by the BoardServerSetup program) allows you to create and certify your license. Refer to the
Licensing chapter for detailed instructions on the license certification procedure.

4.

Run your BoardClient program: from Windows Start menu, select Programs then Board M.I.
then click the BoardClient icon.

5.

The BoardClient setup window will open automatically (this only happens the first time
BoardClient is launched). You can accept all default values since in a standalone installation the
system is able to detect the correct settings to run. If you wish to accept the default settings click
the OK button to close this window.

You have now completed the installation and configuration process.


To start using Board, click the Connect button as illustrated,

39

Board 6.1 Manual


The connection address drop-down list will default to the connection named &rdquor;Local Server
which links to the BoardServer running locally, on the same computer.

Note! In a standalone installation, when you launch BoardClient, the BoardServer


program is started automatically. This occurs when Boardclient.exe and
BoardServer.exe programs are in the same directory and a certified Board standalone
license is present in the BoardClient directory.

Note! the first time BoardServer runs, it will create a c:\Board directory which
contains the Capsules and Database subfolders where capsules and databases are
stored. If you wish to move this directory, open the BoardServer program, click the
Setup button, then type the new location in the &rdquor;Local Board Location field. To
close this setup window click the OK button.

Installation example of a CMS architecture


The CMS architecture involves at least two computers: a client computer where the BoardClient
program is installed and a server computer where the BoardMaster and BoardServer are installed.
The typical steps of a CMS installation are outlined below.
Installing and configuring the server
Carry out the following steps on the server computer
1. Run the BoardServerSetup.exe installation program: this will install BoardMaster, BoardServer
and the KeyManager programs in the c:\Board.sys directory. If prompted, shutdown and restart
the computer.
2. If the WEB service will be needed (i.e. must have an E-Server license internet browser access) then
run the BoardWebKitSetup.exe installation program. Skip this step if you do not have an EServer license.
3. Install and certify your Board license using the KeyManager program. Refer to the Licensing chapter
for detailed instructions on the license certification procedure. Note that it is necessary to install a
CMS-ContemporaryUsers licence. In case all users have a standalone license (which is installed on
their computers) and you have not purchased a CMS license, then you should create and certify a
CMS license for zero users.
4. Run the BoardMaster program: from the Windows Start menu, select Programs followed by Board
M.I., then click the BoardMaster icon.
5. The minimal parameters that can be configured on the CMS tab are:
Enable the Activate checkbox.
In the Board Q Path field, type c:\Board\Temp\Q or, if you have changed the default setting, the main
Board directory on the computer.
If you have installed the programs on a different directory to c:\Board.Sys, then you must define the
field BoardServer.Exe Path: click the Browse button and select the BoardServer.exe program
file.
Nr. Field: type the number of BoardServer sessions you want to run. The most common setting is 3;
you may then fine tune the number for optimal performance at a later time.
Local Port: the default value is 7000. Only change this socket if it is in use by another program.

40

Chapter 3 Installation and Configuration


6. The minimal parameters that can be configured on the WEB tab (only needed if you will run the WEB
service) are:
Enable the Activate checkbox.
Base Path: if, when your ran the BoardWebKitSetup program you accepted the default value, then
this field correctly shows c:\BoardPub by default, otherwise type the target directory used when
running BoardWebKitSetup program.
In the Board Q Path field, type c:\Board\Temp\Q or, if you changed the default setting, the main
Board directory on the computer.
Local Port, the default value is 80, conventionally used by all HTTP server programs. Only change
this socket only if it is in use by another program.
LocalServers Nr field: type the number of BoardServer sessions you want to run. The most common
setting is 3; you may then fine tune the number for optimal performance at a later time.
7. Create user accounts and define the CMS and WEB services access rights. Refer to the How to
create user accounts section for details.
You have now completed the installation and configuration process for the server.
Note! the first time BoardServer runs, it will create a c:\Board directory which contains the
Capsules and Database subdirectories where capsules and databases are stored. If you wish to move
this directory, open the BoardServer program, click the Setup button, then type the new location in the
&rdquor;Local Board Location field. To close this setup window click the OK button.
To start the CMS and WEB services, click the Start button as illustrated,

The server computer is now fully configured, BoardMaster is running and ready to accept connections
from users.
Installing the client:
Carry out the following steps on the server computer
1. Run the BoardClientSetup.exe program: this will install BoardClient on c:\Board.sys.
2. If you want to install a standalone license on the PC, create it and certify it; otherwise, if the
BoardMaster has a CMS-ContemporaryUser license, go to the following step. The KeyManager
program allows you to create and certify the standalone license. Refer to the Licensing chapter for
detailed instructions on the license certification procedure.
3. Run your BoardClient program: from Windows Start menu, select Programs then Board M.I. then
click the BoardClient icon.
4. The BoardClient setup window will open automatically (this only happens the first time BoardClient is
launched). Set the following parameters:
User Name field: type an existing user account (previously defined when configuring the
BoardMaster).
Host IP Address: type the IP address or host name of the computer where BoardMaster was
installed. Note that the system shows three predefined hosts, named Local Server, Local Master and
Demo Site. Delete these addresses if you want the user to connect to your BoardMaster installation
only. Connecting to Local Server and Local Master is only possible if a StandAlone license is installed.
It is therefore recommended that you delete these definitions if the user does not have a StandAlone
license.

41

Board 6.1 Manual


Ask password at logon: enable this check-box or alternatively type the accounts password in the
Password field.
Board License Controller drop-down list: this field will automatically detect the appropriate setting. If
a valid StandAlone license is detected, it displays &rdquor;Software Key, otherwise it sets itself to
&rdquor;OnlineLicenseController meaning that the license will be granted by the BoardMaster when
the userl connects.
Click OK to close the configuration window.
You have now completed the installation and configuration process for the client PC. Repeat this
process on all Board users computers.
To start using Board, click the Connect button as illustrated,

Note! When configuring BoardClient (step 6), it is possible to store the users password,
however, if you need access to your Board applications to be secure, it is recommended
that you leave the password field blank and enable the &rdquor;Ask Password at Logon
option.

42

Chapter 4 Licenses
Licenses overview
The installation and activation of the Board license is a part of the software installation process. Two
license types exist,
the stand-alone license which must be installed on the client computer where BoardClient is
installed (client side license). This license type enables Board to run on a single computer only,
one license per computer is needed. This license is required for stand-alone architectures for
example for Board developers that need to work locally on their PC.
the CMS license which must be installed on the server where the BoardMaster is installed
(server side license). The CMS license, generally for servers, can enable a combination of
BoardClient users and Internet browser users. The Internet browser users licenses (called EServer users) follow a &rdquor;named user model meaning that you must purchase one license
for each user or person that will be using the software. The BoardClient users licenses can be of
type
CMS Concurrent Users, meaning that the BoardMaster counts the number of
BoardClient users that have logged on and allows only a certain number of
users to work simultaneously. For example a 50 concurrent users license
allows defining more than 50 user accounts and installing the BoardClient
software on more than 50 PCs but only up to 10 users can work
simultaneously. When the limit is reached, if an additional user attempts to logon, he receives the message &rdquor;Too many users and must wait until
one of the active users logs-off.
CMS Named users, meaning that the BoardMaster only allows defining a
number of user accounts equal to the number of purchased licenses.
In general, a combination of licenses is needed: some stand-alone licenses for the Board
administrators and for some key users; some CMS Contemporary Users or Named Users licenses for
the majority of BoardClient users and lastly some E-Server licenses for those accessing Board through
an Internet browser.
Different license levels exist, regardless of the license type (standalone or CMS) each providing a
different level of functionality:
Full : this is the highest level license, it allows you to create and edit Board databases a
capsules without restrictions. It is intended for Board administrators, developers and
power users.
User : this license provides unrestricted access to Capsules both for navigation and for
development purposes but does not allow to access any database design feature. This
license is for power users that do not need to modify the design of Board databases.
Lite Plus : this license provides access to Capsule navigation features but does not
allow you to design or edit a Capsule; access to the design mode is restricted. It is
intended for users that only need to open existing Capsules, including budgeting and
simulation applications, that have been designed for them by a user who has a Full or
User license.
Lite : this license provides the same functions as the Lite Plus license with the
exception that all data-entry features are disabled. It is essentially a &rdquor;read-only
license suitable for users that need to navigate existing Capsules with reports, charts or
any other data-presentation object but who do not need to enter data on the Board
database. This license does not permits you to run budgeting, forecasting or other
simulation Capsule requiring data-entry.

43

Board 6.1 Manual

License activation process overview


License activation process overview
The Board license information is stored in a text file (the KEY file). To install a license you must create
the KEY on the computer where the BoardClient (in case you are installing a standalone license) or
BoardMaster (in case you are installing a CMS license) are installed.
Once the KEY file has been created (it is only a half-key and does not enable Board to run yet) it must
be submitted to Boards web site for certification in order to become a full-key (a certified KEY). When
a half-KEY file is sent to Boards web site, it goes through a verification process that verifies if the
requesting party has purchased the requested licenses. If the verification process is successful, a
certification stamp is added to the original half-KEY which then becomes a certified Board license
KEY. The certified KEY file is then immediately sent to the requesting party via a-mail.
The KeyManager program allows you to create your Board licenses and send the half-KEY for
certification. This program is automatically installed while running the BoardClient or the BoardServer
installation programs.
To install and certify a license, you need to go through the following steps which are explained in detail
later in this chapter:
1.

Create the half-KEY: this is achieved by running the KeyManager program on the computer
where the license is to be activated. The KeyManager prompts you for some information such
as the customer name, customer contract code and license type then creates the half-KEY
file.

2.

Send the half-KEY to the Boards web site: this is achieved by accessing a specific area of
Boards web site or alternatively by the KeyManager program.

3.

Receive the certified KEY: after processing the half-KEY and if the requested licenses are
available, the certified KEY file is immediately returned via e-mail.

4.

Place the certified KEY file in the directory where it was created in step 1.

Note!
Before reading this chapter read Chapter 1 - Welcome on Board, for a general introduction to
Capsules. Refer to Chapter 6 &endash; Database Design to familiarize with multidimensional
database concepts and the specific terminology.

Prerequisites
Before starting the license installation process, go through the following checklist:
You have already decided on your installation architecture (stand-alone, or CMS) and have
installed the appropriate software BoardClient and/or BoardMaster.
You know your companys contract code: when you purchase Board licenses, Orenburg or your
Board dealer provide you with a contract code which is a 7 character code (a combination of
letters and numbers).
You have access to e-mails of an authorized e-mail address: when you ordered your Board
licenses, you have provided Orenburg or your Board dealer with at least one e-mail address.
This e-mail address is registered on Boards web site as being an authorized e-mail for your
contract code. Certified KEY files are sent to authorized e-mail addresses only.
You have your username and password to access Boards web site support area. To obtain a
login to Boards web site, go to the support area on Boards web site at
http://www.board.com/lang_int/support_customers.htm, then click the link &rdquor;Click here to
register.
You have full access to the computer where you want the licence to be installed.
You have access to the Internet.
44

Chapter 4 Licenses

Creating the half-KEY file


1.

Launch the Key Manager program: click the shortcut located in &rdquor;Board M.I. group on
your Windows Start menu. Alternately, double click the program file KeyManager.exe.
located in your Board installation directory, usually c:\Board.sys .

2.

The following window will appear:

3.

Fill-in the fields:


Company Name : type your companys name.
Contract Code : insert your companys contract code (this field is not case sensitive).
Email : type the authorized e-mail address that you want the certified Key file to be
returned to. Note: if you type a non authorized address it will be ignored and the certified
Key file will be returned to your companys authorized e-mail.
User ID : type the name of the KEY file. Since the KEY file is linked to the computer (it will
only enable the computer where it is created), it is recommended you use a name that
identifies the computer.
BOARD License : select the BOARD license type from the pull down menu.
In case you select a CMS license, type the number of users for each license level: Full,
User, Lite+, Lite and E-Server Users for the web browser user.

4.

Click the OK button.


45

Board 6.1 Manual

After clicking OK, a file named [User ID].key (where [User ID] is the name typed in the User ID
field) is created in the same directory where KeyManager.exe is located (usually c:\Board.sys).
This is the half-KEY which needs to be certified
This file needs to be saved to the same directory where BoardClient.exe and BoardMaster.exe are
located (i.e. c:\BoardSys). Note: You can only have 1 .KEY file in this directory.

Sending the half-KEY for certification


Open Boards web site, http://www.board.com then go to the Support/Customers Area and click the
link to &rdquor;Go to the licensing area
Logon to the web site using your user name and password. If you do not have a user name and
password you can fill-in an application form by clicking the link &rdquor;Click here to register.

When access is granted, the following page opens,

46

Chapter 4 Licenses
Click the Browse button and locate your Key file, then click Send.
Wait until the confirmation message indicating the e-mail address where the certified KEY was sent is
displayed.
The following illustration is an example of confirmation message, indicating that the certified Key was
sent to johnsmith@orenburg.com.

Important! After viewing the confirmation message, delete the half-KEY file from your computer.
You can now open your e-mail program to receive the e-mail message with the certified KEY file.
If the certification is not successful, other messages will appear.
The following message indicates that you have sent the wrong file.

Click back, then click on Browser again and make sure you select your half-KEY file which has the
extension KEY.
The following message means that you typed a wrong Contract Code.

47

Board 6.1 Manual

In this case recreate a new half-KEY and verify that your contract code information is correctly typed.

Receive and verify the certified KEY


After successfully sending the half-KEY for certification and opening your e-mail program to receive
the e-mail with the certified KEY. Detach the file and place it in the directory where the Key was
originally created &endash; usually the c:\Board.sys directory. Before placing the certified KEY in
your Board.sys directory, make sure that there are no other KEY files in the directory and that the
half-KEY has been removed.

Some e-mail systems can alter the size of the certified KEY file while scanning incoming
messages. This causes the Key file to become unusable. The Key file will not be
recognized as being a valid license if its size is different from 1,400 bytes. When you
receive your certified KEY file, always verify that the file size is exactly 1400 bytes. Note
that it is not sufficient to view the file size in Kbytes because it is rounded, you must look
at the file properties to know the exact size in bytes.

You should now verify that the certified KEY is correctly installed and recognized by Board.
If the KEY file is a stand-alone license, launch your BoardClient program. When the KEY is installed
correctly, your companys name should appear in the message area as in the following illustration,

When the Key is not recognized to be a valid stand-alone license, then the text OnlineLicense
appears.
If the KEY file is a CMS license, launch the BoardMaster program. If the four configuration tabs are
displayed (CMS, Web, Security and Monitor) then the certified license is correctly installed. If the
BoardMaster program only displays the Security and Monitor tabs, then the license is not recognized
to be a valid CMS license.

Moving a license from one computer to a new one


Because the serial number of the hard drive is encrypted within the KEY file, moving the KEY file from
one computer to another one is not possible.
To move the license, you will need to
48

Chapter 4 Licenses
run the Uninstall procedure (detailed hereafter) on the old computer
then install the license on the new computer.

Uninstalling a license
You should only uninstall a license if
You wish to uninstall the BOARD program and you will not need to use it on this computer in the
future, if you are exchanging it for a new computer, for example.
You need to carry out some sort of procedure that will change the hard-disk serial number. For
example, if you need to format the computers hard-disk or you are changing hard-disk,
redefining the partitions or changing the file system.
To uninstall a license,
1.

launch the KeyManager program.

2.

Select the Uninstall option from the pull-down list located above the OK button.

3.

Click the OK button and confirm. This step will update your KEY file.

4.

Send the KEY file to Boards web site, through the licensing area. Follow the procedure
described in section Sending the half-Key for certification. This step is necessary to inform
Orenburg that you have uninstalled a KEY file and will consequently increase your licenses
credit.

5.

Shortly after this, you will receive an e-mail confirming that your uninstalled license has been
correctly received and processed.

You have now completed the license uninstall procedure. You may install the freed-up licenses on a
new computer following the standard installation procedure.

Upgrading a license
Upgrading a stand-alone license means increasing the license level. A Lite license can be upgraded to
Lite Plus, User or Full license. A lite Plus license can be upgraded to a User or Full license. A User
license can be upgraded to a Full license.
Upgrading a CMS license means increasing the number of users for any of the license levels. For
example, a CMS license for 1 Full, 10 User, 20 Lite can be upgraded to a CMS license for 1 Full, 12
User, 5 Lite plus, 30 Lite and 25 E-Server users.
Changing a stand-alone license into a CMS license is not an upgrade, it is a license type change. You
should uninstall the stand-alone license (follow the Uninstall instructions), then install a CMS license or
vice-versa.
To upgrade a license,
1.

Launch the KeyManager program.

2.

If upgrading a stand-alone license, select the new license from the licenses drop-down list. If
upgrading a CMS license, increase th number of users currently indicated.

3.

Type a new User ID to identify this new half-KEY.

4.

Click the OK button. This step will create a new half- KEY file.

5.

Send the half-KEY file to Boards web site, through the licensing area. Follow the procedure
described in section Sending the half-Key for certification.

6.

Shortly after this, you will receive an e-mail with the new certified KEY.

7.

Delete the old certified KEY then detach the new certified KEY and place it in the Board.Sys
directory.
49

Board 6.1 Manual


Note that only one KEY file (a file which has the extension &rsquor;key) can reside in your
Board.Sys directory.

Reinstalling a license
If you have erroneously run the license Uninstall procedure on a computer and wish to re-install a
license (on the same computer), follow the standard installation instructions however, when creating
the half-KEY, select the Reinstall option from the drop-down list located above the OK button. Note
that you should run the re-install process as it will fail if all its steps of the Uninstall procedure were not
completed.

Important notes
You can recognize a half-Key from a certified KEY by looking at the file size. Using Windows Explorer,
right click on the KEY file and select Properties. The file size is displayed in bytes. The half-KEY files
are 1,201 bytes in size. The certified KEY files are 1,600 bytes in size.
Some e-mail systems can alter the size of the certified KEY file while scanning incoming messages.
This causes the Key file to become unusable. The Key file will not be recognized as being a valid
license if its size is anything different from 1,600 bytes. When you receive your certified KEY file,
always verify that the file size is exactly 1600 bytes. Note that it is not sufficient to view the file size in
Kbytes because this is a rounded figure, you must look at the file properties to know the exact size in
bytes.
If a certified Key file gets corrupted, it is possible to re-run the procedure to create the Key file on the
same computer that it was previously installed on and submit it for certification. The number of license
credits is not decreased. When two identical Key files are submitted for certification, the license credit
is only decreased once.
The procedure type you perform (install, uninstall, reinstall) is recorded in the KEY file on the client
computer and on Boards web site where a licenses management system is running. This system will
debit or credit your account depending on what type of action you select. If you try to perform two
identical installations on the same machine, your account will only be debited once because the
system recognizes that only one of these requests is valid. If you successfully complete an uninstall,
your account will be credited for the license type which you uninstalled. Similarly, if you successfully
complete an upgrade, you will be credited for the license type previously registered, and debited for
the upgraded license.

50

Chapter 5 BoardMaster and BoardServer


The BoardMaster program
The BoardMaster program
The following illustration shows the BoardMaster program interface

The BoardMaster plays a central role in the client/server architecture. It is the access point to which
end-users connect using either BoardClient or an Internet browser. The BoardMaster performs enduser authentication, receives the users requests (for report, charts, analyses) and dispatches them to
the BoardServers that will carry out the processing on the multidimensional databases.
BoardMaster role and features
-

Runs the CMS service (based on the ROAR protocol) which allows BoardClient users to
connect.

Runs the WEB service (based on the standard HTTP or HTTPS protocols), which provides
access through an Internet browser.

Manages user accounts: performs the user authentication and applies security privileges and
restrictions.

Runs and manages BoardServers pool, providing dynamic load balancing.

Manages the incoming requests queue and optimizes the assignment of tasks to BoardServer.
The queue optimization algorithm analyses the incoming request and dispatches the task to a
BoardServer session, minimizing the number of context-switches required.

Manages CMS licenses. For named user licenses, licenses are controlled by allowing you to
define a fixed number of accounts only. For concurrent-users licenses, the BoardMaster counts
the number of simultaneous users and permits or denies access accordingly.

51

Board 6.1 Manual


The first time you run the BoardMaster program, you must configure it. Refer to the Installation and
Configuration chapter for details.

Installing BoardMaster as a Windows system service


To install BoardMaster as a system service, click the service installation icon located on the CMS tab.

Note that you must have administrators privileges to successfully install a Windows system service.
The BoardMaster service is installed with the following options:
Startup type = Manual
LogOn as = LocalSystem
To change settings use Windows System Management Console.
If the BoardMaster program is launched while the BoardMaster service is running, only two tabs are
shown; the Security tab, allowing to create and edit user accounts and the Monitor tab which displays
BoardMaster and BoardServers activity. To access and modify the parameters located on the CMS
and Web tabs, stop the Board Master service then run BoardMaster.

Starting and stopping BoardMaster interactively


When BoardMaster is running as an application (i.e. not as a Windows system service), click the
Start button to start the CMS and/or the Web services.

When BoardMaster is installed as a Windows system service, open Windows Computer Management
Console, select the BoardMaster service then click the &rdquor;start service icon

52

Chapter 5 BoardMaster and BoardServer

Starting and stopping BoardMaster from the command line


Starting and stopping BoardMaster service from a command line can be useful for scheduled
maintenance tasks. For example, before running a backup process for the Board databases and
capsules, it is strongly recommended that you stop the BoardMaster service. This will cause all
BoardServers to shutdown and release all Board database files. When the backup process is
terminated, the BoardMaster service can be restarted and users can start working.
Note that stopping the BoardMaster service will kick-off all users that might be logged on at that
moment, however, running tasks are brought to completion without being interrupted.
For example, stopping the BoardMaster service while a BoardServer is executing running a data-load
procedure, will cause the BoardServer to shutdown smoothly only after the process is completed (all
data is fully loaded). This allows critical tasks to be executed entirely, preventing, for example, an
abrupt interruption of a data-loading procedure that would corrupt the database.
When BoardMaster is running as an application (i.e. not as a Windows system service), use the
following command line to start BoardMaster
c:\Board.sys\BoardMaster.exe start
note: replace c:\Board.sys\ as appropriate, with your installation directory.
It is not possible to stop BoardMaster from a command line when BoardMaster is running as an
application. If you need to stop your BoardMaster from a command line (for example as part of a
scheduled batch program), install BoardMaster as a Windows system service.
When BoardMaster is installed as a Windows system service, use Windowss NET command as
follows:
To start BoardMaster service:
NET START BoardMaster
To stop BoardMaster service
NET STOP BoardMaster

Board Activities log files


Database log file
Each Board database has a log directory where monthly log files are stored. The Log directory is a
subdirectory of the database directory as shown in the following example,

53

Board 6.1 Manual

The database log file contains information on database design and database update actions such as:
definition of new entites, input of new entity occurrances definition of new InfoCubes, execution of the
database, dBVerify function, execution of datreader and datatflow procedures.
The database log file can be opened with a text editor or using BoardClient, clicking the Log File icon.

Note that it is possible to edit the log file (adding comments and notes); changes can be saved when
closing the BoardClient log viewer window.

BoardServer log file


BoardServers write activities on a monthly log file located in the directory \Board\Dataset\WebLog .
The name of the file is Web_YYYYMM.log where YYYYMM represents year and month. Note that the
prefix &rdquor;Web is used for historical reasons only, it does not refer to any Web activity or feature.
A record in the log file is generated whenever BoardServer accesses an InfoCube to populate a
Layout. For example, the execution of a report with a Layout of two InfoCubes and a calculated field,
generates two records in the log file. When a single Layout refers to more than one InfoCube, the
elapsed time parameter is only recorded on the first record but refers to the total CPU time
required to execute the Layout.
The log file is a fixed length field text file with the following structure
Position and width Field name
1 &endash; 10

Auto num.

Description
Incremental counter of BoardServers action number.
Note! It is not a unique record identifier.

54

Chapter 5 BoardMaster and BoardServer

11 &endash; 25

profile

It is the users security profile.

36 &endash; 1

ro/rw access

Indicates whether the infoCube is accessed in read-only or


read-wirte mode. The value N when the InfoCube is
accessed for reading only, E when for data entry mode.

37 &endash; 5

Ununsed

Unused field, filler string N__N1.

42 &endash; 25

BdB name

BOARD Database name (without extension).

67 &endash; 100

BdB path

Full path of the BOARD Database.

167 &endash; 25

InfoCube

Name of the InfoCube accessed.

192 &endash; 5

Version

InfoCube version.

197 &endash; 8

Date

Date, in the format yyyymmdd.

205 &endash; 6

Time

Time in the format hhmmss.

211 &endash; 6

Unused

Unused field, filler character &rdquor;_.

217 &endash; 1

Data access

P indicates data view is at physical level, L indicates data


view is logical.

218 &endash; 1

Layout id

Value is 1 on the first record of a Layout object, other


records relating to InfoCubes beloging to the same Layout
are marked with 0.

219 &endash; 3

Unused

Unused field, filler character &rdquor;_.

221 &endash;10

elapsed time

Time (in seconds) required to execute the Layout.


Note! If the Layout contains more than one InfoCube, this
parameter is present only on the first record for that Layout
and indicated the execution time required for extracting all
InfoCubes (i.e. only on records where the Layout id is 1).

Web users activity log


BoardMaster writes a log file of activities carried out by users connecting through an Internet Browser.
This log file contains information such as user name, date and time each report requested, allowing
you to understand what the most commonly used reports are and to answer questions regarding how
55

Board 6.1 Manual


users utilize Boards web application. Examples For example; What are the peak days of the month?
What are the peak hours during the day? etc&ldots;This log file is organized in such a way as to be
easily read into the Board database which carries out this type of analysis. A sample Database and
Capsule for WebLog analyses can be freely downloaded from Boards website .
The log files are created in the directory
\BoardPub\WebLog\Client
The name of the file is C_YYYYMM.txt where YYYYMM is the year and month, therfore a new file is
created each month.
The log file is a fixed length field text file with the following structure:
Position and width Description
1 &endash; 10

Record number

12 &endash; 8

Date, in the format yyyymmdd

21 &endash; 8

Time in the format hh.mm.ss

30 &endash; 30

User name.

60 &endash; 20

The clients IP address.

80 &endash; 40

Folder containing the requested Board Web query

120 &endash; 30

Name of the requested Board Web query.

150 &endash; 20

Board Database used by the Web query.

170 &endash; 1

Fixed character &rdquor;1 . Can be used as a record


counter when loaded into an InfoCube.

171 &endash; 1

Fixed character &rdquor;0.

172 &endash; 2

This field allows you to monitor how many times the Select
function is used. The value is set to &rdquor;1 when the
Select function is used, otherwise it is set to &rdquor;0
.

56

173 &endash; 1

This field allows you to monitor how many times the Drilldown function is used. The value is set to &rdquor;1 when
the Drill-down function is used, otherwise it is set
to&rdquor;0.

174 &endash;1

This field allows you to monitor how many times the Master
function is used. The value is set to &rdquor;1 when the
user clicks on a master report link, otherwise it is set
to&rdquor;0.

Chapter 5 BoardMaster and BoardServer

175 &endash; 1

This field allows you to monitor how many times the paging
function is used. The value is set to &rdquor;1 when a
report is regenerated after the user changes a page-by
selection, otherwise it is set to&rdquor;0.

176 &endash; 1

This field allows you to monitor how many times the query
builder is used. The value is set to &rdquor;1 when the user
accesses the query builder (Layout) page. otherwise it is set
to&rdquor;0.

181 &endash; 9

Elapsed time, in seconds, to execute the users request. The


recorded time includes the time taken to execute the
multidimensional query (BoardServer CPU time) and the
time taken to translate the result to an HTML page.

191 &endash; 9

Size, in Kbytes, of the HTML page sent to the user.

201 &endash; 50

Folder and file name of the requested web query without the
TXT extension.

HTTP service log file


BoardMaster writes HTTP traffic activity on a daily log file located in the directory
\BoardPub\WebLog\Server
The name of the file is WebLogDD.txt where DD is the current day of the month, therfore a one
month rolling log is kept.
The log file is a fixed length field text file with the following structure:
Position - width
1 &endash; 10

Date, in the format dd.mm.yyyy

12 &endash; 8

Time, in the format hh.mm.ss

Tab separator

Activity description on the HTTP port (opening/closing


sessions, client IP, requested URL etc.)

57

Chapter 6 Database Design and management


Before you start
The approach
Before reading this chapter, read Chapter 1 - Welcome on Board, and Chapter 2 - Architecture that
introduce fundamental concepts on Board databases.
Implementing the multidimensional database is the final phase of a broader project implementation
process that starts with gathering and analyzing end-user requirements and results in defining the
multidimensional model specifications. Boards characteristics deliver a strong effectiveness while
implementing your Management Intelligence project. Thanks to the flexibility, adaptability and
scalability of the multidimensional database you can adopt a highly iteractive development approach.
Lets consider a traditional waterfall model, the life cycle phases are:

Requirements analysis
design
back (and restart from top)

implementation

integration and testing

delivery

feed-

Board considerably shortens all phases, from &rdquor;implementation to &rdquor;feed-back.


The main phases of a database implementation process are
Generate the database and define the time range
Create the entities
Create the hierarchies by defining relationships between entities
Create the InfoCubes
Load data into entities, relationships and InfoCubes from your source systems
Deliver
A typical characteristic of analytical applications is that requirements continuously change over time
and as a consequence it is likely that you will frequently modify your multidimensional database
model, adding new InfoCubes or entities, changing hierarchy structures, adding new data sources and
so on. Although some design changes can be implemented online, on the database currently available
to end-users, it is strongly recommended that you work on an off-line copy of the database (by off-line
we mean a database that cannot be accessed by end-users) when implementing fundamental
changes such as adding new entities, InfoCubes or changing a hierarchy structure.
For safety and robustness reasons, two separate environments should be created, one for production
and one for development. The production environment usually is a server where the BoardMaster to
which end-users connect is installed and where the public Board databases and Capsules are located.
The development environment can be the administrators PC having a Board Full license and a standalone installation (both BoardClient and BoardServer installed on the same computer).
Creating two separate environments protects both parties (the end-users and the developer) from
interfering with one anothers work; end-users will not interfere with your work as you develop new
multidimensional objects and similarly end-users will not be affected by development tasks that could
lock a database or absorb a lot of the servers resources. For example a database is locked while a
hierarchy is loaded through a Datareader, during this time users are denied access to the database.

Understanding the database caching


When a user opens a database, a compressed subset of the database structure is cached on the
BoardClient local hard disk. This caching mechanism considerably reduces the frequency and size of
data transfers between the BoardClient and the BoardMaster. A synchronization method keeps the
local cache up to date with the database on the server. Whenever the database is updated, the local
cache is automatically refreshed to reflect changes.

59

Board 6.1 Manual


The purpose of the database local cache is to reduce the need for server connections and reduce data
traffic between BoardClient and BoardMaster. The database cache size obviously affects transfer
time. The cache size can be adjusted by setting some parameters that regulate which database
objects are replicated in the cache and which ones arent.
The two parameters for adjusting the cache size are Entity cut-off and User View. These
parameters (defined in the Entity window) allow for the fine tuning of each database based on the way
users will be accessing that database. A database that is primarily accessed by remote users through
a low bandwidth connection should have a small cache. If users are primarily in a LAN or connect
through broadband connections, then cache size is not such a critical factor.
The cache contains the data dictionary (essentially made of the entity names and InfoCube names),
and the entity members. Since entities can have several thousand members, this is the factor that
primarily determines the cache size. Including or excluding a large entity (with several thousand
members) from the cache can considerably affect its size.
Entities whose number of members is smaller than the Entity cut-off value are included in the cache.
If an entitys number of members exceeds the entity cut-off value, then the entity is excluded from
the cache. The Entity cut-off value is a property of the database.
The User View parameter allows for the exclusion of an entity from the cache regardless of how
many members it contains. This parameter is a property of the entity.
The database cache is a file with extension bmd, stored in the BoardClient working directory (usually
c:\Board.Loc). You can try different values for the Entity cut-off parameter and see how the file
size is affected.
Entities that are excluded from the cache can still be viewed in reports (by row, column or drill-down)
but cannot be set in the DynaBar. Entities for which the User View property is disabled cannot be
accessed from the Select window, therefore end-users cannot apply selections.
Lets consider a database which has a Customer entity with 10.000 members. If the Entity cut-off is
greater than 10.000, then the entire list of Customers is included in the cache (both code and
description fields). In this case, it is likely that the cache transfer will require significant time and the
benefits of having this entity in the cache could be comparatively modest. Setting the threshold to a
smaller value such as 5,000 will exclude the Customer entity from the cache, reducing its size and
lowering the transfer time.
When deciding on the Entity cut-off value, you should consider how users connect to the
BoardMaster (LAN or WAN), the available bandwidth between the BoardClients and BoardMaster, and
the need for features like Select and DynaBar. To obtain a reasonably small cache suitable for WAN
or Internet access, it is often sufficient to set the threshold to a value that only excludes the largest
entity of a hierarchy.

Accessing database design functions

60

Chapter 6 Database Design and management

All database design functions are accessed through the


Database toolbar located in the main top toolbar visible only
whilst in design mode.
Note that database functions can only by accessed if you have
a Board Full license, otherwise the database icons are disabled.
The database toolbar can also be accessed by right-clicking on
a database name.

Some database design functions can be used through the DB Designer environment, which provides
a graphical environment for creating entities, hierarchies and InfoCubes. To access this environment
click the DB Designer icon.

Note, before trying to access a database design function, make sure you first open the desired
database by clicking on the database name as shown,

Database design functions summary


Entities

Create, rename and remove Entities.


Add, edit or remove entity members.
View entitys saturation and size of sparse structures.

Relationships

Create and manage hierarchies.


Assign relationships, scan relationships, find and fix orphans.

InfoCubes

Create, rename and remove InfoCubes and InfoCube versions.


61

Board 6.1 Manual

Verify versions alignment and run the versions alignment procedure.


Time Range

Define and manage time range and time entities.


Define and manage the custom time entities.

Rules

Define calculation rules on entity members, usually for profit and loss or
balance sheet entities where an entity member is calculated applying a
formula that refers to other members of the same entity.

Data Reader

Create data reading protocols to load data from external systems


(transactional system, ERP, CRM or other) into entities, hierarchies and
InfoCubes.

Batch Reader

Define and run a sequence of Data Reader protocols, usually for


scheduled batch updates.

Security

Create security profiles that define access privileges (read-only or


read/write) and access scope (grant access to an InfoCube or to a
subset of the InfoCube).

Db Verify

Runs a database integrity check and optimizes the database.

Log File

Displays the database log file.

Creating a new Database


1- Click the New Database icon as illustrated

2- Type the new database name then click OK.


3- A new database is created and the time range definition window opens automatically.
When creating a database, a directory with the name of the database and extension Bmi is created
into the main database folder which is usually \Board\Database. For example, the database
Gamma, is stored to the directory c:\Board\Database\Gamma.bmi.

Making a backup copy of a database


All database data is stored into a single directory, the database directory, which has the name of the
database and the extension Bmi. Databases are usually located under the Main database folder
62

Chapter 6 Database Design and management


which is usually \Board\Database. For example, the Gamma database, is stored to
c:\Board\Database\Gamma.bmi.
To make a backup copy of a database, or to duplicate a one, copy the database directory and all its
contents.

Warning! Before copying or making a backup of a database directory, make sure that
all BoardServers are closed as these processes could keep some database files open and
interfere with the copy or backup process.

Warning! When restoring a backup copy of a database, firstly delete the existing
database directory (and all its contents), then restore the backup copy. Failing to do so
may create an inconsistent set of files; only files with the same name will be overwritten
but those files which did not exist when the database was backed-up will not be
removed.

Changing the name of a database


All database data is stored into a single directory, the database directory, which has the name of the
database and extension Bmi. Databases (usually) are located under the Main database folder which
(usually) is \Board\Database. For example, the Gamma database, is stored to
c:\Board\Database\Gamma.bmi.
To change the name of a database, rename the database directory. For example, to rename the
database Gamma into Acme , simply rename the directory c:\Board\Database\Gamma.bmi into
c:\Board\Database\Acme.bmi .

Warning! By changing the name of the database, any existing Capsule linked to that
database loses its links and will no longer function, however you may redefine the link to
the renamed database.

Time range
Time range
To access the time range function, select the Time Range icon

This function allows you to define and manage the database time entities. When a new database is
created, the Time range definition opens automatically.
The time range definition window is illustrated hereafter

63

Board 6.1 Manual

Defining the years range


Set the time range of your Board database using fields From Year .. to Year.
Note that both fields can be increased when desired, setting a range equal to the historical data set
that needs to be loaded up to the current year plus one or two years as required for planning purposes
is thus recommended.
For example, if the current year is 2004, you need to load three years of historical data and an extra
year ahead for budgeting. You should then define the range as 2001...2005. The year after, you may
shift the range to 2001...2006 to include budgrting for the year ahead or you could shift to 2002...2006,
removing one year of historical data which is no longer relevant.
To dump one or more initial years, increase the lower bound value; the From Year &ldots; field).
To widen the time range, increase the upper year bound value; the to Year &ldots; field.
To redefine the time range, click the Clear button.
Once the database has been created, the initial year can only be decreased by clearing the time
range. To clear the time range, click the Clear button as illustrated.

64

Chapter 6 Database Design and management

Note that clearing the time range automatically clears the contents of all InfoCubes structured by any
time entity.

Defining the Fiscal Year


Click the Fiscal Year check box then select the starting month of your fiscal year from the months list.
In the description field you can define a format for the entity description, using some text and the
variables yy and YY which represent respectively the starting and final calendar years of the fiscal
year.

The description cannot exceed 15 characters in length.


Format examples using a calendar range from 2003 to 2005
Format definition

Resulting entity occurrences

yy-YY

&rdquor;02-03 , &rdquor;03-04 , &rdquor;04-05 , &rdquor;05-06

yyyy to YYYYY

&rdquor;2002 to 2003 , &rdquor;2003 to 2004 , &rdquor;2004 to


2005 , &rdquor;2005 to 2006

F.Y. yy-YY

&rdquor;F.Y. 02-03 , &rdquor;F.Y. 03-04 , &rdquor;F.Y. 04-05 ,


&rdquor;F.Y. 05-06

Warnings!
- This option can only be enabled on database created using version 5 (or later), it
cannot be enabled for databases created using version 4.x.
- When fiscal year is enabled, only three custom time entities can be used instead of
four.

When Fiscal Year is defined, users can apply the Yearly Cumulated Value function either based
on the Fiscal Year or on the standard calendar year as desired (a selection check-box automatically
appears next to the Yearly Cumulated Value function).

Using the Bimonth


Click the Bimonth check-box then select one of the two possible conventions; the first bimonth of a
year can conventionally start in January or December.
Note that changing the start convention causes the loss of data loaded in InfoCubes dimensioned by
Bimonth.

Using Quarters
Click the Quarter check-box.
If Fiscal Year is enabled, you may choose to refer to Fiscal Yearquarters, rather than stick to the
calendar year, by clicking the related check-box.
65

Board 6.1 Manual


You can customize the Quarter entity description (in a similar manner as done for the Fiscal Year
description field) using the variables nn representing the quarter number and, in case fiscal Year is
enabled, yy and YY representing the initial and final calendar year.
Format definition examples
Definition

Fiscal year

Resulting entity occurrences

Qnn of YYYY

No

&rdquor;Q1 of 2004
&ldots;etc&ldots;

Q.nn yy-YY

Yes

&rdquor;Q.4
03-04
&ldots;etc&ldots;

&rdquor;Q2

of

&rdquor;Q.1

2004
04-05

The description cannot exceed 15 characters in length.

Using Weeks
Click the Weeks check-box;
select the first day of the week;
then select one of the four conventions that defines the first week of the year:
Jan 1st

The first week of the year is the week in which January 1


occurs.

First four days

The first week of the year is the first week that has at least
four days in the new year.
Note! Selecting this option, week starting on Monday
corresponds to the ISO 8601 standard, widely adopted in
Europe (see below details on the ISO standard).

First full week

The first week of the year is the first full week of the year.

B.Prev.version

Convention adopted in prior Board versions (version 4.x and


older). Select this option if you need compatibility with Board
databases built using version 4.x (or older).

Selecting one of the first three options, the week description can be customized using the variables nn
representing the week number and YY representing year.
Format definition examples
Format definition

Resulting entity occurrences

Week nn/YYYY

&rdquor;Week 01/2004 , &rdquor;Week 02/2004 &ldots;etc&ldots;

W.nn of YY

&rdquor;W.01 of 04 , &rdquor;W.02 of 04 &ldots;etc&ldots;

The description cannot exceed 15 characters in length.


When Boards prior week convention is selected, the options to define the description are:
Desc = Week Nr.

Week number

Desc = Date

Date of the last week day

Details on the ISO 8601 standard


ISO 8601 "Data elements and interchange formats &endash; Information interchange
Representation of dates and times" - ISO 8601 : 1988 (E) paragraph 3.17:

"week, calendar: A seven day period within a calendar year, starting on a Monday and identified by its
ordinal number within the year; the first calendar week of the year is the one that includes the first
Thursday of that year. In the Gregorian calendar, this is equivalent to the week which includes 4
January."
This can be implemented by applying these rules for Calendar weeks:
66

Chapter 6 Database Design and management


A year is divided into either 52 or 53 calendar weeks.
A calendar week has 7 days. Monday is day 1, Sunday is day 7.
The first calendar week of a year is the one containing at least 4 days.
If a year is not concluded on a Sunday, either its 1-3 last days belong to next year's first
calendar week or the first 1-3 days of next year belong to the present year's last calendar week.
Only a year starting or concluding on a Thursday has 53 calendar weeks.

Using Day
To enable the Day entity, click the Day check-box found on the Time Range window.

Setting the time entities language


Select the desired language from the Language drop-down list.
Note that it is possible to edit descriptions for any entity, including Year and Month, from the Custom
Time Entity definition window. This allows translating Year and Month description to languages not
included in the standard language list, including double-byte languages such as Korean, Japanese,
Chinese etc&ldots;

Defining custom time entities


With custom time entities you can define ad-hoc time entities. For example you can enrich the
standard calendar with concepts of Season and Promotion.
You can define up to four custom time entities or three if Fiscal Year is enabled.
To access the time entity definition window, click the Entity definition icon,

To create a custom time entity, double click on the Entity field and type the entity name, then define
other parameters,
Code width

Length of the entity code.

Desc width

Length of the entity description.

Max Item nr.

Maximum number of members for the entity.


Note! the actual number of entity members cant exceed the Max
Item nr.

Sort by

Default sort option. Click on the cell to set one of the three available
options:
[none] , displays occurrences in the order in which they are
created,
code : sorts the entity members according to the code field.
67

Board 6.1 Manual

desc : sorts the entity members according to the description field.


Sorting is always in ascending order; both code and description are
text fields and are therefore sorted according to the characters
string.
Display

Default entity field visualized in reports. Click on the cell to set one
of three available options:
desc : displays the entity description field.
code : displays the entity code field.
c+d : displays both code and description fields.

Defining time entities relationships


Relationships in a Board database are always are strictly hierarchical: a Board relationship defines an
n-to-1 relationship between two entities that we therefore refer to as the parent entity and the child
entity. For example, the Year and Month clearly are parent and child entities.
This function allows defining relationships between custom time entities and Boards standard time
entities. For example, add to your database the concept of season where a season is a set of months,
after adding the custom time entity Season you must create a relationship with the standard Month
entity and define which months belong to which season.
To access the time entity relationships definition window, click the relationships icon as illustrated,

The relationship window is illustrated hereafter.

68

Chapter 6 Database Design and management

To create a relationship, click on the child entity (the row header column, with gray background)
then select all parent entities.
For example, to define Season as being a parent of the month entity, click on the Month row header
then select Season as illustrated.

Note that all direct and indirect relationships must be defined. A direct relationship is a one-level
child parent relationship. For example Day Month is a direct relationship. An indirect relationship is
a child grand-parent relationship, for example day year..
Lets consider the previous example, you just added Season as a parent of the Month entity. If the Day
entity is enabled for this database then Month is a parent of the Day therefore you must define also
the indirect relationship Day Season.

Adding and deleting members of a custom time entity


69

Board 6.1 Manual


From the Custom time entity definition window, click the View button as illustrated,

The following window allows you to insert new occurrences and delete existing ones.

The white area allows you to type one or more new members; the new members are added only after
you press the OK button at the top.
The yellow area shows the list of current members; click the Delete button to remove a member.
Note that you can modify both code and description for an existing member.

Assigning relationships
Each member of the child entity must have a parent from the parent entity. For example, considering
the Month Year relationship, each month (Jan.04, Feb.04, etc) is related to a Year (2004, 2005 etc).
When there is a missing child parent relationship, the item in the child entity is called an orphan.
Relationships between the standard time entities are managed by Board, which grants integrity and
absence of orphans. When custom time entities are used, you must make sure that there are no
orphans for all existing child parent relationship.
Relationships between members of a child and parent entity can be assigned either manually, one by
one selecting for each child member its parent, or through a DataReader that reads a file containing
the child code parent code information. Refer to the DataReader section for more details on loading
relationships from an external file.
To assign a relationship manually, go to the relationships window
70

Chapter 6 Database Design and management

On the child entity row, click the name of the desired parent entity. For example, to assign
Month Season relationship, click Season on the Month row.

Clicking the entity opens a window listing all child entity members with the related parent in case a
relationship already exists.
Select the child member you wish to define a parent for. In the illustrated example, we click on May.04
to assign it to a season.

The members list of the parent entity is displayed. Choose the desired item.

Note! After manually assigning relationships, click the Scan button to verify that all
members of a child entity are assigned to a parent. The scan function highlights in red
entities that have undefined relationships (orphan items).

Viewing a relationship in analytical mode


71

Board 6.1 Manual


The Analytical access mode allows you to view a child parent relationship from bottom-up (child-toparent). It displays the full members list from the child entity and the parent item next to it.
Open the Relationships window, select Analytical from the Access mode drop-down list,

To browse a relationship, click the desired parent entity name: a window showing the child parent
items opens.
The following illustration shows the Quarter Fiscal Year relationship in analytical mode.

Clicking on an item allows you to change the relationship.

Viewing a relationship in summarized mode


The Summarized access mode allows you to view a parent child relationship from top-down. It
displays the parent items list and the number of related items from the child entity.
Open the Relationships window, select Summarized from the Access mode drop-down list,

72

Chapter 6 Database Design and management

To view the relationship, click the desired parent entity name: the parent items and the number of
related items from the child entity are displayed.
The following illustration shows the Quarter Fiscal Year relationship in summarized mode.

Clicking on a parent item allows adding or removing children items.

Identifying missing relationships (orphan items)


An orphan is a child entity item that is not related to any parent entity item. The presence of orphans
can compromise the accuracy of reports and should therefore be identified and removed by assigning
them to a parent.
Go to the Relationships window then click the Scan button to launch a function that analyses all
child parent relationships and highlights in red entities where a missing relationships is found.
To identify orphan items, select Residual from the Access mode drop-down list then click on the
entities highlighted by the scan function. The orphan items are listed in analytical mode. You can
assign a parent by clicking on an orphan item.

Using the Default access mode you can select a parent item for all orphans of an entity (refer to
Assigning a relationships to all orphan items).

Assigning a relationship to all orphan items


The Default access mode allows setting a parent to all orphans of an entity.
Go to the Relationship window and select Default from the Access mode drop-down list.

73

Board 6.1 Manual

Click the desired parent entity then select the item that should be assigned as parent for all existing
orphans.

Entities
Basic concepts
An entity generally is a set of homogeneous items by which data can be viewed and summarized. For
example, a Customer entity holds the list of customers and allows you to view such things as the
sales amount by customer. Items of an entity are called entity members or occurrences. An entity can
be used as a dimension of an InfoCube. Relationships can be defined between two or more entities to
form a hierarchy.
An entity is made of two fields, a code part and a description part. The code is a unique value that
identifies an entity member; two entity members cannot share the same code.
When an entity is created, Board creates an internal unique identifier (UID) for that entity. The UID is
then used to refer to the entity. Reports, procedures, datareader protocols and other objects all refer to
the entity using its UID. As a consequence, changing the entity name does not affect existing
Capsules (and its reports and procedures) or other database objects. There is however an exception
to this rule. Board Web queries use the entity name to reference an entity. The entity name is stored in
the Query script file, therefore changing the name will affect existing web queries which use the entity.
The maximum number of entities that can be defined is 999. Note that the entity definition window is
initially limited to 51 lines, however whenever you define an entity near the end of the page, the
number of rows increases automatically.
The Entities function allows you to
Create, remove or rename an entity.
Add, edit and delete entity members.
Monitor entities saturation.
Monitor sparse structures size and define the sparse management method.
To access the Entity function, click the Entity icon

Creating an entity
To create an entity click on an empty row, type the name of the entity

then define other parameters,


74

Chapter 6 Database Design and management

Code width

Length of the entity code.

Desc width

Length of the entity description.


Note! You can set this field to zero if the description field is not
needed, for example for a ZIP Code entity.

Max Item nr.

Maximum number of entity members. This parameter defines the


maximum number of members that the entity can handle. Define a
value higher than the estimated total number of members to load
(see next paragraph for details).

Sort by

Default sort option. Click on the cell to set one of the three available
options:
[none] , displays occurrences in the order in which they are
created,
code : sorts the entity members according to the code field.
desc : sorts the entity members according to the description field.
Sorting is always in ascending order. Both code and description are
text fields therefore sorted according to the character string.

Display

Default entity field visualized in reports. Click on the cell to set one
of three available options:
desc : displays the entity description field.
code : displays the entity code field.
c+d : displays both code and description fields.

User view

Disabling this option excludes the entity from the database cache
(therefore reducing its size) but users will not be able to access the
entity in the Select window or set the entity in the Dynabar. Only
consider disabling it if you need to optimize the database for users
accessing through a low bandwidth connection.
By default, this option is enabled.
Note! Refer to section Understanding the database
caching for details on the purpose of this property.

Tip! The position where you define an entity is not relevant however it is good practice to define
entities belonging to the same hierarchy on continuous rows, leaving some blank rows between two
groups and defining stand alone entities (those not belonging to a hierarchy) at the bottom as
illustrated,

75

Board 6.1 Manual

Defining the Max Item Number


The entity max item number parameter has several purposes. It is an indicator of the entitys size; it
allows Board to &rdquor;know, before data is loaded, how large an entity will be and how it compares
to other entities. Board optimizes the physical data structures of entities and InfoCubes considering
(among other factors) the max item number values and their ratios.
For example, if the Customer entity has a max item number value of 100,000 and the Product entity
of 2,000, before loading any data, Board &rdquor;understands that the Customer entity will be 20
times larger than the Product entity. InfoCubes having Customer and Product dimensions are
therefore optimized, taking into account the fact that the Customer entity is larger than the Product
entity.
When two entities are dimensions of an InfoCube, it is important that the ratio of their max item
numbers reflects the same proportions as the ratio of their actual number of members. Let us consider
the above example: after loading the Customer and Product entities, the number of members of the
Customer entity should be greater than that of the Product entity. If, after loading data the ratio is
reversed, i.e. there are more products than customers, then the system is sub-optimized; a red
warning message visible in the InfoCube window highlights the sub-optimized InfoCubes.
76

Chapter 6 Database Design and management


The max item number is also a limit to the number of members that the entity can handle, therefore it
must be higher than the estimated total number of entity members.
The last column of the entity window shows the entity saturation given by the percentage of entity
members divided by the max. item number value.
The entity saturation must not exceed 100%. If the saturation of an entity exceeds 100% a warning
message indicating the exceeding entity appears when opening the database. When the saturation of
an entity exceeds 100%, you must clear the entity and redefine a higher max. item number. Note that
as a consequence of clearing an entity, InfoCubes versions structured by it are also cleared. A red
tick (v) indicates the presence of an InfoCube structured by that particular entity.
Example
Lets consider for example that you are building a database to load you companys data and you now
need to create the Customer entity. You can find out how many customers your organization has by
running a query on the master files. Since a rough estimate is sufficient, you can simply ask a
colleague who is likely to know the number. Lets assume the answer is 55,000 customers. The max
item number should be greater than that, to allow for growth. Considerl, for example that each year
there are 6,000 new customers and you need to allow for 5 years of growth, then the max item
number for the Customer entity should be set to 55,000+5x6000=85,000. Always over-dimension your
estimates, so in this example, to be on the safe side, set 100,000 instead of 85,000.
Tips for choosing the max item number
It is better to largely over-dimension the max item number rather than running the risk of exceeding
the entity saturation. Over-dimensioning does not affect the databases performance levels. The only
problem with excessive over-dimensioning of the max item number is the risk of exceeding the
maximum number of &rdquor;cells that can be handled in a cube. This limit is 10^24 for non-sparse
InfoCube and approximately 10^30 for sparse InfoCubes. Board controls this limit by indicating any
excesses in the InfoCubesconfiguration module.
Consider the following guidelines for setting the max.item number
Define the max item numbers based on a rough estimate then load a test set of data to find
out the real number of members for each entity.
For small entities, having up to a few hundreds members only, multiply the number of actual
members by 5 or 10. When the max item number value is no greater than a few thousands,l
setting an accurate value is not essential.
Always consider the nature of the entity. Some entities are rather stable and it is not
necessary to set a value much higher than the actual number of members loaded after the first
test load. For example, the Region entity will probably be rather stable and can only grow up
to the total number of regions of your country (or countries included in the database).
For entities having several thousands members (more than 10,000), take the number
occurrences (or an estimate), double it (or triple it if the estimated growth is significant) then
round it up to the nearest thousand.

Modifying entity properties


Entity properties can be freely modified as long as the entity is empty (it does not contain any
members). When an entity contains data, only a few attributes can be changed as follows,
Entity name

This property can be changed freely.


When an entity is created, Board creates an internal unique
identifier (UID), which is used to reference the entity. Reports,
procedures, datareader protocols and other objects all use the
entitys UID therefore changing the entity name does not affect
existing Capsules (and its reports and procedures) or other
77

Board 6.1 Manual


database objects.
Warning! Board Web queries use the entity name to reference an
entity. The entity name is stored in the Query script file therefore
changing the name will affect existing web queries which reference
the entity.
Code width

Changing the code length requires you to clear the entity.

Desc width

Changing the description length requires you to clear the entity.

Max Item nr.

Changing the max item number requires you to clear the entity.

Sort by

This property can be changed freely.

Display

This property can be changed freely.

User view

This property can be changed freely.


Note that when this option is disabled users cannot access the
entity in the Select window and cannot set the entity in the Dynabar.

Deleting an entity
To delete an entity click the Delete button located on the entity row as illustrated

The ItemNr field shows the number of items currently contained in the entity. Deleting an entity clears
its contents too.
When an entity is deleted, all InfoCube versions structured by that entity are also removed. A red tick
to the right of the Delete button (see illustration below) indicates the presence of data in an InfoCube
version structured by that entity; deleting that entity also deletes the InfoCube version thus the data.

Setting the entity cut-off


Refer to section Understanding the database caching for details on the purpose of this parameter and
considerations for choosing the value.
Type the Entity cut-off value as illustrated then press the OK button.

78

Chapter 6 Database Design and management

Inserting, editing and deleting entity members


The View button allows adding, editing and deleting entity members. Click the View button on the
desired entity row as shown,

The entity members list is displayed.


To add a new item: type the code and description using the grid with a white background.
Note that you can key-in several lines (adding several members).
To edit an existing item: double click on the desired field.
To delete an item: click the Clear button.
Example

Note that there are several ways of loading members into an entity

79

Board 6.1 Manual


Through the Entities / View function. This allows you to manually key-in the code and
description. This function is useful for adding some items to an entity or for populating small
entities, which do not exist in your source data systems.
Through a Datareader protocol that loads data from an external source (from a file or a
database). This method is the most common and appropriate for populating large entities.
From a Capsule using the STO object. A budgeting or simulation application may require
users to create new entity members (for example a new product or a new customer). The STO
object provides this function within the Capsule environment.

Note! When an entity member is created, Board creates an internal unique identifier
(UID), which is used to reference it. All selections (stored into Capsules, procedures, and
security) use the entity members UID therefore changing the code or the description
does not affect existing Capsules (and its reports and procedures) and security profiles.
Warning! Board Web queries use the entity members code to reference an entity
occurrence. The code is stored in the Query script as a text string, therefore changing it
will affect existing web queries which have a reference to it.

Note! Deleting an occurrence does not reduce the saturation level of an entity. The
saturation of an entity is determined by the number of occurrences created. For example,
inserting and deleting 10 items for 5 times causes the creation of 50 items; if the entitys
max item number is of 100 then the saturation is 50%. The saturation is reset only when
the entity is cleared using the Entity / Clear function.

Deleting all entity members


Clicking the Clear button located on the entity row deletes the entity members.

Clicking the Clear All button, deletes all entity members for all entities.

When an entity is cleared, all InfoCube versions structured by that entity are also cleared. A red tick to
the right of the Delete button (see illustration below) indicates the presence of data in an InfoCube
version structured by that entity; clearing that entity clears that version.

80

Chapter 6 Database Design and management


When an entity member is deleted, all existing selections of the deleted (within Capsule and
procedures) are lost.
After deleting some entity members, running the &rdquor;Db verify function is recommended so as to
optimize the database.

Relationships
Basic concepts
In a Board database relationships are always strictly hierarchical: a relationship defines an n-to-1
relationship between two entities that we therefore refer to as the parent entity and the child entity. For
example, State and City clearly are parent and child entities: a city can only be in one state and a
state includes several cities.
Entities and hierarchies provide views on InfoCubes (usually numerical data) at various aggregation
levels, for example, Sales by State or by City. Two entities, a parent and a child are also often
referred to as less aggregate or more aggregate entities: a view at a parent entity level is the
aggregation of the data from the child entity level.
Board supports multiple parallel hierarchies meaning that an entity can have multiple roll-up paths. For
example, the Customer entity could roll-up into the City and State (this is the first branch) and
independently roll-up into Salesman and Area Manager entities (this is another branch) and into
Channel (this is a third branch). Hierarchies are also referred to as trees. The following illustration
shows a Customer hierarchy made of three parallel branches.

Building the hierarchies is one of the key steps of building the multidimensional model. The hierarchies
must provide a truthful representation of the business model or the organization you are modeling. A
relationship between two entities should only be defined if there is an organizational rule or some kind
of constraint that enforces it.If we look at the State and City entities, it appears quite obvious that a
hierarchical relationship should be defined between the most aggregate, State (the parent) and the
less aggregate City entity (the child). Sometimes the choice is not so obvious; lets consider for
example the entities Customer and Salesman. Defining the hierarchical relationship
81

Board 6.1 Manual


Customer Salesman, implies that a Customer can only be related to a single Salesman. Only if this
is an organizational rule is it then appropriate to define a relationship Customer Salesman,
otherwise, if a salesman can visit (or sell to) any customer, then the two entities should remain
unrelated.
To access the relationships definition window, click the icon as illustrated,

Defining a relationship
To create a relationship, open the relationships definition window, click on the child entity on the row
header column (with gray background), then select the parent entity or entities.
For example, to define City as being a parent of the Customer entity, click on the Customer row
then select City as illustrated.

Note that direct and indirect relationships must be defined. A direct relationship is a one-level
child parent relationship. For example Customer City is a direct relationship. An indirect
relationship is a child grand-parent relationship. For example Customer State is an indirect
relationship through City State.
Lets consider the previous example, if you define Customer City and City State, then the
indirect relationship Customer State must also be defined .

82

Chapter 6 Database Design and management

Warning!
Do not define cycles in your hierarchies: two entities that are not hierarchically related cannot have the
same parent entity. An example is shown in the following illustration.

Removing a relationship
To remove a relationship definition, click on the child entity on the row header column (with gray
background), then de-select the parent entity you wish to remove.

Assigning a relationship
Each member of a child entity must have a parent. For example, considering the Customer City
relationship, each Customer must be related to a City. When there is a missing child parent
relationship, the item in the child entity is called an orphan. Relationships are used when data is
aggregated (rolled-up) and orphans can cause data inconsistencies. For example, lets consider a
Sales Amount InfoCube, structured by Customer. If a customer is not related to any city, then when
this InfoCube is aggregated by city the data of the orphan customer does not roll-up into any city
giving an incomplete answer. It is therefore important to make sure that there are no orphans. Refer to
following paragraphs for instructions on how to identify and remove orphans.
Relationships can be assigned either manually, one by one selecting for each child member its parent,
or through a DataReader that reads a file containing child code and parent code information. Refer to
the DataReader section for more details on loading relationships from an external data source.
To assign a relationship manually, go to the relationships window,

83

Board 6.1 Manual


Go to the child entity row, click the name of the desired parent entity. For example, to assign a
Customer City relationship, click City on the Customer row.

Clicking the entity opens a window listing all child entity members with the related parent.
Select the child member you wish to define a parent for.

Then choose the parent from the parent entity window.

84

Chapter 6 Database Design and management


Note! After manually assigning relationships, click the Scan button to check for the presence of
missing relationships. The scan function highlights in red entities which have undefined relationships
(orphan items).

Viewing relationship in analytical mode


The Analytical access mode allows you to view a child parent relationship from bottom-up (child-toparent). It displays the full members list from the child entity and the parent item next to it.
Open the Relationships window, select Analytical from the Access mode drop-down list,

To browse a relationship, click the desired parent entity name: a window showing the child parent
items opens.
The following illustration shows the City State relationship in analytical mode.

Clicking on an item allows changing the relationship.

Viewing relationship in summarized mode


The Summarized access mode allows you to view a parent children relationship from top-down. It
displays the parent items list and the number of related items from the child entity.
Open the Relationships window, select Summarized from the Access mode drop-down list,

To view the relationship, click the desired parent entity name: the parent items and the number of
related items from the child entity are displayed.
The following illustration shows the City State relationship in summarized mode.

85

Board 6.1 Manual

Clicking on a parent item allows adding or removing children items.

Identifying missing relationships (orphan items)


An orphan is an item of a child entity that is not related to any item from a parent entity. The presence
of orphans can compromise the accuracy of reports and should therefore be identified and removed
by assigning them to a parent.
Go to the Relationships window then click the Scan button to launch a function that analyses all
child parent relationships and highlights in red entities where a missing relationships is found.
To identify orphan items, select Residual from the Access mode drop-down list, then click on the
entities highlighted by the scan function. The orphan items are listed in analytical mode. You can
assign a parent by clicking on an orphan item.

Using the Default access mode you can select a parent item for all orphans of an entity (refer to
Assigning a relationships to all orphan items).

Assigning a relationship to all orphan items


The Default access mode allows you to set a parent for all orphans of an entity.
Go to the Relationship window and select Default from the Access mode drop-down list.

Click the desired parent entity then select the item that you want to be assigned as parent for all
existing orphans.

The Normalize function


86

Chapter 6 Database Design and management


The normalize function allows assigning indirect relationships using the direct relationships as a
bridge. For example, lets consider the hierarchy Customer City State. After having assigned the
direct relationships Customer City and City State, the normalize function automatically assigns
the indirect relationship Customer State.
Click the Normalize icon to access the function configuration window,

Each row indicates an indirect relationship showing the less aggregate, the more aggregate and the
middle entities (in the Through column).
To run a normalization, click the Go button on the desired line as illustrated.

To run normalization on several indirect relationships, select the Do tick-box then press the Go button
at the top.

To save the selected normalization options for re-running at a later time or for launching the
normalization from a procedure, click the Save Setup button.
Note that for an indirect relationship of three-levels (or more) you must select the middle entity by
clicking
the
Through
cell.
For
example,
considering
a
four
levels
hierarchy
Customer City State Country, the indirect relationship Customer Country can be
normalized through City Country or through State Country.

Note! The normalize function can be launched from a procedure using the Normalize
option of the Data Read action.

InfoCubes
Basic concepts
An InfoCube is the element of Boards multidimensional database that allows storing and retrieving
data using the multidimensional metaphor. An InfoCube has dimensions, providing different
perspectives on data. The dimensions of an InfoCube are entities or hierarchies. The intersection of

87

Board 6.1 Manual


an InfoCubes dimensions define the InfoCube grain, its smallest element, also referred to as the
InfoCube cell.
For example, a Sales Amount InfoCube which has three dimensions Month-Product-Customer,
can be viewed by any of the axes, for example total sales by Product, total sales by Month or by
Customer as well as any intersection, for example sales by Product in a given Month or for a given
Customer. When a dimension of an InfoCube is part of a hierarchy, the InfoCube can be viewed at any
aggregation level of the hierarchy. Considering our example, sales by Quarter and Year (these are
aggregations of Month) and by any aggregation of Customer (for example City and State) or of the
Product entity (for example Product Group or Product Type). The user can easily build views for any
possible intersection of any two or more entities of a hierarchy part of a dimension.
Board supports numeric, date and text InfoCube types.
When an InfoCube is created, Board creates an internal unique identifier (UID) for it. The UID is
subsequently used to refer to the InfoCube. Reports, procedures, DataReader protocols and other
objects all refer to UID. As a consequence, changing the InfoCube name does not affect existing
Capsules (and its reports and procedures) or other database objects. There is an exception to this
rule. Board Web queries use the InfoCube name to reference an InfoCube. The InfoCube name is
stored in the Query script file therefore changing the name will affect existing web queries which use
the InfoCube.
The maximum number of InfoCubes that can be defined is 256.
To access the InfoCubes window, click the InfoCubes icon

Introducing sparse structures


An InfoCube can store a value for any combination of its dimensions members&endash; for example
a three dimensional InfoCube has a cell for any (month, product, customer) triplet. The virtual size of
an InfoCube is the maximum number of cells it has. For example considering 24 months, 500 products
and 1000 customers, the virtual size of a month-product-customer InfoCube is of
24x500x1000=12,000,000 cells. After loading data into the InfoCube, generally only a small fraction of
the total InfoCube cells really contain data. The ratio between the actual number of cells containing
data and the total number of cells of the InfoCube (obtained multiplying the number of members of
each dimension) is the InfoCube density.
Board does not create a cell for any possible value of an InfoCubes dimensions. Different
compression methods exist. The most significant method is the sparse management.
Lets consider a company which has a large number of both products and customers, a food and
beverages company for example, selling to small retail shops, restaurants, hotels, catering companies,
hospitals, schools etc. If you consider an average customer, you will find that he is only buying a small
basket of products out of the entire products list. A hospital will probably buy a different set of products
to a hotel or a school. A customer does not buy all possible products and vice-versa. When this is true
then we say that Customer and Product are sparse. If customer C1 buys product P1 then (C1-P1) is
called a sparse combination.
A sparse structure is a combination of two or more entities (not hierarchically related) for which the
number of distinct combination of values is small compared to the total number of potential
combinations. Sparse combinations are created when data is loaded into InfoCubes. When a sparse
structure is defined, disk space is allocated only for the sparse combinations created while loading,
therefore disk space overhead is minimal.
Sparse structures are defined when creating InfoCube versions.
Time entities cannot be included in a sparse structure. Note that some degree of disk space
compression also occurs on dimensions that are not part of a sparse structure.
When you create an InfoCube version with two or more dimensions, use the following guidelines to
define a sparse structure:
88

Chapter 6 Database Design and management


Ignore the time dimension.
Define the InfoCube version dimensions, without setting any sparse entities.
Identify the two biggest entities in terms of actual number of members. Ask the question
&rdquor;will every possible combination of entity1-entity2 exist?. If the answer is no then
define the sparse structure &rdquor;entity1-entity2.
Generally you should define a sparse structure whenever two entities have more than 1000
members, or when one entity has several thousand members and the other a few hundreds.
Note that it is better to define a sparse structure when it is not needed than the opposite
therefore when you are in doubt, set the entities as sparse.
Identify the next biggest entity and go through the same reasoning considering the sparse
structure as a unique entity. If the combination of &rdquor;entity3 and &rdquor;entity1-entity2
is sparse then add entity3 to the sparse structure. Repeat this process for the other
dimensions.
There is a dimensional limitation in defining sparse structures, therefore after adding an entity
to a sparse structure, click the OK button to verify you have not reached the limitat. If you have
exceeded the limitat, a warning message appears on the InfoCube definition row. Refer to the
InfoCubes and spares dimensional characteristics paragraph for details on the sparse
dimensional limit.

Sparse actual size and density


The actual size of a sparse structure is the number of distinct combinations of its entities. This number
is visible from the Entity function. Click the Entity icon then click the Sparsity tab.

The number of combinations of the sparse structure is shown in the Item Nr column.
Clicking on a sparse structure displays the list of InfoCubes versions that utilize the structure and the
density. The following illustration shows the InfoCube versions using the Product-Customer sparse
structure.

89

Board 6.1 Manual

Clearing all versions using a sparse structure clears the sparse structure too and resets the number of
sparse combinations to zero.

The sparse types: Dynamic, Static and Static External


Sparse structures can be of three types from the simplest Dynamic to the most sophisticated Static
External.
The sparse size and the sparse Type affect the loading process only. Consider a Data Reader
protocol loading several InfoCubes each having multiple versions and different sparse structures.
When the size of the sparse structures becomes large then the Data Reader might run out of memory
and fail to import any more data. A sparse structure can be considered large when its size exceeds 10
million combinations but this limit may vary depending on the hardware. When the memory limit is
reached, reduce the number of InfoCubes included in the protocol or remove some secondary
versions from the InfoCubes. If this is not sufficient and there is a sparse version that exceeds 10
million combinations, then change the sparse type to Static Internal. If there are several large
sparse structures then change the type to Static External. The number of versions of an InfoCube
can affect the size limit: if an InfoCube has a single sparse structure, it can reach a much higher size
than if it has more than one version; the number of versions affects the threshold of all three sparse
types.
The maximum number of sparse combinations that a sparse structure can reach is 90 millions for a
Static/Internal structure and 150 millions for Static/External structures. However a practical limitation,
fundamentally determined by RAM constraints, occurs at around 30 to 40 million combinations. Note
that most large databases, with entities having several thousand members, have sparse structures
that rarely exceed 1 or 2 million combinations.
When the size of the sparse structure reaches its size limit the Data Reader is unable to add new
combinations and starts rejecting records with the following error message &rdquor;SVR &endash;
Out of memory. When this error message appears, then you can consider changing the sparse type;
in all other cases do not change the default sparse type.
Dynamic. This is the default type, suitable in most cases for sparse structures which have up to 10
million combinations or more. This limit can change depending on the hardware and software
environment and on the Board database.
Static Internal. This type of sparse is suitable for sparse structures which have up to 40 million
combinations (this limit can change depending on the hardware and software environment and on the
Board database). To set the sparse type, open the Entities window then go to the Sparsity tab.
select &rdquor;Static Internal from the Type / Location drop-down list Then type the size (in
millions) of the sparse structure, round the value up to the nearest 5 million, in the Max Item Nr
column. For example, if the actual sparse size is of 23 million, type 25.
Static External. This type of sparse is suitable when a database contains several sparse structures
which have 40 to 50 million combinations (this limit can change depending on the hardware and
software environment and on the Board database). To set the sparse type, open the Entities window
then go to the Sparsity tab. Select &rdquor;Static Internal from the Type / Location drop-down list
and then type the size (in millions) of the sparse structure, round the value up to the nearest 5 million,
in the Max Item Nr column. For example if the actual sparse size is of 37 million, type 40.
The following illustration shows the sparse Type configuration window.

90

Chapter 6 Database Design and management

About InfoCubes, versions and sparse structures


This paragraph lists some limitations and constraints but also has tips and guidelines from best
practices and real-life cases.
An InfoCubes dimensions can range from one to 32. Generally, the number of dimensions of
an InfoCube should not exceed 7 or 8. An InfoCube with more than 8 dimensions can be
difficult for end-users to understand and use. Before creating an InfoCube with more than 8
dimensions, consider revising your data model to reduce the number of dimensions.
An InfoCube can have up to 256 versions. Generally most InfoCubes only have a single
version. Add other versions only when needed. When secondary versions are needed,
generally four or five versions are sufficient. Only rarely are more than 12 versions needed. If
you have more than 12 versions, analyze whether or not each version is really needed.
The maximum theoretical number of cells of an InfoCube version that does not include a
sparse structure is 10^24 cells (i.e. this is the virtual size limit of a non-sparse InfoCube
version). To calculate the theoretical number of cells of an InfoCube version, multiply the
MaxItemNumber of its entities. For time entities, the MaxItemNumber is equal to the number
of members.
For an InfoCube version that includes a sparse structure: the product of the MaxItemNumber
of non-sparse entities must be less than 10^15; the product of the MaxItemNumber of sparse
entities must be less than 10^15 and the overall product of the MaxItemNumbers must be less
than 10^30. The maximum theoretical number of cells is 10^30.
The maximum number of sparse combinations that a sparse structure can reach is 90 million
for Static/Internal structure and 150 million for Static/External structures. However a practical
limitation, fundamentally determined by RAM constraints, occurs at around 30 to 40 million
combinations. Note that most large databases, with entities having several thousand
members, have sparse structures that rarely exceed 1 or 2 million combinations.

Numeric data types


Single Precision
Floating-point numeric type, provides accuracy up to seven digits. Each cell occupies 4 bytes.
Numbers with more than seven digits are rounded starting from the seventh digit. For example:
10,000,003 is rounded to 10,000,000. Similarly, 10.999996 is rounded to 11.
Note that rounding occurs only when writing data to a single cell of the InfoCube, therefore if your data
source provides data in single precision or in an 8 character field you should use this data type. When
used in procedures and reports, single precision InfoCubes are aggregated using double precision
variables therefore virtually no aggregation occurs.
This is the recommended data type to use for numeric InfoCubes, providing an excellent trade-off
between accuracy and space required.

91

Board 6.1 Manual


Double Precision
Floating-point numeric type, provides accuracy up to fourteen digits. Each cell occupies 8 bytes.
Numbers with more that fourteen digits are rounded starting from the fifteenth digit. For example:
100,000,000,000,003 is rounded to 100,000,000,000,000. Similarly, 10.9999999999996 is rounded to
11.
Integer
Integer numeric type. Each cell occupies 2 bytes. The value of a single cell must be between -32000
and 32000.
Currency
It is a fixed 3 decimal format with the same accuracy as the Double Precision type. Each cell occupies
8 bytes.

MXC data type


Multidimensional eXtracompressed Counter (MXC) is a numeric data type particularly optimized to
implement a Boolean counter.
This type of counter answers particular business questions such as a coverage analysis. For example
to answer questions such as, &rdquor;What is the number of distinct customers having ordered at
least one product out of a selected list?.
At the cell level, values can only be either 1 or 0. The value 1 indicates that there is a valid
combination; in the example, it means that a customer has ordered a product.
Aggregated views are produced by adding numbers for the entity to be counted (in the example,
Customer) and by applying the logical OR operator on all other dimensions and aggregations. The use
of the OR operator guarantees that customers who meet the criteria more than once (for example, a
customer that has ordered two products in the selection), are nevertheless counted only once.
Note that due to its particular nature, MXC InfoCubes have some peculiarities:
When you create an MXC InfoCube you must declare which entity you wish to count. This is
achieved by clicking on the desired entity name in the InfoCube versions definition window.
Data entry is not supported on MXC InfoCubes
To feed an MXC InfoCube you must create a datareader protocol that only feeds that single
InfoCube (the same datareader cannot include other InfoCubes).
MXC InfoCubes cannot be used in DataFlow procedures.

Text data types


Text InfoCubes can be used to store text information that is not a relevant axis for analysis. For
example, an Address InfoCube structured by Customer can be used to store customers addresses.
A Product label InfoCube structured by Product and Country can be used to store the products
labeling which may vary depending on the countrys language. A Comment InfoCube structured by
Profit and Loss and month can be used to write comments for each month closure next to the profit
and loss line.
It is not possible to aggregate text type InfoCubes.
Text 64

92

Chapter 6 Database Design and management


Each single cell can store a character string of up to 64 characters and occupies 64 bytes. Note that
for double-byte databases (i.e. when the Unicode option is enabled), this data type automatically
switches to &rdquor;32 text and can hold up to 32 double-byte characters.
Text 224
Each single cell can store a character string of up to 224 characters and occupies 224 bytes. Note that
for double-byte databases (i.e. when the Unicode option is enabled), this data type automatically
switches to &rdquor;112 text and can hold up to 112 double-byte characters.

Date data type


Date type InfoCubes can be used for service level analysis. Board supports calculation between
dates: the difference between two date InfoCubes returns the number of days between the two dates.
Adding an integer (a production lead time for example) to a date (an order date for example) returns
the delivery date .
It is not possible to aggregate date type InfoCubes, however if you create an aggregated view on a
date InfoCube using the Dataview object, the highest and lowest dates are returned. For example,
suppose we have a date InfoCube called DueDate, structured by an entity named Project and aonther
entity called Department which is a parent of Project. A report on DueDate by Department returns the
smallest and highest dates found for projects related to the department.
Note that the date value is physically stored in a numerical format (it is an integer value where 1
represents 01/01/1900), when viewed by a user, the date is displayed, following the Windows regional
setting Short date style. To set your Short date style, from Windows Start menu, click Settings, then
Control Panel then click the Regional Settings button and finally go to the Date tab.

Creating an InfoCube
To create an InfoCube, open the InfoCube window, click on an empty row,
then type the name of the InfoCube and
select the data type as illustrated.

Click the Structure button and select the InfoCubes dimensions. The structure selection
window shows all stand-alone entities and entities at the base of hierarchies.
Define one (or more) InfoCube physical versions. Usually the most detailed version of the
InfoCube is defined in the first column. The most detailed version of the InfoCube is also
called the primary version. To add entities to a version click the version-entity intersection cell.
For example to define a version by Month-Customer-Product, click as illustrated.

93

Board 6.1 Manual

Define the sparse structure as appropriate. Refer to the Sparse Structure paragraph for
guidelines. To define a sparse structure, click twice on the cells of the entities you want
include in the sparse structure. The second click converts the O into an X, while a third click
clears the cell., The following illustration shows how to define the sparse structure made up of
Customer-Product entities,

For MXC InfoCubes, you must declare the entity being counted by clicking on the entity
name; the symbol <> appears next to the entitys name. If the entity you want to count is not
explicitly declared, Board counts the entity with the greatest MaxItemNumber.

Warnings!
InfoCubes of type MXC, date and text can only have one version.
It is possible to define an InfoCube which is only structured by a time entity (single
dimension InfoCube), for example Month or Year, however all time functions (Previous
Period, Yearly Cumulated Value etc.), including the Data Readers Replace function are
ignored on these InfoCubes. For this reason, it is recommended that InfoCubes with the
time dimension have at least another dimension.
When an InfoCube is structured by a given time entity, using the same time entity for
any additional version defined is recommended. For example, consider an InfoCube
which is structured by Day (and some other entities). If multiple versions need to be
created, then they must all be structured by Day (not Month or Year); all versions use a
single entity as time dimension.
94

Chapter 6 Database Design and management

Tip! Hidden InfoCubes: if the first letter of an InfoCube name is the underscore character
&rdquor;_ then the InfoCube is hidden; users cant view it when configuring a report,
chart or other data presentation objects. The InfoCube is only visible in the procedures
environment.

Copying an InfoCube structure


To copy an InfoCube structure, open the InfoCube versions definition window (clicking on the
InfoCube name), then click the &rdquor;Copy from button
want to copy the structure from, from the list.

and select the InfoCube you

Creating a new InfoCube with the same structure as an existing one


To create a new InfoCube with the same structure as an existing one,
open the InfoCube window then from the Drag and Drop Action drop-down list select the Copy
Structure option,

then right-click on the InfoCube to copy and, while keeping the mouse button pressed, drag and drop
the cursor to a new line where the new InfoCube should be created. Release the mouse button and
type the new InfoCube name when prompted.
A new InfoCube, with the same versions of the copied InfoCube, is created.
The Copy structure and Contents option creates a new InfoCube with the same structure and data
contained in an existing InfoCube.

Moving an InfoCube
When configuring a Layout, end-users select InfoCubes from a list. InfoCubes are listed in the order
they appear in the InfoCubes definition window (from top down). It is therefore recommended to place
the most commonly used InfoCubes at the top.
To move an InfoCube,
open the InfoCube window then select the Move option from the drop-down list

then right-click on the InfoCube to move and, while keeping the mouse button pressed, drag and drop
the InfoCube to a new line.

Adding a new version to an InfoCube


To add a new version to an InfoCube:
open the InfoCube window then click on the InfoCube name,
define the desired new versions on an empty column then press OK.

95

Board 6.1 Manual

Note that the newly created versions dont contain data. Use the Align function to feed the new
versions.

Verifying and Aligning InfoCube versions


All versions of an InfoCube must contain the same data. This grants that reports return the consistent
data independently from the version used to create the report. When data is loaded through the Data
Reader, the system automatically feeds all versions coherently, but when a new version is created in
which the InfoCube already contains some data, the new version must be aligned. Aligning a version
consists of feeding the version using data from another more detailed version of the same InfoCube.
To verify and align InfoCube versions,
open the InfoCube window then click the CheckSum button on the InfoCube definition row.

The list of versions is shown in a window, as illustrated.

To verify versions alignment, click the Verify button. The CheckSum column shows the grand total
value of each version, calculated summing up the values from all the cells.. A version is inconsistent
96

Chapter 6 Database Design and management


(not aligned) when the indicated CheckSum or percentage value differs from that of the primary
version.
To align all secondary versions, click the Align All button.
To align a single version, click on the version number cell.

Clearing an InfoCube
To clear data contained in an InfoCube,
open the InfoCube window, then click the Clear button on the InfoCube definition row as illustrated.

All data contained in all versions of the InfoCube is deleted.

Deleting an InfoCube
To delete an InfoCube,
open the InfoCube window, then click the Delete button on the InfoCube definition row as illustrated.

The Database Designer environment


What is the DB Designer
The database designer environment (DB Designer) is a visual modeling environment that integrates
the three fundamental tasks for creating your multidimensional database model: the creation of
entities, hierarchies and InfoCubes. The comprehensive and visual view of the database model
provides a better understanding and facilitates the illustration of multidimensional database concepts
to those approaching this subject.
The DB Designer provides access to the design and management features found under Entities,
Relationships and InfoCubes database functions. It is assumed that you are already familiar with
the concepts and features for the creation of entities, relationships and InfoCubes.
To access the DB Designer environment, click the icon as illustrated.

The DB Designer workspace


The database designer workspace:

97

Board 6.1 Manual

The default DB Designer view shows the existing database hierarchies.

Left-click on an entity to view its members. Right-click on an entity to access the entity definition
properties.
Left-click on a relationship to view the parent-child relationships. Right-click to select the relationships
view mode (analytical, summarized, residual, default).

To add a new entity to a hierarchy, select the hierarchy from the drop-down list.
To create new InfoCubes or view existing ones, select All Trees from the tree selection list then click
the InfoCubes icon.
When the InfoCube icon is clicked, the workspace shows all entities: the time entities are on the top
left, the stand alone entities on the bottom left and the hierarchies are on the right.

98

Chapter 6 Database Design and management

Designing Entities and hierarchies


To add an entity to a hierarchy,
Select the desired hierarchy or select <Add New Tree> from the hierarchy list.

Then click the New entity button (top left),


Right click to set the definition properties (code width, description width, max item number
etc..).
Then click the save button.

99

Board 6.1 Manual

To add an existing stand alone entity to a hierarchy,


Click the InfoCubes icon in order to view all entities.
Click on the child entity then draw a line to the parent entity located in the stand alone
entities group.

Creating or editing and InfoCubes


To create an InfoCube or edit an existing one,
Select All Trees from the hierarchy list, and click the InfoCube icon
Then select an existing InfoCube or click New to create a new one.

To define a version, click on the white circle then draw a line to each of the dimension entities
as illustrated.

100

Chapter 6 Database Design and management

to define a sparse structure, click on the circle located on the dimension line as illustrated.

Click the save button to save.

101

Board 6.1 Manual

DB Designer Options
The Options window is show in the following illustration

The Options icon provides access to the following features:


Layout

The Manual option, allows you to position entities of a hierarchy on the


workspace as desired. Click on the blue bar of an entity and drag to the
desired position. Click the save button if you wish to save settings.
Selecting Automatic Board automatically arranges entities on the
workspace.
Click the Reset button to reset the manual positioning.

Entities

Cut-Off : sets the entity cut-off parameter, refer to Entities for more
details.

Relationships

Click Scan to run the scan function. Relationships where orphans are
found become red.
Click Normalize to access the Normalize function.

Data Reader
Basic concepts
The Data Reader allows you to import data from text files or an ODBC source into Board entities,
relationships and InfoCubes. A Data Reader protocol defines how the external data should be
imported into Board database entities and InfoCubes; i.e. it defines what fields of a relational database
table (or file) should be imported into what entities and InfoCubes.
A Data Reader protocol can include a set of transformation formulas and validation rules to apply to
incoming data. These rules are defined using the ETL function.
The Data Reader also allows you to configure drill-through protocols. The drill-through function allows
end-users to drill from a Board report through to a relational database table. A drill-through protocol
102

Chapter 6 Database Design and management


links Board database entities to fields of a relational table. The purpose of this function is to allow endusers to drill-down to the transactional data (for example down to the invoice line detail) and view
detailed data that often is not kept on the Board database.
A Data Reader protocol can load several entities and InfoCubes at the same time and like wise,
InfoCubes and entities can be loaded from multiple Data Reader protocols. For example, if you need
to import two InfoCubes, Sales Amount and Sales Quantity, and they both reside in the same table
of your transactional system, then you can create a unique protocol that loads both InfoCubes at the
same time. On the other hand, if you need to feed an InfoCube from two transactional systems, for
example because you need to consolidate data from two affiliate companies having separate ERPs,
then you can create two protocols both loading data into the same InfoCube but each connecting to a
different data source.
The Data Reader protocols can be launched from a procedure or using the Batch Reader function.
Usually Board databases are updated daily in an overnight scheduled process that runs all the
required reading protocols.
The Data Reader and ETL functions are two of the products core capabilities,
which
translate
into
tangible
savings
while
implementing
a
project. Due
to the power and flexibility of the Data Reader, in most cases you are able
to feed your Board databases directly from the source system (such as an ERP,
CRM or other operational system), without the need for intermediate data staging
layers, such as a data-mart or a datawarehouse. This is unique in comparison to most other Business
Intelligence products, which typically require the source data to be cleansed and organized into either
a star or snowflake schema. This can be a significant cost during the implementation, but is often
overlooked.
To open the Data Reader definition window, click the icon as illustrated,

Valid date formats


Board standard time entities accept the following date formats,
Entity

Width

Format

Example

Day

DDMMYY

311204

Day

YYMMDD

041231

Day

MMMDDYY

DEC3104

Day

DDMMYYYY

31122004
20041231 recommended

8
DAY

YYYYMMDD

4804

(forty-eighth week of 2004)

Week

WWYY

0448

Week

YYWW

48-04

Week

WW?YY

04-48

Week

YY?WW

482004

Week

WWYYYY

200448 recommended

WEEK

YYYYWW

DEC3104 (last day of week; the Day entity


must be enabled)
103

Board 6.1 Manual


Week

MMMDDYY

4
Month
Month
Month
Month
Month
MONTH

Bimonth
Bimonth
Bimonth

5
5
6
6
3
3
4
4
4

0412
MMYY
YYMM
MM?YY
YY?MM
MMYYYY
YYYYMM

BYY
YYB
BBYY

Bimonth

YYBB

Bimonth

XYYY

5
5

Bimonth
Bimonth
Bimonth
Bimonth
BIMONTH

Quarter
Quarter
Quarter
Quarter
Quarter
Quarter
Quarter

5
6
6
3
3
4
4
5
5
6
6
2
4

1204
12-04
04-12
122004
200412 recommended
204 (second Bimonth 98)
042
0204
0402
MA04

(X-Y indicate the initials of the


Month included in the BimonthMarch April)

MA.04
22004

XY?YY
BYYYY
YYYYB
BBYYYY
YYYYBB

QYY
YYQ
QQYY
YYQQ
QYYYY
YYYYQ
QYYYY

20042
022004
200402 recommended
104

(first quarter 98)

041
0104
0401
12004
20041
012004
200401 recommended
04
2004 recommended

Quarter
Year

YYYYQQ

YY
YEAR
YYYY

Append and Replace options


A Data Reader protocol can include three types of fields, entity codes, entity descriptions and
InfoCubes. For each field type the Append/Replace option regulates how and if external data is
loaded or discarded. The following table lists the available options for each field type.

104

Chapter 6 Database Design and management

Board
type
Entity code

field

Description
OPTION

[blank]

The incoming record is only loaded if the value found in this field is the
code of an existing member of the entity; otherwise the entire record is
discarded.
This option is used to filter unwanted records.

Append

This option validates all incoming records; when the value from the data
source is not the code of an existing member of the entity, a new member
is created.
This option is used to populate entities.

Entity
description

InfoCube

[blank]

This option only loads the description if the current entity member
description field is not populated; therefore only descriptions for newly
created items are loaded.

Replace

This option overwrites the entity member description with the value from
the source file. It is recommended to always enable this option in order to
update entity members descriptions with changes that might occur on the
operational system master files.

[blank]

This option adds incoming data to the InfoCube; if the InfoCube already
contains values, then the new data is summed. Clearly summing of data
occurs only in case where the InfoCube is numeric; for date and text
InfoCubes, the current cell value is replaced with the source data.

Replace

This option replaces the InfoCube cells belonging to all time periods
found in the incoming data, with the new values. When this option is
enabled, the Data Reader performs the following actions
1. scans the entire source file and memorizes the time periods (i.e. the
values of the date field).
2. then clears the InfoCube cells belonging to the time periods found in
the source file.
3. then starts loading source data into the InfoCube.
For example, consider a file containing transactions for January, February
and March 2004. When loading this file, the datareader starts by
scanning the date field of all records and memorizes the dates. Then it
clears all InfoCube cells for January, February and March 2004 (across
all other dimensions) and finally, it reads the values in.

Data loading guidelines


When creating Data Reader protocols it is recommended that you create different protocols for loading
master files and transactional data. This is a rather natural organization since master files usually
contain information that feeds into entities and relationships (for example the customers master file
contains customer names, city, state, sales representative, area manager..) and the transactions data
usually contains information that feeds into InfoCubes (for example, sales amount, quantity, price,
discount etc..).
The master files (feeding entities and relationships) should be imported before importing the
transaction files. It is necessary to firstly populate entities and hierarchies followed by the InfoCubes
so that aggregated versions (if present) can be correctly populated. For example, consider a Sales
amount InfoCube which has two versions, one organized by Customer-Product-Month (the primary
105

Board 6.1 Manual


version) and a secondary version by City-Product-Month. The transactions file contains the following
fields: date, customer code, product code, sales amount. When reading this file, the secondary version
can only be fed if the Customer City relationship is already populated, it is therefore necessary to
read the Customer master file containing the Customer to City relationship first.
Only importing relevant entity members is preferable. Lets consider for example, a Board database
where you need to load three years of historical data. Only customers and products with transactions
in that range are needed, old customers and products that are still in the master files but for which
there are no transactions do not need to be included.
To import only the relevant data,
Pre-reading: create a Data Reader protocol to import all entities from the transaction file (this
protocol should include all entity codes fields from the transaction file and the Append option
should be enabled for all fields). These types of protocols are called &rdquor;pre-reading
protocols. Run the pre-reading protocols first, to append the codes of entities present in the
transaction files, usually these entities are either stand alone or at the base of a hierarchy.
Master files: secondly, import the master files to create the hierarchies. The Data Reader
protocols importing hierarchies should have the Append option enabled for all entities except
for the one at the base of the hierarchy (which has been appended in the pre-reading
protocols). When these protocols are executed, the records that were not present in the
transactions files are discarded.
Transactions: load InfoCubes from the transaction files.

Creating a text file Data Reader protocol


This type of Data Reader protocol imports data from fixed width fields text files (of ANSI or Unicode
type).
To create a text file Data Reader protocol, go to the ASCII tab of Data Reader window, click on an
empty row. The protocol definition window opens.

Type the protocol name in the Title field.


In the Path field, type the name of the directory where the text file is located. Note that the
text files are accesses by the BoardServer, which reads data and feeds it into the Board
database. The source files must be located in a directory accessed by computer where the
106

Chapter 6 Database Design and management


BoardServer is running. For example c:\Board\Dataset refers to the Board\Dataset
directory located on the C drive of the computer where BoardServer is running.
Type the file name in the Pattern field; note that you can use wildcards. For example type
&rdquor;P*.TXT to view all files starting with P which have TXT as their extension
Press the Refresh file List button to view the files from the source directory. Click the
desired file name in the files list box.
Click the Fields button and select entities and InfoCubes to feed from the list. Note that
entities have two fields, the code part and the description part. When you select an InfoCube,
make sure to also select all its dimensions. For example, if you select the InfoCube Sales
Amount, dimensioned by Customer-Product-Month, you must also include the following
fields: Month, Product code and Customer code.
For each selected field, type the starting position and width of the corresponding field from the
text file. The rightmost column (with black background) shows data from the first record of the
text file.
For each field (except standard time entities), set the Append/Replace option as desired.
Click on the yellow cell to change setting. Refer to the paragraph Append and Replace options
for details.
The Divide by field is optional and only applies to numeric InfoCubes: it divides incoming
data by the specified value. For example, type 1000 to divide values in the source file by 1000.
Press OK to save the protocol.

Note! The Data Reader cannot read text files exceeding 2GB in size. This limit only
applies to text files.

Loading data from multi-column text files


The Across option (applicable to text files Data Reader protocols only) allows for the importing of data
from a file with a multi-column structure: where the values to import into an InfoCube are structured
across contiguous fields, each one relating to an occurrence of a dimension.
Consider, for example, the following file where the first column contains product codes, other columns
contain the monthly sales values for January, February, March and so on.
Product 01

730

950

1200

840

Product 02

1400

1650

2050

1925

Product 03

850

740

976

752

&ldots;&ldots;&ldots &ldots;&ldots;&ldots &ldots;&ldots;&ldots &ldots;&ldots;&ldots &ldots;&ldots;&ldots


;
;
;
;
;
The numeric information contained in the file should be loaded into an InfoCube structured by two
dimensions, Product and Month. The Product dimension is specified in the first column but the
Month dimension is across columns. The Across option allows you to import such files.
To configure a Data Reader protocol for multi-column text files,
Follow the procedure described for creating standard text file Data Reader protocols.

107

Board 6.1 Manual


When selecting the Board database fields (entities and InfoCubes), do not select the entity
corresponding to the multi-column structure. Referring to the example above, this would be
the Month entity.
Select the InfoCube you wish to load and, in the Start field,set the starting position of the first
column. Referring to the example above, the starting position of the January field.
Click the Across button, then, from the drop-down list select the entity corresponding to the
file columns.
The entity members are listed in the left box. Select entity members in the order
corresponding to the columns.

Warning! The entity across cannot be a sparse entity for the InfoCube being read.

Creating an ODBC Data Reader protocol


This type of Data Reader protocol imports data from an ODBC data source.
To create an ODBC Data Reader protocol, go to the ODBC tab of the Data Reader window andclick
on an empty row. The protocol definition window opens.
Type the protocol name in the Title field.
Click the Fields button and select entities and InfoCubes to feed from the list. Note that
entities have two fields, the code part and the description part. When you select an InfoCube,
make sure to also select all its dimensions. For example, if you select the InfoCube Sales
Amount, with Customer-Product-Month dimensions, you must also include the following
fields: Month, Product code and Customer code.

108

Chapter 6 Database Design and management

Click the ODBC source drop-down list and select the ODBC source name. Note that the
ODBC source (DSN) must be defined on the computer where BoardServer is running.

After selecting the ODBC source name, the available tables and views are listed in the table
underneath the ODBC source list. Select the table (or tables) you wish to imports data from
then click the OK button as illustrated.

After clicking OK, the table fields list appears. Click on the desired field, then, keeping the
mouse button pressed, drag and drop the cursor in the cell next to the entity or InfoCube you
want to feed, as illustrated.

109

Board 6.1 Manual

Optionally, you can then edit a field and type an expression. You may, for example, wish to
divide or multiply a field. Double-click on the field you want to edit, then, using the commands
and syntax supported by the ODBC driver used, type in the expression.

If you have selected more than one table or view, click the Join button and set the join
conditions. Drag and drop fields from the source tables into the Join window. The join
statement generated is an equal join (natural join). If you need to define a different type of join,
for example an outer join or a right join, use the Edit button to edit the SQL statement (see
below).

110

Chapter 6 Database Design and management


Optionally, type a Where condition in the Where field as illustrated,

For each field (except standard time entities), set the Append/Replace option as desired.
Click on the yellow cell to change setting. Refer to the paragraph Append and Replace options
for details.
Press OK to save the protocol.
Defining an ODBC Data Reader protocol generates an SQL statement. When the protocol is
launched, Board sends the SQL statement to the ODBC provider and waits for the results.. Note that
the SQL statement is run on the ODBC provider therefore the commands and syntax which are
supported depend on the ODBC provider you connect to.
It is recommended you test the SQL statement using the Browse function: from the protocol definition
window, click the Edit button, then click the Browse button. The query is executed on the first 200
rows and the result data is displayed in spreadsheet format.
Note that Board is not a SQL query generator, if complex queries are needed it is recommended you
use an ad-hoc query tool to create and test the SQL statement.

Editing and testing the SQL statement of an ODBC Data Reader protocol
To view, test and edit the SQL statement of a Data Reader protocol, open the protocol definition
window and click on the Edit button.
The upper text area contains the SQL statement generated by Board, based on fields selected in the
protocol definition window. The lower text area can be edited; you can type your SQL statement here
or click the Copy button to copy the text from the top to the lower text area, you can then make
changes as desired.

111

Board 6.1 Manual

Click the Browse button to test an SQL statement on the first 200 rows of the source tables.
Note! The maximum length of an SQL statement is 3000 characters.

Setting the ODBC Connection string


For ODBC Data Reader protocols you can optionally define an ODBC connection string that sets
some ODBC parameters. Please refer to the ODBC documentation for details on the ODBC
connection string settings.
To define a connection string, open the protocol definition window then click the Options button.

The Query Timeout field sets the maximum number of seconds available for a query. Typing the
value -1 sets the time-out to unlimited.
It is generally not necessary to define an ODBC connection string, when it is not set, Board uses the
minimal value as the connection string:
ODBC; DSN=[data source name]; PW=; UID=;
If a connection string is defined for a protocol then it is used for all protocols which share the same
data source name (DSN).

Defining an ETL transformation and validation rule


The ETL function allows you to add data transformation and validation rules to a Data Reader
protocol.
The data flow is illustrated in the following diagram:

112

Chapter 6 Database Design and management

The formulas and validation rules defined in the ETL are calculated record by record on the incoming
data. An ETL formula can refer to any field of the record. The transformed record, i.e. the result of the
calculation, is the output ETL. This output is the data which is actually loaded into the Board database.
To define an ETL set of rules on a Datareader protocol, click on the gray cell in the ETL column.

The ETL definition window is a spreadsheet environment similar to the DynaSheet.

The InfoCubes and Entities of the Data Reader protocol are displayed in columns A and B (Type and
Field). The ETL input (shown in column C) is the incoming external data from the source system (an
ASCII file or an ODBC data source). The ETL output, shown in column D, is the transformed data
(after applying the formulas) used to feed the Entities and InfoCubes.

113

Board 6.1 Manual


If the ETL is associated to a text file protocol, press the Refresh file list button, then select the
desired file from the drop-down list. If the ETL is associated to an ODBC protocol, press the Connect
button.
After doing so, the first record of the source file or of the source table is shown in the Input column. It
is possible to scroll the first 200 records using the Rec. counter.
In the Output column (white cells), type the desired expression using the usual syntax of the
DynaSheet object (similar to common commercial spreadsheet applications). No transformations are
defined by default therefore each cell of the Output column is equal to the equivalent cell from the
Input column. Columns E to G (yellow background) can be used to write intermediate calculations
thus simplifying the definition of long complex expressions.
In cell D1, it is possible to define a record validation formula. If the result of the expression is 1 (true),
the record is validated and fed into Board database, if the result of the expression is 0 (False), the
record is discarded. The expression can refer to any cell of columns C to G.
Example

The transformations defined in the above example are common spreadsheet formulas. The
expressions used are shown hereafter.

Lets consider the example in the above illustration. In the Month entity, the following formula is
defined: =E3&F3. This formula concatenates fields E3 and F3 on which other formulas are defined.
Cell E3 is calculated by applying the Year() function to cell C3; this function returns the year part of
the date specified in C3. Cell F3 is calculated by applying the Month() function (retuning the month
part) to C3. Cell C3 contains the field Sales.Date from the source table. The formula E3&F3 therefore
returns the date formatted as follows YYYYMM, which is compatible with Boards Month entity. The
Gross Sales InfoCube (cell D6) is calculated by multiplying cells C6 and C7 corresponding to the
quantity and price fields from the source table.

Copying a Data Reader protocol


To copy a Data Reader protocol,

114

Chapter 6 Database Design and management


go to the Data Reader window, right-click on the protocol name you wish to copy then drag and drop
the cursor to a new line. When you release the mouse button you are prompted the name for the new
protocol.

Deleting a Data Reader protocol


To delete a Data Reader protocol,
open the Data Reader window then click the protocol name (the protocol definition window opens) and
press the Clear button as illustrated.

Running a Data Reader protocol


A Data Reader protocol can be launched
from the Data Reader window,
from the Batch Reader function,
from the Capsule environment by running a procedure.
If you need to run several protocols in sequence, use the Batch Reader function or a Capsule
procedure.
To launch a Data Reader protocol from the Data Reader window, go to the Data Reader window,
To launch a text file protocol, click the File cell, select the desired file then click the Go button.
To launch an ODBC protocol, click the Go button.

While a Data Reader protocol is running, a pop-up window shows the process progress.

This window show the Data Reader protocol name, the number of records read (in the example,
REC=6,700), the number of validated records (in the example, OK=6,720) and the number of
rejected records (in the example, REJ=0).
Note that this log window does not appear if the reading process only takes a few seconds to run.
Clicking the break button closes the log window but does not interrupt the data import process, which
is actually executed by a BoardServer.

115

Board 6.1 Manual

Optimization tips
It is recommended that you load data in chronological order to obtain an optimized database
When loading large amounts, you can obtain significant loading performance improvements by firstly
sorting data on the date field, followed by the fields corresponding to entities with the smallest Max
Item Numbers. For example, lets consider a table with the following fields: Date, Customer, Product,
Sales Amount and with Month, Product and Customer as the corresponding entities. Supposing
the number of customers is greater than the number of products then the source data should be
sorted by date-product-customer fields If you are loading data through ODBC, use the ORDER BY
clause in the SQL statement to sort the data or create an index on the table.

Interrupting a Data Reader protocol


To interrupt a running Data Reader protocol, click the Quit button on the BoardServer program that is
running the protocol. The BoardServer program will close after a few minutes.
Do not kill the Boardserver.exe process using Windows TaskManager as this could corrupt the
database.
It is not possible to interrupt a running Data Reader from BoardClient.

Batch reader
Basic concepts
The Batch Reader allows you to define a sequence of Data Reader protocols.
A Batch Reader procedure can be launched
Interactively from the Batch Reader window.
From a command line, (from a tasks scheduler for example).
From a Board Capsule procedure.
To open the Batch Reader, click the following icon:

Creating a Batch Reader procedure


To create a Batch Reader procedure, open the Batch Reader window
Click the New icon and type the procedure name,

Click on a line and select the Data Reader protocol from the pop-up window.
Click the Do check-box to enable the protocol. Optionally, click the Log check-box: when
enabled, if while importing data some records are rejected due to a validation conditions or a
data type error, then a log file is created in the discarded records.

116

Chapter 6 Database Design and management


Repeat the above steps and set other Data Reader protocols in the following lines. The
protocols will be executed in sequence, from top down.

Optionally, enable the Normalize check-box. When set, after running a Data Reader
protocols that feeds a hierarchy, the Normalize function is launched using the settings saved
in the Relationships window.
Click the Save button to save the procedure settings.

Running a Batch Reader procedure


There are three ways to launch a Batch Reader procedure.
- To run a Batch Reader procedure interactively, open the Batch Reader window, select the procedure
name from the drop-down list then click the Go button.

- To include a Batch Reader procedure in a Capsule procedure,


open a Capsule then go to the Procedures Designer,
define a Data reader action and select the Batch Reader procedure name from the drop-down
list as illustrated.

117

Board 6.1 Manual

- To launch a Batch reader procedure from a command line, run the following command:
[..]\BoardClient.exe [Folder]\[DBName]:[BatchReaderName]@[URL:Port]
where
[..] is the path where BoardClient is installed,
[Folder] is the alias of the database folder (usually Main),
[DBName] is the database name,
[BatchReaderName] is the name of the Batch reader procedure you want to launch
[URL:Port] is the BoardMaster address and port number.
This command can be launched from a task scheduler, while Windows is logged-off.
Example
c:\Board.sys\BoardClient.Exe main\Sales:NightlyUpdate@BoardMaster:7000

Deleting a Batch Reader procedure


To delete a Batch Reader procedure, open the Batch Reader window, select the procedure name then
click the Delete button.

Drill-Through
Basic concepts
The Drill-Through function allows users to drill from a summary analysis through to data held in a
relational database. This function is useful when users need to investigate data to detail greater than
the lowest level of the InfoCubes.
Consider a typical Board database, the detail level of InfoCubes allows users to drill from summary
reports down to the individual InfoCube cell, for example Day, Product and Customer. If sales of a
particular product are exceptionally high, the user can firstly drill-down to the Customer level, then
select a particular customer that you wish to analyze, then finally drill-through and retrieve the exact
transactions from the accounting ledger for that particular day/product/customer.
118

Chapter 6 Database Design and management


A Drill-Through protocol takes, as an input, the entity members that the user intends to drill from (these
represent the multidimensional space coordinates), and executes an SQL query (limited to those entity
members) on the relational data source. As a result, several records are returned (as the drill-down
returns several detailed rows that add-up to the starting value) as well as additional information from
the transactions table that does not correspond to any entity or InfoCube on the Board database.
For example a Drill-Through protocol on the invoice table can return the invoice number and the
corresponding order number, even though these fields dont exist in the Board database.

Creating a Drill-Through protocol


To create a Drill-Through protocol, open the Data Reader window, go to the Query tab then click on an
empty line in the Drill-Through column. The protocol definition window opens.
Type the protocol name in the Title field.
Click the Fields button and select the entities (the code part) that correspond to fields from
the external table on which you want to drill to. The entities chosen determine the possible
starting points from which users can Drill-Through. For example, a protocol which has
Product and Customer entities allows users to drill from a chosen Customer or a
Customer-Product couple, through to the relational table.

Click the ODBC source drop-down list and select the ODBC source name that links you to the
desired relational database. Note that the ODBC source name (DSN) must be defined on the
computer where BoardServer is running.

After selecting the ODBC source name, the available tables and views are listed in the table,
underneath the ODBC source list. Select the table (or tables) you want to link to then click the
OK button as illustrated.
119

Board 6.1 Manual

After clicking OK, the table fields list appears. Click on a table field corresponding to one of
the selected entity codes, then, keeping the mouse button pressed, drag and drop the cursor
in the cell adjacent to the entity, as illustrated.

Define the Join condition if required (refer to the paragraph Creating an ODBC Data Reader
protocol).
Edit the SQL statement to add other fields to the Drill-Through protocol: click the Edit button,
then click the Copy button and add other table fields after the existing fields needed to link to
entities. Press OK to close this window

120

Chapter 6 Database Design and management

Press the OK button to save the protocol.

A Drill-Through protocol only allows you to drill a report from an entity which is included in the protocol.
To be able to drill from a more aggregate entity you must define an E/R protocol that links the parent
entity to the child entity present in the Drill-Through protocol. For example, to be able to drill-through to
the invoices table by City, starting from an aggregate report, you must define an E/R protocol with City
and Customer entities (we are assuming that the invoices table contains a Customer field and
doesnt include a City field).
The E/R protocols must be defined in the E/R column; to configure a protocol follow the same
procedure described for Drill-Through protocols. Note that drilling-through from an aggregate entity
may return a large number of transactions, therefore it is not advisable to allow drilling-through from
highly aggregated entities.

Rules
Basic concepts
A Rule allows defining an entity member as the result of a formula based on other members of the
same entity. Rules are sets of formulas defined on members of the same entity. A Rule is associated
to an entity and can be used with (or applied to) all InfoCubes structured by that entity.
A typical example is that of a profit & loss statement (P&L) where some P&L lines are calculated from
other lines. Consider the P&L as being an entity in which the P&L lines are its members (as follows):
L01 Gross Sales
L02 Cost of goods sold
L03 Gross Income
L04 % on GS

121

Board 6.1 Manual


L05 Distribution costs
L06 Inventory
L07 Total distribution costs
L08 % on Gross Income
L09 marketing costs
L10 advertising
L11 total mktg costs
L12 %
L13 R&D
L14 IT costs
L15 Gen & Admin
L16 Other Operating Expenses
L17 Total Operating Expenses
L18 %
L23 Net Operating Income
Some lines are calculated from other lines, for example:
L01 Gross income

Gross Sales &endash; cost of goods sold

L02 % on GS

Gross Income / Gross Sales * 100

L05 Total distrib costs

Distribution costs + Inventory

L08 % on Gross Income

Total distrib costs / Gross income * 100

Defining a Rule
Click the Rules icon.

In the rules definition window, type the name of the new Rule (in a white cell) and click the yellow cell
to select the entity on which the rule will be defined.

To access the formulas definition window, click the Manage button.

122

Chapter 6 Database Design and management


The left column shows the entity members list. Type the formula in the right column next to the desired
member, as shown in the illustration.

A formula must start with the = character (equal).


To refer to an entity member, type the code within square brackets.
You can use the standard operators, +, - , * , / and parenthesis .
All functions of the DynaSheet object are supported (refer to Functions reference for details).
For example
=SUM([code1]:[code2]) : adds values in the range code1 to code2
The column offset. This operator allows you to define a formula that refers to a previous
column on the Layout. Normally, Rule formulas are calculations between cells located in the
same column. The block offset allows you to refer to any cell on a previous column. A column
offset is indicated by a dot (character &rdquor;.) prior to the member code. For example, the
formula =[.C01] refers to the cell on row C01 and one column to the left. This function avoids
recursive resolution of formulas rwhich refer to other calculated cells.

Note! The Rule definition window allows managing a maximum of 65000 rows.

Using a rule in a Layout


Rules are usually used in reports, and can be applied to any InfoCube which has as a dimension, the
entity on which the Rule is defined. The Rule calculation occurs on the fly, meaning that the results of
the algorithms are not stored in the database. If the view on the InfoCube is at a summary level, the
rule formulas are calculated after data has been aggregated to the required view level. This allows
you to correctly calculate percentages and other fields that cannot be summed. This approach is
similar to the calculation logic of Column Algorithms.
To apply a Rule in a Layout, click the InfoCube on which you want the Rule to be applied, go to the
Functions tab and select the Rule name.

123

Board 6.1 Manual

The Layout must meet the following requirements


The entity on which the Rule is defined must be set ByRow or ByColumn
It is not possible to set a parent entity of the entity on which the Rule is defined ByRow or
ByColumn.

Using a rule in a DataFlow


Rules can be used in DataFlow procedures. Applying a Rule to an InfoCube in a DataFlow calculates
and stores the formula results in the InfoCube.
To apply a Rule to an InfoCube in a Data Flow procedure:
Create a procedure and define a Dataflow action,
Select the InfoCube on which the Rule is to be applied.
Type a in the Column Algorithm field.

then go to the Functions tab and select the Rule name.

124

Chapter 6 Database Design and management

Note that Rules generally include algorithms or formulas which cannot be aggregated (for example
percentages and ratios) it is therefore uncommon to apply Rules in DataFlow procedures.

Security
Basic concepts
This function allows you to define the database security profiles. There are two types of privileges that
can be set:
privileges on database functions: you can allow or deny access to the database design.
privileges on data access: you can define which InfoCubes can be viewed and how (read-only
or read/write mode) and restrict access to a portion of the InfoCube by defining which entity
members the profile is authorized to view.
To access the security profiles click the Security icon.

The first column of the security window (yellow background) contains the database features and the
database InfoCubes. Each profile is configured in a column. The column is reserved for the
administrators profile.

125

Board 6.1 Manual

Defining a security profile


To define a security profile, open the Security window; go to a blank column and type the profile name
in the Password field (the first row).
To set privileges, click on the cell and select from the available options,
Security system

Access denied : denies access to the database security


profiles window.
Builder : grants access to the database security, allows you to
create or modify security profiles.

Database

Read Only : grants read-only access to the database. Users


with this profile cannot change the database structure, enter
data into InfoCubes or run procedures updating InfoCubes,
entities or relatioships.
Read & Write : grants permission to enter data into InfoCubes
and run update procedures. Denies access to database design
functions.
Builder : grants full rights to update the database structure and
contents.

INFOCUBES LIST

OK : grants access to the InfoCube and, if the Database


privilege is Read&Write (or higher), grants data entry and
updates on the InfoCube.
ReadOnly : grants read-only access to the InfoCube. Note
that if the Database privilege is set to ReadOnly, it is not
necessary to set it to ReadOnly for each InfoCube.
Exclude : denies access to the InfoCube. The InfoCube is
hidden to users.

To restrict access to a sub-set of InfoCubes cells, click on the column header and define the selection
as desired.

Using this function you can define a security profile restricted to an area or to a set of cost centers or
another selection of entity members. When users with this profile run an analysis, they are
automatically restricted to the data within the authorized selection.

126

Chapter 6 Database Design and management

Assigning a security profile to a user account


In a CMS architecture, to associate a security profile to a user account, type the security profile name
(the name in the Password field) in the &rdquor;Default security PW field or in the DatabasePassword list. Refer to the BoardMaster documentation for more details: How to create a User Group.
In a stand-alone architecture, type the security profile name in the Password field of the logon window.

DB Verify &endash; database integrity check and


optimization
The Db Verify function runs an integrity check on the database. If the &rdquor;Optimize&rdquor;
option is enabled, after running the integrity check, an optimization routine is executed. The
optimization may reduce the database size by releasing unused space .
This function should be executed on a regular basis (for example once a day) during the initial
development phases when new Entities, InfoCubes and relationships are added and test data sets are
loaded. For production databases, that are not subject to design changes, it is also good practice to
run this function regularly, for example weekly or monthly.
To run the Db Verify function, click the following icon,

then, enable the Optimize option if desired and click the Go button.

It is strongly recommended that you make a backup copy of the database before running this
function.
The &rdquor;Optimize option completely re-writes the database files therefore, for large databases
comprising of several giga bytes, it may require several minutes or hours to run.

Log file
The database log file is a text file where some database actions are logged. The log files are located
in the directory DatabaseName.bmi\Log . To view the current month log file click the following icon:

The log file records database design changes (the definition of new entities and relationships), the
execution of data reading procedures (Data Reader protocol and number of records loaded) and the
execution of the DB Verify function.
127

Board 6.1 Manual

128

Chapter 7 Capsules
Capsule basic concepts
Prerequisites
Before reading this chapter read Chapter 1 - Welcome on Board, for a general introduction to
Capsules. Refer to Chapter 6 &endash; Database Design to familiarize with multidimensional
database concepts and the specific terminology.

Capsule structure
A Capsule is a collection of screens and procedures. Screens contain objects such as spreadsheets,
charts, and buttons. A screen is linked to a Board database thus all objects and procedures of a
screen access InfoCubes and entities from the same database. A screen can be linked to a one
database only but different screens of the same Capsule can link to different databases.
A Capsule doesnt contain any stored data; it only contains the report definitions (the Layout) and the
definitions of data presentation objects (spreadsheets and charts). Whenever the Capsule is opened,
the data is freshly retrieved from the database.
A Capsule can have several screens; generally a screen contains buttons linking to other screens thus
guiding the user through the various analyses. For better clarity and easier maintenance, it is
recommended to limit the number of screens contained in a Capsule to no more than 30 or 40
screens. It is possible to create jumps from a Capsule to a different one.
A Capsule is a file, usually stored under the \Board\Capsules directory on the computer where
BoardServer is running. The Capsule file is a file having the name of the Capsule and extension cpx.

Examples of Capsule screens


A screen containing a combination of objects: charts, reports, images and text.

A typical Dashboard providing a high level view on some business metrics through graphical
representations.

129

Board 6.1 Manual

A work-flow diagram representing a business process.

Understanding Runtime mode and Design mode


When an end-user is navigating a Capsule, Boards workspace is in runtime mode. While in runtime
mode, the workspace provides a simple environment with few icons providing basic functionality for
navigating through the Capsule screens, printing objects and clearly the multidimensional navigation
features (selections and drill-down).
Design mode allows creating a new capsule or editing an existing one; for example creating a new
screen or adding an object to a screen. While design mode is active it is possible to change the
configuration of objects (reports, charts and other screen objects) and all design icons are visible on
the top toolbar.
To change status from runtime mode to design mode (and vice-versa), press design icon (shown in
the illustration) or press the F4 key of your keyboard.

130

Chapter 7 Capsules

Working with Capsules


The Capsule object model
In order to understand how a Capsule works and how objects interact it is important understanding the
Capsule object model.
A Capsule contains one or more Screens and Procedures.
A screen contains one more objects, one Select, one Dynabar and one Menu. Data presentation
objects (like spreadsheets, charts, alerts&ldots;) contain one or more Layouts defining what InfoCubes
and entities should populate the object. The Select and the Dynabar affect all Layouts present on the
screen.
Procedures contain a set of actions, for example printing an object, running a DataReader or running a
Dataflow. A Procedure is launched from a button object and inherits from the screen the Select and
Dynabar settings.

Opening a Capsule
To open a Capsule, click the navigator tree icon to display the navigator,

then click the desired Capsule name.

The name of the current Capsule is displayed in the text area (located at the bottom of the
Workspace).

Navigating through screens


After opening a Capsule, you can navigate through screens using the Menu. From the Menu you may
go back to the previous screen, go to the Capsule main screen, exit the Capsule or view the screen
list and jump to any desired screen.

131

Board 6.1 Manual

Note that the screen list and the custom links are active only while in runtime mode; design mode
allows to set the custom links by dragging screens from the screen list to the custom links. Different
custom links can be set on each screen.
The screen icon located at the top right (see illustration below) allows to:
go back to the previous screen (with a left-click),
jump to the main Capsule screen (with a right-click),
close the Capsule if clicked when you are on the main Capsule screen.

The navigator tree also allows navigating through screens. Right-click on the Capsule name then
select the desired screen from the list as illustrated.

132

Chapter 7 Capsules

Workspace features
The Workspace provides access to common features while in runtime or design mode.
The DynaBar: allows adding or removing a paging entity. When an entity is set in the DynaBar, you
can select an individual item and refresh the screen data; for example set Month in the DynaBar then
select January 2004 to obtain data from that month only. Refer to the DynaBar paragraph for details.
The Select function: allows defining selection criteria on entities. After selecting some entity members,
the screen is refreshed extracting data limited to the selected items. The Select is functionally similar
to the DynaBar but it allows selecting multiple items. For example you can select a range of months, a
selection of Cities and so on and the screen will be refreshed limited to the chosen items or ranges.
The maximize icon, allows to enlarge an object to full screen size.
The printer icon, allows printing an object.
The Design mode icon allows switching from runtime to design mode and vice-versa.
The Save icon allows saving the changes Capsule.

Note that the Design mode and save icons are displayed only if you have appropriate privileges.

Collaboration functions
Boards collaboration functions
Collaboration functions allow two or more Board users, located remotely, to share real-time navigation
of Capsules through a virtual meeting.
Board provides two types of collaboration functions, the Briefing and the Synchronous
collaboration.
In a Briefing session, there is a presenter and an audience. The presenter can open a Capsule,
navigate through screens working normally, and attendees receive the image of the presenters
computer screen. The presenter uses his BoardClient to run the session. The attendees can join the
session using BoardClient or an Internet browser.
In a Synchronous Collaboration session, all users have the same level of privileges. It is a
collaborative meeting where any user can take control over the Capsule, run a drill-down, make a
selection or click on a capsule screen button to run a procedure. When the first user opens a Capsule,
the same screen will automatically open on other users computers. Once the capsule has been
opened, when a user takes an action, the result of the action is replicated on other users BoardClient

133

Board 6.1 Manual


programs. In a Synchronous Collaboration session all users must be running BoardClient, it is not
possible to run or join a Synchronous collaboration session through an Internet browser.
The Briefing function is based on a screen-capture and transmission technology. When the presenter
starts a session, a background process starts capturing the screen image at fixed intervals. This
screen image is compressed and sent over to the attendees.
The Synchronous Collaboration function is based on the ROAR technology. When a user sends a
message to the BoardMaster (for example the request to open a Capsule or to drill-down on a line),
the result of the action is propagated to all attendees. The context of each user (the Capsule screen
and the selection) is therefore kept synchronized allowing them to share control over the Capsule.
Provided that the users computers are equipped with a microphone and speakers the Synchronous
Collaboration function also supports audio transmission.

Presenting a Briefing
To present a Briefing, click the collaboration icon then choose the Briefing / as Presenter option.

A logon window prompting the meeting code will appear

The meeting code is a password that the as a presenter you should communicate to all attendees in
order to attend the Briefing session.
Type a meeting code then click the Connect as Presenter button.
An icon in the bottom toolbar indicates you are projecting your screen image. Place the mouse over
the icon to view the list of attendees.

Note that while you are presenting, your mouse pointer is not part of the projected image. When you
open a capsule, a red arrow pointer automatically appears in the bottom toolbar. Click on the icon then
drag and drop it on the Capsule screen onto the object you wish to point at.

To end your Briefing session, press F4 keyboard key to view the toolbar, then go to the Briefing logon
window (click the Briefing / as Presenter icon) and click the Disconnect button as illustrated.

134

Chapter 7 Capsules

Attending a Briefing
It is possible to attend a Briefing using the BoardClient program or an Internet browser.
To attend a Briefing using an Internet browser, click the Briefing icon, as illustrated then when
prompted type the Briefing access code provided by the presenter.

A web page containing a Java applet will display the briefing images. The first time you access a
briefing, you will have to install the Java applet, follow your Internet browsers instructions.
Note that the Java Virtual Machine (JVM) is not included in the default installation of
some operating systems (for example some Microsoft XP configurations do not include
JVM). You must install JVM 1.2 in order to run the briefing applet.

To attend a Briefing session using BoardClient, press the F4 keyboard key to view the top toolbar,
click the collaboration icon then choose the Briefing / as attendee option.

A logon window prompting the meeting access code will appear. Type the meeting code provided by
the presenter, then click the Connect as Attendee button.
A white screen with three icons in the top right corner will appear and after a few seconds you will start
viewing the meeting.

135

Board 6.1 Manual

The red arrow is a shared cursor that attendees can use.


To exit the Briefing session, click the red x icon.
Click the printer icon if you wish to capture and print an image.

Running a Synchronous Collaborative session


To start or join a Synchronous Collaboration session, press the F4 keyboard key to view the top
toolbar, click the collaboration icon then choose the Synchronous Collaboration icon.

The following window will be displayed.

136

Chapter 7 Capsules

Type the meeting access code in the Meeting Code field, select the BoardMaster address from the
address list box then click the Connect button to start the session.
An icon indicates a session is active and the connected users.

In a Synchronous Collaboration meeting, you can enable voice transmission by configuring the
following parameters:
Drop-down list

Select the microphone device from the drop-down list.


Generally, Board automatically detects the installed microphone
device but it might be necessary to change the automatic
selection when several devices are found.

Blocks

Determines the size of data blocks (TCPIP packets) used for


transmitting voice. The value indicates the size in milliseconds
of voice sampling. Set to 500 when connecting through a WAN
or the Internet. Choose 250 when using fast and reliable WAN
connections. Set 125 for 100 Mbps LAN connections.
The default value of 500 minimizes data traffic but may produce
micro-interruptions during the conversation.

Compression

Enables a packets compression algorithm. This option must be


disabled when the value of the parameter Blocks is set to 125
as the compression and de-compression overhead may
outweigh the gain due to transferring smaller packets.

Microphone Locking

When this option is enabled, the microphone is disabled while a


voice message is being received (as in a 2-way radio, a user
137

Board 6.1 Manual


may either speak or listen, when one speaks others can only
receive). This feature avoids resonance between the speakers
and the microphone.
Volume and Peak Cursors

These two sliding cursors allow you to tune the noise level
threshold that initiates the voice transmission. Voice is
transmitted whenever the noise level in decibels (shown in the
cell to the right of the Volume cursor) is higher than the
threshold set by the Peak cursor. The values must be tuned
depending on the room noise level and the microphone
sensitivity.
To fine tune Volume and Peak values: set the Volume level to
. Read the dB noise level in the room then set the Peak value
to 5-10 dB higher.

Fast Commuting

Voice transmission stops when the noise level is lower than the
Peak threshold. By disabling Fast Commuting, the
transmission continues for another sampling period, resulting in
a more fluent conversation. Disabling this option is
recommended when the speaker is primarily a single person
and other attendees do not speak frequently.

To start audio transmission, click the voice check-box. It is recommended using headsets when
enabling the voice transmission. Using the speakers and microphone commonly integrated on laptop
computers can produce echoes or resonance since the two devices are located relatively close one
another.
Before using the voice transmission, verify the connection quality to the BoardMaster using the Speed
Test; the value of the &rdquor;Net indicator must be greater or equal to 100%.

The Workspaces DynaSheet and DynaWrite


The Workspace environment provides two clipboard areas, a DynaSheet object (a spreadsheet
environment) and a DynaWrite object (a word processing environment). These objects are available
and throughout the entire Board session.
To access the Workspace DynaSheet and DynaWrite objects: press the F4 keyboard key to view the
top toolbar then click the desired icon as illustrated.

The Select
What is the Select function
The Select function defines the parts (a slice) of the InfoCube (or InfoCubes) to retrieve data from. A
selection on entity members reduces data extracted from the database to the chosen items only. For
example, by selecting the city of San Diego from the City entity, the data extracted from InfoCubes
will be limited to San Diego only. After making a selection, all screen objects showing data extracted
from InfoCubes are refreshed.

138

Chapter 7 Capsules
The selection is a property of the screen; when a selection is made, it applies to all screen objects,
including procedures launched from that screen.
When a selection is made on an entity part of a hierarchy it is propagates to all entities of the
hierarchy. For example by selecting the city of San Diego from the City entity, immediately the
selection is propagated to parent entities, for example the Sate of California and down to less
aggregated entities, for example all Customers of San Diego.
To access the select function, click the Select icon or the Tree icon.

The Tree icon displays the hierarchies representing the bottom-up relationships (excluding the time
hierarchy) and allows making selections on entities from a hierarchy only. The Select icon displays the
list of all entities of the database and allows making a selection on any entity.
In the Select window some entities may have a gray background; access to these entities has been
disabled by the database administrator (the User View option has been disabled from the Entity
window).

Making a selection
To make a selection,
Open the Select window by clicking on the Select icon or the Tree icon,
Click on the chosen entity name, a window with the entity members will appear.
Click on the desired entity members. To select a set of contiguous items, click and drag the
mouse down while keeping the button pressed.
Then click the Select button to select the highlighted items or click the Exclude button to
select all other items.

When a selection is made the Selected column indicated the number of selected items. The MaxNr
column indicates the total number of entity occurrences.

Resetting a selection
To reset a selection,
Open the Select window,
139

Board 6.1 Manual


Click on the Reset button on the left of the entity name

To reset a selection from the Tree window, drag and drop the reset icon onto the desired entity.
Note that resetting the selection on an entity of a hierarchy automatically resets selections for all
entities of the hierarchy. For example, if you select the July-2004 from the Month entity, the selection
propagates to year 2004 from the Year entity. Resetting the selection on the Month entity to all
existing months consequently resets the selection to all years of the Year entity.

Adding entity members to a selection


It is possible to add one or more entity members to a previously selected set of members.
Open the select window,
Click on the cell in the Max.Nr. column
A window with the entire list of entity members will be displayed. If a selection was previously
defined on that same entity, the currently selected items are highlighted.
You can add new items to the selection by clicking on the desired entity members.

This feature is not available on entities highlighted with a yellow background (non cached entities).
140

Chapter 7 Capsules

The Find function


The find function allows finding an occurrence containing a specified text.
Open the select window,
Click the desired entity to open the entity members list,
Type the test to search in the code or description fields as desired,
Click Find. The first item containing the specified text will be highlighted. Click again to find
the next item.

Note that whenever you click Find, the occurrences previously selected are reset.

The Keep function


The Keep function allows to select all occurrences containing a given text.
Open the select window,
Click the desired entity to open the entity members list,
Type the test to search in the code or description fields as desired and click the Keep button.
All occurrences containing the given text will be selected.

141

Board 6.1 Manual

The Focus function


The focus function applies to entities part of a hierarchy: it allows resetting the selection on the tree
while keeping the occurrences selected on the chosen entity.
For example, suppose you have selected the San Diego from the City entity. As a consequence of
the hierarchy, the State entity will have a selection on California. Applying the Focus function on the
state California first resets the selection on the hierarchy to all items then applies a selection on
California. All cities from California will be selected.
To apply the Focus function,
Open the Select window,
Click on the Focus button on the left of the entity name

To use the focus function from the Tree window, drag and drop the focus icon onto the desired entity.

The time entities scroll buttons


For time entities only, you can change a selection using scroll buttons.

The following buttons allow shifting the selection.


Click the right arrow to shift the current selection one period forward. For example if the currently
selected months are January to March 2004, clicking the right arrow will select February to April 2004.
Click the left arrow to shift the current selection one period backwards.

The following buttons allow increasing or reducing the selected range.


Click the right arrow to increase the currently selected range by one period. For example if the
currently selected months are January to March 2004, clicking the right arrow will select January to
April 2004.
Click the left arrow to reduce the range by one period.

The DynaBar
What is the DynaBar
The DynaBar allows to set paging criteria on a screen. The DynaBar can contain one or more entities
and like the Select function allows selecting entity members. When a specific occurrence is chosen,
the screen data is refreshed limiting the extraction to the selected occurrence only.
142

Chapter 7 Capsules
The DynaBar is a property of the screen; when a selection is made, it applies to all screen objects,
including procedures launched from that screen. The DynaBar configuration is saved when saving the
capsule.
The DynaBar object is located at the top of the screen area as show in the following illustration.

Configuring the DynaBar


To add an entity to the DynaBar, right click on the DynaBar then drag and drop the desired entities to
the right window as illustrated.

When adding two entities hierarchically related (child parent), it is good practice to add the parent
entity first then the child entity so that the order of entities goes right to left from the most aggregate
entities to the less aggregate. For example if you wish to set the Month and Year entities in the
DynaBar, include the Year first then Month.
To remove an entity from the DynaBar, drag and drop the entity to the trash bin as illustrated.

143

Board 6.1 Manual

The DynaBar can be configured at runtime and design mode. Changes made while in runtime mode
are not saved. The DynaBar configuration is saved when saving the screen.
Click the No All option to removes from the occurrences list the ALL option that corresponds to
selecting all occurrences. For example, setting the City entity in the DynaBar, it is possible to select an
individual city or the ALL cities (giving the grand total on all cities). By enabling No ALL option the user
must select a single city and the total will not be available.

Using the DynaBar


To select an occurrence from an entity in the DynaBar, click on the desired entity a drop-down list will
show the entity occurrences. Click the desired item. When a selection is made, the screen is
refreshed; data is re-extracted from the database with a restriction to the selected items.
To view the name of an entity in the DynaBar, place the move over the entity; a tool-tip with the entity
name will appear.
To reset all selections made on entities in the DynaBar, click the Home button.

To remove all entities from the DynaBar, click the clear button.

The DynaBar does not allow selecting multiple occurrences.

DynaBar synchronization across screens


When you navigate from one screen to another, the common entities of the two screens DynaBar
synchronize automatically. Suppose you are on a screen having Month and State entities in the
DynaBar. You make a selection on the DynaBar, for example July2004 and California, then you go
144

Chapter 7 Capsules
to another screen having Month, State and Product in the DynaBar: the Month and State entities
will automatically set to July2004 and California, the selection made on the prior screen.

Drill-down and drill-through


How to drill-down
To drill-down on a report row, right-click on the row header then select the entity to drill-down to. If a
drill-down path was saved on the report, you can left click on the row header to drill-down.

A drill-down floating window opens. It is possible drill-down from a drill-down window, nesting levels
down to the lowest detail level.
Click the Up button of a drill-down window to close it. You can drill-down on other rows using the
same drill path by clicking the row header with the left mouse button.
Drill-down paths can be saved for reuse. To save a drill-down path, save the screen. To reuse a saved
drill-path, left click on the report row header.

Note! it is possible to change the Layout of a drill-down window; right click to access the
Layout. Changes to the Layout of a drill-down window are saved when saving the capsule
screen.

It is possible to drill-down on reports allowing data-entry and the drill-down window will also allow dataentry. The Save and Undo data-entry buttons of the drill-down window are il the upper left corner as
illustrated.

145

Board 6.1 Manual

How to drill-through
To drill-through on a report row: right-click on the row header, click the Query list button, select the
desired drill-through protocol and click the Go button. To avoid retrieving a large number of
transactions from the source system, it is recommended using the drill-down function to reach the
lowest detail level available in the Board database and then run the drill-through from that level.

Printing from a drill-down window


To print a drill-down report, click the printer icon as illustrated.

Note! the printer icon is not available on drill-down windows allowing data-entry.

146

Chapter 7 Capsules

Exporting data to Microsoft Excel


Pressing the F7 keyboard key from a Capsule screen (or from a drill-down window) exports the data to
a DynaSheet session or to Microsoft Excel. The data from each screen object is exported to a different
sheet of a Microsoft Excel workbook. Data is exported in a table format only, charts and other
graphical objects are not exported.
If you are using DynaSheet, you can save the workbook to a MS-Excel file (with extension XLS) using
the menu option File/Save as.
If you press the F7 key while keeping the shift key down, the data is exported directly to a file without
opening the spreadsheet program. A Microsoft Excel file is created in your Board.Loc\Desktop
directory.
DynaSheet and Microsoft Excel version 7 can hold up to 65536 rows in a sheet. Board reports having
more than 65000 rows it will be truncated when exported to MS Excel format.

Capsules Management
Copying and Deleting Capsules
To copy a Capsule, open the navigator tree, right-click on the Capsule then drag and drop the mouse
pointer to the desired folder. You will be prompted the new Capsule name.

To delete a Capsule, drag and drop it to the Recycle bin found on the navigator tree. Note that
deleted Capsules files are not physically deleted from the server, they are moved to the
Board\Recycle directory.

Copying or deleting Capsule screens or Procedures


To copy a Capsule screen or a procedure,
Open the navigator tree then right-click on the Capsule to view the screens and procedures
lists.
Right-click on the desired screen name or the procedure name
Drag and drop the mouse pointer to the Capsule to copy it to.

147

Board 6.1 Manual

To delete a Capsule screen or a procedure, drag and drop it from the screens list to the Recycle bin
found on the navigator tree.

Opening a capsule from command line


To open a Capsule use the following command line:
\BoardClient.exe [FolderAlias]\Capsule@MasterAddress:Port
The BoardMaster address and port number can be replaced with the connection alias.
For example, to open a Capsule named Budgeting found in the Main folder on a BoardMaster
connection named MyMaster, type
BoardClient.exe Main\Budgeting@MyMaster
Note that using this command line you can create a short-cut icon on a users desktop that opens
BoardClient, automatically connects to the BoardMaster and opens the specified Capsule. This is a
common approach for deploying structured applications to non-experienced users.

Scheduling Capsule procedures


To launch a Capsule procedure from a task scheduler, use the same command for opening a Capsule
\BoardClient.exe [FolderAlias]\Capsule@MasterAddress:Port
The Capsule main screen must contain a Button object linked to the procedure to launch and the
button property Auto go must be enabled.
148

Chapter 7 Capsules
Optionally if the procedure only contains actions that take place on the server side (for example a
sequence of Data Reader protocols and DataFlow calculations) then it is possible to add the
parameter unattended at the end of the command line so that the BoardClient triggers the
procedure on the server side and closes immediately while the procedure keeps running on the
BoardServer.
\BoardClient.exe [Folder]\Capsule@MasterAddr:Port unattended
To create a Capsule for batch processing, for example a Capsule that runs the database update
procedure,
Create a Capsule with a single screen,
Create the Procedure (sequence of Data Reader protocols and other actions)
Place a button object on the capsule main screen, link the procedure to the button and enable
the Auto go button property.
Note that it is possible to launch a Board BatchReader from a command line, refer to the BatchReader
documentation for details.

Capsules Design
Capsule design concepts and guidelines
Capsules can address a wide range of purposes. For example, a Capsule could be
An unstructured environment for ad-hoc analysis;
A highly structured application guiding users rigidly throughout a business process such
as a budgeting and forecasting application.
An EIS (Executive Information System) application providing dashboards and executive
reports.
A presentation analyzing or projecting a marketing campaign results, a product launch or
other business processes.
A recurrent analyses booklet.
A set of database maintenance tasks
&ldots;
Depending on the Capsules purpose and the type of users the Capsule is meant for, take into
consideration the following guidelines,
Organize you Capsules into folders: you can create folders visible to all users, folders visible
to user groups and private folders.
The Capsules main screen should explain the Capsules purpose and contents. Put some
introductory text and a diagram illustrating how the Capsule is organized.
Limit the number of Capsule screens to a reasonable number that allows users to well
understand and know the content of each screen. This simplifies navigation and
maintenance. A single Capsule should not have more than 35 to 40 screens. If more
screens are needed, consider creating a new Capsule (it is possible to create a navigation
going from a Capsule to another).
Avoid creating similar screens having very slight differences. For example, two identical
screens in terms or reports only having a different selection. This approach would cause a
proliferation of screens; all users must know how to use the Select, the DynaBar and the
drill-down features.
149

Board 6.1 Manual

When creating screens consider the following guidelines,


A screen should load within a few seconds. Limit the number of pictures and logos and limit
the number of Layout objects (extracting data from the database). While developing a
screen, place the mouse over the DynaBar to view the screen size.
Place more than one report (DataView object) per screen. A screen having a single report
does is not fully benefiting from Boards analytical features. Use more than one report object
and use the Master function on one DataView to drive other objects.
Example of how to create a screen

Understanding Capsules caching


The first time a Capsule is opened, the Capsules meta-data is cached to the local working directory
(the \Board.Loc directory). A synchronization method keeps the local cache synchronized with the
Capsule on the server.
The cached data consists of the meta-data that defines the Capsule structure and screens design.
When the cache file is created or updated, all Layout definitions, procedure definitions, and design
definitions of the Capsules first screen are transferred to the local cache. Subsequently, every time
the user navigates to a given screen, the screens definition is transferred. The actual data contained
in reports, charts or other objects of the chart, is never cached locally.
Opening a Capsule for the first time, or opening a Capsule that was updated, requires the creation (or
re-creation) of the cache. This cache update may cause a delay in visualizing the first screen. The
cache is a file has the Capsule name and extension cpz. Its size is affected by pictures and logos
embedded into the screens and by the number of screens, Layouts and procedures contained in the
Capsule. The Capsule cache size should not exceed a few mega-bytes when users connect to the
BoardMaster from a LAN and lesser than one mega-byte when users connect through a WAN or the
Internet.
150

Chapter 7 Capsules

Creating a new Capsule


To create a new Capsule, click the New Capsule icon as illustrated.

Type the Capsule name and select the folder where to save the Capsule.

Alternatively you can start developing your screen on the Workspace, then when you press the Save
button you will be prompted the Capsule name and folder.
Note! When you create the first screen of a Capsule you must link it to a database by clicking the
desired database from the navigator tree list as illustrated.

You can now start developping your Capsule screen by adding objects from the toolbox as desired.

Protecting a Capsule
You can restrict access to a Capsule design by setting a password. Open the Screen property window
and click the Capsule Locking icon and type a password or a list of passwords.
The Capsule Locking icon is show in the following illustration

151

Board 6.1 Manual

When a Capsule is password protected, the navigator does allow viewing the screens and procedures
by right clicking on the Capsule name.

Screens
About screens
Screens are part of a Capsule. The screen is the working area where you can place objects from the
toolbox. A screen is usually split into vertical and horizontal lines, forming panes (rectangle areas)
each one containing an object from the toolbox. A screen can also contain floating panes that allow
creating areas with objects overlapping.

Fundamental properties of the screen are


152

Chapter 7 Capsules
The Board database. A screen is linked to one Board database. All objects on the screen
present data extracted from the same database. The name of the linked database is usually
visible in the message area in the bottom toolbar (this text area might be used for comments
or messages).
The DynaBar. A screen can have one DynaBar configuration and the DynaBar applies to all
screen objects.
The Select. A screen can have one Select only, applying to all screen objects.
The Menu. Each screen may have a different Menu, linking to other screens.
Note! When you create the first screen of a Capsule you must link it to a database by clicking the
desired database from the navigator tree list as illustrated.

Screen properties
To access the screen properties box, click the Screen Properties found in the top toolbar.

The following window is displayed.

153

Board 6.1 Manual

Title

Type the screen name.

First Screen

Sets the Capsule first screen.

ScreenSize

The H (for horizontal) and V (for vertical) parameters allow incrementing


the screen area. By default the Capsule screen size equals the full
Windows screen size. When the screen height or width is greater than 1
(meaning 100% of the screen size) scroll-bar will automatically appear.

FontSize

Defines the default font size of the DataView and DynaSheet objects.

BackColor

Defines the screen background color. Click one of the available colors
or click the custom color icon.

ShowLines

While in runtime mode, displays the vertical and horizontal lines dividing
the screen into panes. The width of the dividing lines can be adjusted
using the cursor object. The Lines 3D option creates a 3D effect on
lines. When disabled, the lines width can be set to zero.

Comment

Text area. The text will be displayed at runtime in the messages area
located in the bottom of the toolbar
.

Capsule Locking

Allows setting a password to restrict access to design mode. Note that


this setting applies to all Capsule screens, not just the current screen.
Note that when a Capsule is password protected, the navigator does
allow viewing the screens and procedures list by right clicking on the
Capsule name.

Hide Screen List

Hides the screen list from the Menu object, while in runtime mode. Note
that this setting applies to all Capsule screens, not just the current
screen.

Creating a screen
To create a new screen, click the new screen icon located in the toolbar.

To create a screen from an existing one, use the Save as function as illustrated

154

Chapter 7 Capsules

When you add a screen to an existing Capsule, the new screen is automatically linked to the same
database of the previous screen. You may change the database by selecting it from the navigator
database list as illustrated.

Saving a screen
To save a screen, click the Save screen icon located in the toolbar.

After saving a screen from design mode, the Save screen icon remains available in runtime mode as
well in the bottom toolbar.

Deleting a screen
To delete a screen, open the screen then click the Delete button found in the top toolbar as illustrated.

You can also delete a screen using the navigator tree: right click on the Capsule name to view the
screen list then drag and drop the screen to the recycle bin located on the navigator. Refer to
paragraph Copying and Deleting capsule screens and procedures for more details.

Creating screen panes


To define a screen pane, click on the screen area then while keeping the mouse button pressed drag
the mouse horizontally or vertically for a few inches then release the mouse button. You can adjust the
155

Board 6.1 Manual


size of panes by placing the mouse over a line (the mouse cursor will change shape) and moving the
line across.
To define a floating pane, click then drag the mouse in a diagonal.
To adjust size of a floating pane, place the mouse over the bottom right corner (the mouse pointer will
change shape) then click and resize the window as desired.
To move a floating pane, place the mouse over the top left corner (the mouse will change shape) then
click and move the window.

Adding and removing objects on a screen


The Toolbox contains all objects that can used be placed in a screen pane. To display the Toolbox,
click the Toolbox icon found in the top toolbar.

To add an object, click on the desired object and while keeping the mouse button pressed, drag and
drop the object to the desired pane.

To remove an object, click the Remove button of the ToolBox then drag and drop it onto the object to
remove.
Click the Clear all button if you wish to remove all objects from the screen.

156

Chapter 7 Capsules
The tool box objects

Defining the Menu


To define the Menu object, click on the Menu icon then click on a screen name and drag the mouse
across to one of the available menu options.

Screen size

157

Board 6.1 Manual


When designing a screen, it is important knowing the amount of data that needs to be transferred from
the server to the BoardClient for creating and populating the screen. This parameter is particularly
important when you need to optimize a Capsule for users accessing from remote locations (through a
WAN an Intranet or the Internet).
While in design mode, place the mouse over the DynaBar, a tool tip appear next to the mouse pointer
will indicate the screen size in kilo-bytes. Two values are provided, a Screen size and a Layout size.
The screen size indicates the size of images and objects definitions. The Layout indicates the volume
of resulting from executing the Layouts defined on the screen and needed to populate objects (data
from InfoCubes and entities).

The Undo function


Clicking the Undo icon located on the top toolbar restores the Capsule to when it was last saved. All
Changes made from the last time the Capsule was saved are discarded.

The Layout object


About the Layout
The Layout object defines a query on the multidimensional database. It specifies what (InfoCubes and
calculated fields) and how (the aggregation level) data should be retrieved from the Board database. A
Layout belongs to a data-presentation object: the data resulting from running the Layout (i.e. executing
the multidimensional query) is displayed by a data-presentation object such as a spreadsheet, a chart,
a cockpit object and others.
The objects having a Layout are: DataView, DynaSheet, Graph, GDE, Mapping, Cockpit, Alert,
Flowchart and STO.
A Layout is made of three fundamental parts,
The Data tab: where the InfoCubes and the calculated columns are set.
The Axes tab: where entities to display in rows and columns are set.
The Filters tab: where sorting and filtering conditions are defined.
Note that when a Layout is executed, the user's security selection, the screen selection and the
DynaBar selection are first applied to the Layout as data filters and then the data is extracted from the
database.

Defining a Layout

158

Chapter 7 Capsules
This paragraph illustrated the main steps to define a Layout. Each step is examined in greater detail
later in this chapter.
Right click on the desired object to access its Layout configuration. For the DataView object
the Layout window opens immediately, for other objects select the Layout option from the
properties menu window.
The Data tab shows the columns list. To add a column, click on a line as illustrated.

Select the desired InfoCube from the Data selection list or other type a formula in the
Column algorithm field if you wish to define a calculated column or select and entity from the
Entities & relationships list. Refer to the Data settings paragraph for more details.

159

Board 6.1 Manual

Click on the next row and define other InfoCubes or calculated columns as desired.

Click on the Axes tab to select what entities should be set in rows and columns. Drag and
drop the entities from the left list to the By Row and By Column fields as desired.

160

Chapter 7 Capsules

Optionally, click on the Filters tab and set sorting and filtering options as desired. Drag and
drop an InfoCube to the Sort by or to the Filter A or Filter B fields.

Optionally, click the Format tab button to define fonts, color and other format options (The
Format properties apply to the DataView object only).

161

Board 6.1 Manual


Click the OK button to run the Layout and wait the result.
Save the Capsule if you wish to save your new Layout definition.

Setting Data
The Data tab defines the Layout columns. A column may contain an InfoCube, a formula or an entity.
For each column you may apply optional settings, for example type the column heading, define the
display format, define alerts (i.e. red and green conditional coloring) or apply a statistical function and
other options detailed hereafter.
Layout columns, also referred to as data blocks, are identified by a letter ranging from a to z, found in
the row header.

To copy an existing column, right-click on the line to copy then drag and drop it to the desired new
line. To clear a column, right click the row to clear then drag and drop it to the bin.
To set a column, click on a line, the configuration window will open, then set one of the four data fields
as illustrated.

Fields on the Setup tab are described hereafter.

Data Selection
162

Chapter 7 Capsules
Click and select an InfoCube from the list. The drop-down list shows all InfoCubes on which the user
has read-only or read/write privileges.

Column Algorithm
Type a formula using row letters to reference other columns. For example to divide column a by
column b and multiply by 100 type the formula a/b*100.
A formula is a string containing numbers, operators, functions and references to other columns
(through the letter identifying the row).
The following table lists the operators.
Type

Operator

Description
EXAMPLE

Arithmetic

Addition

a+b

Subtraction

a-b

Division

a/b

Multiplication

a*b

Percentage

a/b% is equivalent to a/b*100


a*(1+15%)

Text

Exponentiation

a^2 is equal to a*a

&

Concatenation

a&b concatenated the two columns.


a&myText concatenates myText at
the end of the string contained in
column a.
When using this operator, the result of
the algorithm is a text string therefore
you must select the option Text from the
data type list box.

Comparison

Equal to

a=b

>

Greater than

a>b

<

Less than

a<b

>=

Greater than ora>=b


equal to

<=

Less
than
equal to

ora<=b

<>

Not equal to

a<>b

The following table lists the most common functions. A more comprehensive list of supported functions
can be found in Appendix A.
ABS(number )
Returns the absolute value of a number.
Example
ABS(a-b)

163

Board 6.1 Manual

AND( logical conditions list)


Returns True if all conditions are True; returns False if at least one condition
evaluates to false.
Examples
AND(a>0,b<100) returns true if the value in column a is greater than zero and
the value in column b is lesser than 100.
OR( logical conditions list)
Returns True if at least one condition is True; returns False if all conditions
evaluate to False.
OR(a>0,b<100) returns true if the value in column a is greater than zero or if the
value in column b is lesser than 100.
IF (condition, true_value, false_value )
condition any logical expression
true_value is the value to return if the condition is true and false_value if false.
Examples
if((a*b)>0,a,c)
if(a>100,Greater, &rdquor;Less)
if(and(a>0,b>0),a*b,0)
Today( )
Returns the current date.
Examples
today()-a
if a is a date InfoCube, returns the number of days between the
date in column a and the current date. For example, if a is a date InfoCube storing
delivery dates, you can calculate the number of days between the current date and
the delivery date.
today()+a
if a is a numeric InfoCube, returns the date corresponding to the
current date plus the number of days specified in column a. For example, if a is
and InfoCube storing the delivery lead-time, you can calculate the date of delivery
adding the lead-time to the current date.
dt(column)
Returns the column total. To use this function, the Layout must have an entity set
by row.
a/dt(a)*100
rt(column)
Returns the row total. To use this function, the Layout must have an entity set by
column.
Example
a/rt(a)*100
gt(column)
Returns the grand-total. To use this function, the Layout must have an entity set by
row and by column.
164

Chapter 7 Capsules

Exampe
a/gt(a)*100

Note! the above examples use the comma as list separator. The list separator character
may vary depending on your computers settings. The most common characters used are
the comma and the semicolon. The list separator is defined in your computers Control
Panel / Regional settings window.

An algorithm may return different data types. By default, it is assumed that an algorithm returns a
number, however the data type list box allows to select several data types: Numeric, Text, Date and
Picture. When the formula returns a text or a date select the data type option accordingly.

The Picture option, applicable to the DataView object only, allows displaying images the spreadsheet
cells. Define a formula that returns the name of a picture file then select the Picture option. The image
files must be located in the directory \Board\Images\Pictures. The supported file formats are
JPG, GIF, ICO, BMP (the bitmap format is not recommended as it generates significant network traffic
in comparison to other formats).

Ranking function
Select one of the available pre-built functions. Ranking functions are evaluated on the column prior to
where it is defined therefore you cannot set a ranking function in column a. To use a ranking function,
the layout must have one entity set by row.
These functions allow to quickly create 80/20 analysis.

The ranking functions are:


Vertical%

Returns the percentage of the current row value divided by the


column total.

Cumulated Vertical%

Cumulates the Vertical% value from top-down. This function


should be applied on sorted reports.

Counter

Row counter.
165

Board 6.1 Manual

Cumulated Counter %

Returns the row number divided by the total number of rows as


a percentage.

Cumulated Value

Cumulates values from top-down.

80-95 Ranking

Creates three categories based on the cumulated vertical %


value: the value is less than 80%, it returns 1, if it is between
80% and 95% it returns 2, if it is over 95%, it returns 3.
This function should be applied on sorted reports.

Entities & relationships


Allows selecting an entity to display. If the selected entity is a parent of the entity defined by row, then
the entity occurrence is returned. If the chosen entity is less aggregate than the entity or not related to
the entity by row, then it returns a count of occurrences.
For example, lets consider a Layout where the entity City has been set by row. Selecting the State
entity will return the name of the corresponding state. Selecting the Customer entity (a less aggregate
entity; City is a parent of Customer) will return the count of customers in each city found by analyzing
the relationships.
The drop-down list to the right, allows selecting what part of the entity should be displayed, code,
description or both.

Heading
Type the column heading. If omitted, the InfoCube name of the formula will be used as heading.

Decimal digits
Set the number of decimal places to display. Applies to numeric fields only.

Divide By
Divides the InfoCube values by the specified number. This option can be applied only on numeric
InfoCubes; it cannot be applied to column algorithms.

Summary algorithm
Sets how to calculate row and column totals.
When an InfoCube is selected, the options are:
166

Chapter 7 Capsules
Total: the totals are calculated by adding values.
No total: the totals are disabled.
When a Column algorithm is defined, the options are:
Total: the totals are calculated by adding values.
Calculated: the defined formula is re-applied on the totals cells of the blocks referenced in
the formula. This option must be selected for example on a percentage calculation or other
formulas involving divisions.

Note! The number of iterations for resolving recursive formulas is of three. There can be
cases of reports having a calculated column based on another calculated column where
the summary algorithm of the two columns are different (one being set to
&rdquor;Calculated and the other to &rdquor;Total) showing an incorrect total when its
evaluation requires a higher number of iterations.

Row totals
Allows disabling the row totals. This option applies only when the Layout has at least one entity set by
column.

Allow Changes
Click this option to enable data-entry on the column. Note that activating this option alone is not
sufficient to enable data entry; other conditions must be met:
The user must have an appropriate Board license and security privileges allowing write-back.
For text and date InfoCubes data-entry is supported only at physical level not at on
aggregate views.
Data-entry is not permitted on MXC InfoCubes.

167

Board 6.1 Manual


Time functions (such as Previous Year, Yearly Cumulated Valued and any other feature
found in the Functions tab) and reference functions (such as Refer to, Detail by and any
function found on the reference tab) cannot be defined on the data column.
If the Layout view is an aggregate view on the data-entry InfoCube, the DS&S (logical dataentry) feature must be enabled.
The Save/Undo mode option allows users to key-in values in several cells and then click the Save
button (located in the bottom toolbar) to actually save the values to the InfoCube. When a value is
keyed-in, all linked cells (the totals or calculated cells), are immediately recalculated and changed
cells are highlighted in with different font color.
When Save/Undo mode is disabled, the keyed-in values are immediately saved to the InfoCube. The
Save/Undo mode can be disabled only when data in entered at physical level and only when the
DataView object is used. When Save/Undo is disabled, totals and other linked cells are not
recalculated as the user enters a new value, this can be useful on large reports. A Refresh button
found in the bottom toolbar allows forcing the re-evaluation of all spreadsheet cells.

Hide zeros
When enabled, cells having value zero are displayed blank. This option applies to the DataView and
DynaSheet objects only.

Hide this block


Enable to hide the data column.

Functions tab
The functions tab provides common time functions that can be applied to numerical InfoCubes.

168

Prev.Year

Previous year function: returns the previous year data for the
currently selected periods. For example if the current screen
selection is May 2004 to July 2004, the previous year function
will return the data for May 2003 to July 2003.

Value

Doesnt apply any function

Chapter 7 Capsules

Previous Period Value

Returns data from the previous period, according to what the


selected period is. For example if the current selection is on
Month July 2004 and August 2004, it returns data for June
2004 and July 2004. If the current selection is on week 15
then it returns data from week 14.

Previous Year Value

Previous year function, see above the Prev.Year option.

Yearly Cumulated Value

Returns the cumulated value from the first period of the year.
For example, when applied to a monthly InfoCube, it returns
the cumulated from January of the currently selected year;
when applied to a daily InfoCube it returns the cumulated
value from the first day of the year.
Fiscal Year. The yearly cumulated function can be combined
with the Fiscal Year option to return the cumulated value from
the first period of the currently selected fiscal year. This option
is available only if the Fiscal year is defined in the Board
database time range definition (refer to the Database Design
chapter).

Yearly Moving Total

Returns the value cumulated on whole year range ending on


the current period; i.e. one year rolling total. For example if
the current selection is on month July 2004, this function
returns the cumulated value from August 2003 to July 2004.
Note! This function can be combined with the Cycle option to
create different rolling periods. The cycle value defines the
number of periods to cumulate. For example, on a monthly
InfoCube, set the cycle to 3 to obtain a three-month rolling
total or set to 6 to obtain a six months rolling total. On a daily
InfoCube, set the cycle to 90 to obtain rolling total on the past
90 days.

Yearly Moving Average

Returns the average period value of the Yearly Moving Total


function. For example, applied to a monthly InfoCube, this
function returns the Yearly Moving Total value divided by 12.
Note! This function can be combined with the Cycle option to
create different rolling periods on which the average should
be calculated. For example, on a monthly InfoCube, setting
the cycle to 3 returns the cumulated value on the past three
months divided by three, i.e. the average on a three month
rolling range.

Trend

Applies a linear function to the InfoCube and projects values


to future periods (the projection is a straight line when plotted
on a chart). It should be applied to InfoCubes having at least
one year of historical data. The statistical model used to
calculate the Trend function is based on a Moving Average
model; refer to Board Forecasting models for mode details.

Forecast

Applies a statistical forecasting function to the InfoCube and


projects values to future periods. This function estimates the
trend component and the seasonal component on the
InfoCube historical data and returns a forecast that takes into
169

Board 6.1 Manual


account trend and seasonality. It should be applied to
InfoCubes having at least one year of historical data
otherwise the forecasted values may not be significant. There
are three different statistical models that can be used to
calculate the Forecast function; Board automatically selects
the most appropriate depending on the historical data series
available. The statistical functions are based on the
exponential smoothing and moving average models, ARIMA
and Winters models; refer to Board Forecasting models for
mode details.
Period Offset

Causes a time shift equal to the number of specified periods.


For example, by setting Period Offset &endash;3, you obtain
the data from three periods before, depending on the
structure of the InfoCube it could be three months or three
weeks or days. If you are examining a monthly InfoCube,
Period Offset &endash;12 is equivalent to the Prev.Year
function.
Note! This parameter can be combined with any option
available in the functions list box, except for the Previous Year
function.

Cycle

Defines the cycle width for the cumulative functions. This


option can be applied only if one of the following cumulative
functions has been selected:
Yearly Cumulated Value
Yearly Moving Total
Yearly Moving Average

Note! The time functions are not applicable to InfoCubes having single dimension or
InfoCubes structured by a custom time entity.

Rule
Allows selecting an existing Rule to apply to the current data column. Refer to the Database Design
&endash; Rules chapter for details on Rules.
To apply a Rule, the entity on which the rule is defined must be set either by row or by column. If it is
set by row, it is possible include another entity by row but only if it is not hierarchically related to it and
as a grouping entity (set this entity first, then the one on which the rule is defined). For example, if a
Rule is defined on the entity ProfitAndLoss and then you can set the this entity by column or row. If
you set it by row you can also set another independent entity for example Month-ProfitAndLoss, but
not ProfitAndLoss -Month.

References tab
Reference functions can be applied to InfoCubes only.
The References tab is show in the following illustration.

170

Chapter 7 Capsules

Detail By

Allows selecting an entity by which the data column should be detailed across
columns. This option overrides the setting defined in the By Column axis of
the Layout.

Total By

Allows aggregating an InfoCube to a higher aggregation than the level


specified in the Axes. This function allows creating totals for calculating
percentages or other indexes.
Note! When the Total by function is used, only one entity can be set column
and one or two hierarchically related entities can be set by row.
Example: in the report in the following illustration shows in the first column the
sales cube, in the second column the sales with the total by State applied
(which returns for each city the total sales of the state it belongs to) then the
third column calculates the percentage of sales for the city over the total state
sales.

171

Board 6.1 Manual

Refer To

Allows referring the data block to a specific entity occurrence, overriding the
screen selection and the axes setting. Select the entity first from the white
drop-down list then select the desired entity member from the black list-box.
It is possible to set up to three refer to conditions on distinct and unrelated
entities.
Example: setting Refer to on the entity occurrence state of California, will
return the data for that state regardless of the rows, columns and selection as
illustrated.

The Refer to condition can also be used to create a total: referring to an entity
that is more aggregate than the entities by row or column, returns the referred
occurrence. For example, if a Layout where Month and City are set by column
and row, using the refer to function on Year or State entity returns the total
value for the referred year or state.
172

Chapter 7 Capsules

Alert tab
The Alert function allows defining two types of alert behaviors
Conditional coloring: based on two threshold values, the Red Alert Value and the Green
Alert Value, the cells containing values smaller than the red alert are colored red and those
with a value higher than the green alert are colored green.
Gauge: provided a set of images representing an alert status or value, the gauge function
displays the image representing the cell value out if the provided set.

The available options are


Off

Feature is disabled.

Figures

The coloring affects fonts. Values greater than the green alert are displayed
green and those smaller than the red alert are red.

Blocks

The coloring affects the cells background. Cells where the value is greater
than the green alert assume a green background and those where the value is
smaller than the red alert assume a red background color.

173

Board 6.1 Manual

Blocks only

The cell background is colored and the cell values are hidden.

Note! If the value provided as a red alert is higher than the value set as green alert, the
coloring is reversed, cells having a value higher than the red alert are colored red and
cells having a value smaller than the green alert are colored green.

Gauge

The gauge feature displays a picture that varies depending on the cell value
and the red and green thresholds. Type the root name of the file set followed
by three &rdquor;? (question marks) characters and the file extension.
To use the Gauge feature, a set of image files must be present in the directory
Board\Images\Gauges. The supported file types are GIF, JPG and ICO.
All files belonging to the same set must have a name starting with a common
root and the last three characters changing. There can be two types of sets;
sets made of three files and sets with more than three files.
Sets made of three files are used for representing High, Medium, Low status.
For example, a set of this type could be made of face001.jpg, face002.jpg,
face003.jpg.
When using this type of file set, the first image is used when the cell value is
smaller than the red threshold, the second image for intermediate values and
the third image for values higher than the green alert threshold.
Sets of four or more files, these sets are used for representing a multi-value
alerts. For example a set of eleven files, representing a dial indicator in
different positions: Dials000.jpg, Dials010.jpg, Dials020.jpg, &ldots; to
Dials100.jpg. The files of this type of set must be named from 000 to 100
(common root and the last three characters changing).
When using this type of file set,

174

Chapter 7 Capsules

if the cell value is smaller than the red threshold, the first picture is
displayed,
if the cell value is greater than the green threshold, the last picture is
displayed,
if the cell value is in the [red; green] range, the displayed picture is
the closer to the cell value evaluated as a percentage on the [red;
green] range. The percentage is evaluated using the following
formula: (cell value &endash; red value)/(green value &endash; red
value) * 100 .
Example of a gauge function using a set of three files,

Corresponding setup:

Example of a Gauge function using a set of more than three files,

Corresponding setup:

175

Board 6.1 Manual

The format tab


The Format tab allows defining the font type, color and cell background color of a column.

Note! The format settings are applicable to the DataView object only.

Select the Default option to inherit the DataView format settings. Select the Custom option to set a
font type, color, size and cell background color.
The Checkbox option changes the appearance of the cell to a checkbox. If the cell value is zero, the
checkbox is un-ticked; if the cell value is different from zero the cell value is ticked. This format option
can be set on a data-entry column for entering a Boolean value 1 or zero.

Setting Axes
The Axes tab defines the aggregation level of data by selecting entities to set by row and by column.
Click on the desired entity then drag and drop it to the By Row or By Column fields. To remove an
entity set By Row or By Column, click on the entity and drag it to the recycle bin.

176

Chapter 7 Capsules

Other available options are


Down Totals

Allows disabling the column totals. This option applies to the


DataView and DynaSheet objects.

Master

Makes the object screen Master. Clicking on a row of a master


DataView (or an item of an Alert a Cockpit or Mapping objects) makes
other objects on the screen synchronize by restricting their data to the
occurrence clicked, as if it were selected.
A screen can contain only one master object. This option applies to
the following objects: DataView, Alert, Cockpit and Mapping.

Indentation

When two or more entities are set By row, the entities by row are
indented as in the following illustration.

This option applies to the DataView object only.


Note! This option makes an intensive use of RAM, it is recommended
177

Board 6.1 Manual


disabling it on large reports.
Display

Allows setting what entity fields should be displayed; the code, the
description or both. Click on the field to change the setting.

Show all

This option displays all rows or all columns including rows or columns
with zero values. By default this option is disabled for entities by row,
automatically hiding rows containing only zero values, and enabled on
entities by column.

Collapse

This option applies to a DataView object where two or more entities


are set By Row. By enabling this option the detail lines are shown or
hidden by clicking on the grouping entity member.
Collapsed DataView

Click on a row to view the details:

Totals alignment

This option applies to the DataView object having at least one entity
by column and provides three options for defining the positions of the
row total columns.

Align horizontally orThis option applies to the DataView and DynaSheet objects. By
default, the data blocks are aligned horizontally across columns
vertically.
(column a is the first column, column b the second column and so on).
When no entities are set by row, it is possible to choose the Vertical
alignment as illustrated.

Setting Filters
Filters allow defining rows sorting and two filtering conditions.
178

Chapter 7 Capsules
The left window lists the Layout data columns. To define sorting or a filter, click on the desired field
then drag and drop it to the Sort by field or to a Filter field.
when two filtering conditions are defined, they can be combined using the logical operations :
AND: requires that both filter A and filter B conditions are true.
OR: requires that at least one condition, filter A or Filter B is true.

The Keep top option allows to display a given number of rows. For example Keep top 10 will only
display the first 10 rows.
The Keep Totals option shows the total of the visible rows only. For example activating this option on
a layout having Keep top 10, will show as column total the total of the top 10 rows only. If this option is
disabled, the column total will be the grand-total of all report rows, calculated before filtering the
unwanted rows.
To remove a filter condition, click on the data column and drag and drop it to the recycle bin.
Notes!
Sorting and filtering conditions can be applied to numeric fields only.
If the Layout has one or more entities set by column, sorting is evaluated on the row
total column.
Filters cannot be applied if a ranking function is used.
Filters cannot be applied if there are more than two independent entities set by row.

The Layout toolbox


The Layout toolbox (see illustration below) provides the following features.

The traffic light

A red light indicates that the Layout cannot be executed: this may be
due to an incorrect configuration or an inconsistency between the
InfoCube structure and the axes.
A green light indicates that the Layout view is based on a physical
179

Board 6.1 Manual


version of the InfoCube(s) involved: no aggregation will take place to
return the requested data.
The yellow light indicates that the Layout view is requires aggregating
the InfoCube(s) involved.
Copy/Paste

Allows to copy/paste a Layout from one object to another.

The recycle bin

Generally allows deleting or removing configuration settings depending


on the tab considered, Data, Axes or Filters. drag and drop an object to
the recycle bin to remove it. For example, while in the Data tab you can
remove a data column by dragging and dropping a column to the bin.

The Select

Opens the screen selection window. Note that a selection is common to


all objects on a screen and therefore it is shared by all Layouts defined
on a screen.

The DS&S button

Enables Logical data entry. Refer to the DS&S and data-entry


paragraph for more details.

OK button

Launches the Layout.

Button
The Button object
Buttons can be used to create links to other screens or to launch a procedure. The action associated
to a Button is triggered only at runtime; design mode only allows configuring the button object.

Creating a Button
Select the button object from the toolbox then drag and drop it to the desired screen area. Right click
on the button object to configure it.

Button Appearance
The Appearance properties allow setting the button style and label.

180

Chapter 7 Capsules

Caption

Type the text to display on the button.

Font, 3D, Alignment

Allow setting the text font style and alignment.

Fore color, Back color

Allow setting the font color and the button color.

Picture

Allow adding an image on the button.

BevelWidth, Border

Defines the button 3D effect and border style.

Tool Tip

Comment that automatically appears near the mouse pointer


when the mouse is placed over the button
.

Button Actions
The Actions tab defines the button behavior: the action to execute when the user click the button at
runtime.
To go to another screen, select the screen name from the Next Screen drop-down list. Alternatively
you can use the choose function and define a selection of screens the user can choose from. For
example, choose(screen1, screen2) allows the user to jump to screen1 or screen2.
To launch a procedure select a procedure name from the procedures list. Note that it is possible to
select up to three procedures that will be executed sequentially from top down.

181

Board 6.1 Manual

Clicking the Procedures button opens the procedures designer environment, where you can to create
a new procedure or edit and existing one.

Button Options
The Options tab contains the following settings
Confirm message

Confirmation message that will be displayed in a pop-up window


before launching the action.
The text is shown on a single line, long messages can be
truncated; use the Comment field to type multi-line and long
messages.

Password

By setting a password, the user will be prompted to type the


password before the action associated to the button is launched.
It is possible to type a list of valid passwords separated by
comma.
Note that the password is prompted only once per session.

Comment

Text area displayed in the confirmation pop-up window.

AutoGo

Automatically launches the button action when the screen is


opened. A screen can contain only one button having the AutoGo
option enabled.
This option is usually utilized for creating batch Capsules. A batch
Capsule has a button with the AutoGo option on the main screen
and when invoked from a command line the associated action is
triggered.

182

Chapter 7 Capsules

The options configuration tab.

Picture
The Picture object
The picture object can be used to add pictures or text labels to a Capsule screen. The picture object
supports the following file formats: GIF, JPG, ICO, BMP, WMF, EMF. The picture object is embedded
in the screen, when creating a Capsule accessed by remote users (connecting through a WAN or the
Internet) it is recommended using small image files and compressed formats (such as GIF or JPG).
Note that the Viewer object also can be utilized to add an image or a logo to a screen. The Viewer
object visualizes an external picture file (as well as other file types) that does not affect the size of the
screen Capsule.

Creating a Picture or a text label


Click on the Picture object icon on the toolbox then drag and drop it to the desired screen pane. Right
click on the image object to configure it.
Click the Picture button to select an image file.
To define a text label, click the Clear Picture button and type the desired text in the Caption field.

183

Board 6.1 Manual

Folder
The Folder object
The Folder object creates folders that can contain other objects from the toolbox (except for another
Folder object). When two or more folder objects are found on a screen, the tabs synchronize
automatically; for example clicking on the second tab of a Folder automatically sets other Folder
objects on the second tab as well.

Creating a Folder
Select the Folder object from toolbox then drag and drop it to the desired screen pane. By default, two
folders, named Tab0 and Tab1 are created.
Right click on the folder tabs to access the properties configuration.

184

Chapter 7 Capsules

Increase or reduce the number of tabs using the TabsNr field. It is possible to define up to 10 tabs.
You can customize the object by selecting one of the available Appearance, Orientation and
Style options.
To rename a tab, type the desired text in the corresponding text area. You can set the tab background
and font color by clicking on the F and B icons.

DataView
The DataView object
The DataView object is the main spreadsheet object for the creation of analyses. The DataView object
supports data-entry and a rich set of Layout and formatting options.

Creating a DataView
Select the DataView object from the toolbox then drag and drop it to the desired screen pane. Right
click on the object to access the Layout configuration. Refer to The Layout object section for details on
how to configure a Layout.

Data-entry features
Different features are available depending on the data type of the data-entry column.
To enter a value in a numeric column,
Click or double-click on the cell then type the desired number.
185

Board 6.1 Manual


Right-click on the cell, a calculator will appear. Use the calculator to enter the desired value.
To enter a value in a date column,
Click or double-click on the cell then type the desired date using your short-date format
settings.
Right-click on the cell, a calendar will appear. Select the desired date using the calendar
object as illustrated.

Formatting options
The Format tab allows defining the font, the color and other display options of the DataView
spreadsheet.

Default

Set Board's default grid and font and color and styles.

Dynamic

Allows to select a font type, font color and cell's background color to apply
to all columns and rows of the spreadsheet.
To select a font type click the Font button

186

Chapter 7 Capsules

To select the font color click the ForeColor button


To select the spreadsheet background color click the BackColor button.
Static

This option allows to define a font style, color and cells borders and color.
The Static style is linked to the individual row and column where defined
therefore this option is appropriate for reports where the number of rows
and columns doesn't vary.

Headers

Displays the column headers. Note that when the headers option is
disabled (row headers are hidden), it is not possible to right-click on a row
header to access the drill-down window however if a drill-down path was
saved, you may drill-down on a row by double-clicking on the desired row
or double click on the desired cell.

Vertical scrollbars

Displays the vertical scrollbars.

Horizontal scrollbars

Displays the horizontal scrollbars.

Cell Focus

Enables the spreadsheet cell cursor. This option cannot be disabled if


there is a data-entry column.

Vertical grid

Displays the vertical grid lines.

Horizontal grid

Displays the horizontal grid lines.

Drill-down on a cell
Double-click on a data cell to drill-down.

187

Board 6.1 Manual

This feature is not available on data-entry cells.

Graph
The Graph object
The Graph object allows you to create and format a wide range of charts, including 2D, 3D, and
stacked permutations of Bar, Line, Area, and Step charts. It also includes XY, Polar, Radar, Gantt, HiLo, Pie, Doughnut, Elevation, 3D XYZ, and 3D Scatter charts.
The Chart Wizard visually guides you through the process to create a new chart or modify an existing
chart. Alternatively you can use the Chart Designer, an richer and more detailed environment that
allows you to set advanced charting options and fully customize the chart text styles, fill patterns,
marker styles, as well as 3D rotation, perspective, lighting, and more.
A Graph object can be,
DataView Child Layout: This type of graph displays data from a DataView object present on
the same Capsule screen. This type of graph is linked to a DataView object that acts as a
parent to the chart object: when you click on a DataView row, the chart will refresh and display
the data from the clicked row.
Stand-alone Layout: This type of graph includes a Layout defining the data that chart data.

Creating a Child Layout Graph


To create a Child Layout Graph, the screen must contain a DataView object. Create and configure the
DataView object first.
Select the Graph object from the toolbox then drag and drop it to the desired screen area.
Right click on the graph object and select the DataView Child Layout option. The following
configuration window will open.

188

Chapter 7 Capsules

If the screen contains one DataView only, the graph is automatically linked to that DataView.
If there are several DataView objects, select the desired DataView from the Bound
DataView list box.
The left window lists the DataView columns (InfoCubes and calculated fields). Select the
columns you want to draw on the chart and drag them to the right window.
Select the option Data Series By Row to chart the data in the DataView rows &endash;you
can select this option only if the DataView has an entity set by column. Select the option Data
Series By Column to draw the chart from a column of the DataView &endash; you can
select this option only if the DataView has an entity set by row.
Click OK to close the configuration window.
If you selected Data Series By Row, click on a row from the DataView to draw the chart.
If you selected Data Series By Column, click on the DataView column to draw the chart.

Creating a Stand-alone Layout Graph


To create a Stand-alone Layout Graph,
Select the Graph icon from the toolbox then drag and drop it to the desired screen area.
Right click on the graph object and select the SandAlone Layout option. Configure the
Layout. Set the entity corresponding to the chart X-axis in the Layout column (axes By
Column).
Click on the Graph tab of the layout and select the data columns to draw on the chart: drag
and drop the desired column in the Graph window.

click OK to execute the Layout and draw the chart.

189

Board 6.1 Manual


To draw a multi-line chart from a set of entity members, set the desired entity by row (in the Axes
configuration) and set one data column only in the Graph tab.
The following illustration is a multi-line chart resulting from a Layout having the Month entity set by
column and the State entity set by row.

Formatting a Graph using the Chart Wizard


Right click on the graph object and select the Wizard option. The Chart Wizard visually guides you
through the process to create a new chart or modify an existing chart.

Formatting a Graph using the Chart Designer


Right click on the graph object and select the Chart Designer option. The Chart Designer allows you
to set the chart properties.
190

Chapter 7 Capsules

The Designer's tree view outline allows you to select multiple chart parts and set properties for all
selected parts at once. To select a single chart element, click once on the element in the tree view. To
select multiple chart elements, hold down the CTRL key while clicking once on each element you wish
to select. When you select multiple elements only common properties are displayed.
The options you select from all tabs are applied to the chart when you click either the Apply or the OK
button.
Changes are not applied to the chart as you move from tab to tab. Only the Apply button or the OK
button will affect the chart.
The following illustration show how to set identical font style and size for the chart title, footnote and
legend.

The following illustration show how to set common background color for all Axis labels.

191

Board 6.1 Manual

Creating and using chart templates


Chart formatting options can be saved to a chart template file. Templates can then be reused on other
Graph objects.
To create a template file, switch to Design mode then right click on the Graph object then select from
the pop-up menu the Templates/Export Chart option. Type the template file name and save.

To apply an existing chart template to a graph object: switch to Design mode, right click on the Graph
object then select Templates/Import Chart from the menu.
The chart templates can be used to format Board Web query charts.

GDE Graphic Data-entry


The GDE object
The GDE object is a bar chart allowing supporting data-entry: using the mouse, you can raise or lower
a bar of the histogram and the corresponding value is written to the data-entry InfoCube.
192

Chapter 7 Capsules
The GDE object is often used in combination with a master DataView object allowing to enter data in
an InfoCube in two ways: through the graph, to create a seasonality curve, then through the DataView
spreadsheet to refine the numbers set through the chart. The GDE and the DataView objects are
constantly kept synchronized: each object instantly reflects the changes made using the other object.
Example

Creating a Child Layout GDE


To create a Child Layout GDE, the screen must contain a DataView object having an entity set by
column (the GDE chart support data series by row only) and one data-entry InfoCube. Create and
configure the DataView object first.
Select the GDE icon from the toolbox then drag and drop it to the desired screen area.
Right click on the GDE object and select the DataView Child Layout option. The child
Layout configuration window will open.
If the screen contains one DataView only, the graph is automatically linked to that DataView.
If there are several DataView objects, select the desired DataView from the Bound
DataView list box. The left box lists the DataView columns (InfoCubes and calculated fields).
Select the data-entry column and drag it onto the Graph window. The first field that is set in
the Graph box corresponds to the data-entry bars of the histogram (data-entry bars are red).
Optionally you may select a second field from DataView and drag it across to the Graph box;
the second field is used to draw a secondary bar series (the blue bars) that can be a reference
for the data-entry bars.

193

Board 6.1 Manual


Click OK to close the configuration window.
Click on a row of the DataView to view the data in the GDE chart. The name of the clicked entity item
is shown in the GDE object.

Creating a Stand-alone Layout GDE


To create a Stand-alone Layout GDE,
Select the GDE icon from the toolbox then drag and drop it to the desired screen area.
Right click on the GDE chart and select the SandAlone Layout from the menu. Configure
the Layout. Enable data-entry on the desired InfoCube. When configuring the Layout Axes
tab: set the entity corresponding to the chart X-axis by column; do not set any entity by row.
Click on the Graph tab then set the desired column in the Graphic data-entry field.

Click OK to execute the Layout and create the GDE.

Using a GDE
To enter a value, point the mouse on the desired bar. A horizontal dotted line indicated the Yaxis value of the mouse position. Click at the desired height then to save values to the
InfoCube, press the Save button or the F10 key.

194

Chapter 7 Capsules

Click on the reference value shown in the blue bar to equalize the red bar height to the blue
bar height. To save values to the InfoCube, press the Save button or the F10 key.

Setting a background picture on the GDE object


Right click on the GDE chart and select the Background Picture option from the menu.

Mapping
The Mapping object
The Mapping object allows you to create bubble charts for positioning analyses. On a Mapping object
bubbles represent Entity items. Three data columns determine the bubble position (X and Y axes) and
the bubble radius.
Example

195

Board 6.1 Manual

Creating a Mapping
To create a Mapping chart,
Select the Mapping icon from the toolbox then drag and drop it to the desired screen area.
Right click on the mapping chart, select the Stand-alone Layout option from the menu and
configure the Layout.
Three data columns are needed to draw the bubble chart. When configuring the Layout Axes
tab, set the entity to display as bubbles by row. Optionally, you can add a parent entity by row;
bubbles will be colored by groups of bubbles having the same parent.
In the by column axis of the Layout you can optionally set an entity that will be used as a
paging criterion in a drop-down list as illustrated.

Select the layout Graph tab and set the three data columns: the X-axis, the Y-axis and the
radius.

Click the OK button to run the Layout and draw the bubble chart.

Using a Mapping chart


The mapping object provides the following features,
Zoom
196

Chapter 7 Capsules
Bubble information
Master
Data-entry
Animation
Gauges
Zoom
To zoom, click then drag the mouse in a diagonal capturing the bubbles you want to zoom on. The
occurrences captured by the zoom area become a selection and other objects on the screen will be
refreshed restricted to the selected items. To reset the zoom, click on the gray title bar of the mapping
chart.

Bubble information
Place the mouse pointer over a bubble to display the entity occurrence in a tool-tip box. Right click on
the tool-tip box to view parent entities (if they exist) of the clicked item.

Master
A Mapping object can be defined Master: select the master option found in the Layout Axes tab.
Clicking on a bubble of a Master Mapping refreshes the data displayed by other objects on the screen,
restricted to the clicked item.
When the Master option is enabled, the zoom function is disabled.
Data-entry
The Mapping object supports data-entry on the X and Y axes columns: if data-entry is enabled on the
data columns used for X-axis and Y-axis, you can move a bubble to a new position then save the
values corresponding to the new X and Y coordinates to the InfoCubes.
197

Board 6.1 Manual

Animation
You can animate Mapping objects having a paging entity (i.e. there is an entity set By Column in the
Layout Axes tab). Click on the Motion button found in the top left corner; the occurrences in the paging
list box will automatically scroll.

Gauges
The Mapping bubbles can be replaced by gauges images, including animated GIF pictures. Define an
Alert (selecting the Gauges option) on the Radius data column: when the Mapping chart is drawn, the
gauges picture files are used instead of bubbles.

When
the number of animated GIF images is greater than 20, images are animated one by one.

Setting a background picture on the Mapping object


Right click on the Mapping chart and select the Background Picture option from the menu.

Cockpit
The Cockpit object
The Cockpit object represents a numerical value using a needle indicator or using images, including
animated GIF pictures.
The needle indicator is divided into three colored sections (red, yellow, and green) defined by two
threshold values: the red-yellow threshold and the yellow-green threshold.

198

Chapter 7 Capsules
When the gauges option is used, the gauge image is used for representing the value.
The following illustrations are two Cockpit objects using gauges.

Creating a Cockpit
To create a Cockpit object,
Select the Cockpit icon from the toolbox then drag and drop it to the desired screen area.
Right click on the object, select the Stand-alone Layout option from the menu and configure
the Layout.
One data column is needed for the Cockpit. When configuring the data column to be used in
the Cockpit, go to the Alert tab and set the two thresholds in the red and green alert fields.

To use the gauges option, select Gauges from the Alert tab and type the gauges file name.
Refer to The Layout object paragraph for more details on gauges.

199

Board 6.1 Manual

Go to the Layout Axes tab and set the entity to display as cockpit objects by row.
In the by column axis of the Layout you can optionally set an entity that will be used as a
paging criterion in a drop-down list box.
Select the layout Graph tab and set the data column to use in the indicator.

Click the OK button to run the Layout and create the Cockpits.
One indicator per each occurrence of the entity set by row is created. While in design mode, you can
click on an object and reposition it as desired. Save the Capsule to save the objects position.

Using a Cockpit
The cockpit object provides the following features,
Cockpit information
Master
Animation
Cockpit Information
Place the mouse pointer over a cockpit object or over a gauge picture to display the entity occurrence
and the field value in a tool-tip box.

200

Chapter 7 Capsules

Master
A Cockpit object can be defined Master: select the master option found in the Layout Axes tab.
Clicking on a cockpit (or gauge) refreshes the data displayed by other objects on the screen, restricted
to the clicked item.
Animation
You can animate Cockpit objects having a paging entity (i.e. there is an entity set By Column in the
Layout Axes tab). Click on the alert field name fount in the top left corner; the occurrences in the
paging list box will automatically scroll.

Setting a background picture on the Cockpit object


Right click on the Cockpit object and select the Background Picture option from the menu.

Alert box
The Alert object
The Alert object allows you to represent a numerical value using different alerting methods
The standard alert is a colored box that can turn red, yellow or green depending on two
threshold values.

The Area options extend the functionality of the alert boxes allowing you to fill an area of a
background picture with the color of the alert box placed over it.
Example of a standard object where alert boxes have been arranged over a background picture.

201

Board 6.1 Manual

Example of the area feature: the background picture areas are filled using the alert box color.

Creating an Alert
To create an Alert object,
Select the Alert icon from the toolbox then drag and drop it to the desired screen area.
Right click on the object, select the Stand-alone Layout option from the menu and configure
the Layout.
One data column is needed for the alert. When configuring the data column to be used in the
alert box, go to the Alert tab and set the two thresholds in the red and green alert fields.

202

Chapter 7 Capsules

Select one of the four available options.


Box

Displays a colored square box.

Box & Value

Displays a colored box and the field value.

Area

Colors the background picture using the alert box color.

Area & Value

Colors the background picture and displays the field value.

When using the Area options select a picture having closed areas delimited by borders
that create a fair color contrast with the surrounding colors.

Go to the Layout Axes tab and set the entity to display as alert box objects by row.
In the by column axis of the Layout you can optionally set an entity that will be used as a
paging criterion in a drop-down list box.
Select the layout Graph tab and set the data column to use in the indicator.

Click the OK button to run the Layout and create the alert boxes.
One box per each occurrence of the entity set by row is created. While in design mode, you can click
on a box and reposition it as desired. Save the Capsule to save the objects position.
Note that if you selected an Area option, the coloring takes place only at while in runtime mode.

Using an Alert
The cockpit object provides the following features,
Alert information
Master
Animation
Alert Information
203

Board 6.1 Manual


Place the mouse pointer over an alert box to display the entity occurrence and the value in a tool-tip
box.

Master
An Alert object can be defined Master: select the master option found in the Layout Axes tab. Clicking
on an alert box (or an area when the Area option is used) refreshes the data displayed by other
objects on the screen, restricted to the clicked item. The Master Layout option can be combined with
the Area alert options.
Animation
You can animate Alert objects having a paging entity (i.e. there is an entity set By Column in the
Layout Axes tab). Click on the alert field name fount in the top left corner; the occurrences in the
paging list box will automatically scroll.

Setting a background picture on the Alert object


Right click on the Alert object and select the Background Picture option from the menu.

DynaSheet
The DynaSheet object
The DynaSheet is a spreadsheet object supporting multiple worksheets and providing a designer
environment that appears and behaves much like a commercial spreadsheet application.
Each worksheet of a DynaSheet can either contain a Layout definition and therefore displays
InfoCubes and entities data or it can be used to work freely as you would on a spreadsheet
application.
The DynaSheet object differs to the DataView in the following characteristics
The DynaSheet object does not support data-entry on InfoCubes.
The DynaSheet designer (or sheet designer) allows to type formulas in referring to other
worksheets and using typical spreadsheet functions
The DynaSheet provides a greater control over cells and sheets formatting options, setting
fonts, colors, borders and other style options.
The DynaSheet object has a print preview function.
The DynaSheet allows to read MS-Excel files and write files to various formats including MSExcel 97, tabbed text and HTML.
A DynaSheet worksheet is limited to 65000 rows.

Creating a DynaSheet
To create a DynaSheet object,

204

Chapter 7 Capsules
Select the DynaSheet icon from the toolbox then drag and drop it to the desired screen area.
A workbook with three sheets is created by default.
To define a Layout on a worksheet, right click and select Layout option from the pop-up
menu. Note that once you have set a Layout on a sheet you cannot use the worksheet to type
formulas or edit it freely.
To work on a worksheet, click on a cell and type the desired text or formula.
The workbook document is embedded in the screen; save the Capsule screen to save the document.

The DynaSheet Designer


To access the Sheet Designer environment, right click on a DynaSheet object and select the Sheet
Designer option from the menu.

The Sheet Designer environment provides the menus and functions that are typical of spreadsheet
applications. You can, for example, open and save files in various formats (such as MS-Excel), create
new sheets, insert and eliminate rows and columns, change the format and color of the characters and
cells, etc.

205

Board 6.1 Manual

DynaSheet options
Formatting Sheets
Worksheets where a Layout is defined are generated with a format similar to the standard DataView
reports.
You can modify the cell format of a worksheet sheet containing a Layout: right click on the DynaSheet
object, select Sheet Designer from the menu and. The formatting options that are accessible through
the menu Format/Cells are the only options that can be modified, with the exception of options from
the Numbers tab.

To save your formatting options, close Sheet Designer, click with the right button of the mouse on the
sheet, choose the Lock Sheet Format option from the menu then save the Capsule.

Lock First Column option


This option freezes the first column: when the first column is frozen if you scroll the sheet horizontally,
the first frozen column remains visible. To disable this option, right click the sheet and choose Option
then Unlock First Column.

DynaWrite
The DynaWrite object
The DynaWrite object can be used to add text documents to your Capsule screens.
DynaWrite is a word processor environment. With DynaWrite, you can create and format text, manage
various character types, and insert tables and pictures. You can also open and save files in various
formats, including Rich Text Format (RTF), plain text (TXT), and HTML.

Creating a DynaWrite object


To create a DynaWrite object, select the DynaWrite icon from the toolbox then drag and drop it to the
desired screen area.

206

Chapter 7 Capsules

The DynaWrite environment


Right click on a DynaWrite object to access the document editor environment allowing to edit and
format your text document. The text document is embedded in the screen; save the Capsule screen to
save the document.

Viewer
The Viewer object
The Viewer object allows to visualize external files or a web site. The file name or the Internet address
can be
Static: the Viewer displays a file or web site page specified when creating Viewer the object.
Dynamic: the text column of a DataView object (present on the Capsule screen) determines
the file name or the web site address to view in the Viewer object. When you click on a row of
the DataView object the file or web page changes.

The Viewer is a polymorph object: when you create a Viewer you must specify a file or a web site
address to view and depending on the file type the Viewer assumes a coherent form. The following
types are supported:
A web site address or a HTML page: the Viewer instantiates an Internet browser object.
PDF files: the Viewer instantiates an Internet browser object.
An image files (JPG, GIF, BMP): the Viewer instantiates an Internet browser object.
Text and Rich Text Format files (TXT or RTF): the Viewer instantiates a DynaWrite object.
Microsoft Excel files (XLS): the Viewer instantiates a DynaSheet object.

207

Board 6.1 Manual


Note that the files displayed in the Viewer object are external files, not embedded in the Capsule. The
Viewer only stores the web site address or the file name as a reference.
Note! Files addressed by the Viewer object must be located in the \Board\Desktop
directory of the computer where the BoardServer is installed.

Creating a Viewer object


To create a Viewer object, select the Viewer icon from the toolbox then drag and drop it to the desired
screen area. The following window prompts the file name or the web site address to view

Type a web sites address (or a URL), without the &rdquor;http:// prefix. For example
www.MyCompany.com
Or type a file name, including the file extension. Files addressed by the Viewer object must be
located in the \Board\Desktop directory of the computer where the BoardServer is running.
If you type a file name with extension RTF, TXT or XLS, and the file is not found in the
\Board\Desktop directory then Board creates it.

Note! For files of type RTF, TXT and XLS, the Viewer allows editing the file: while in
runtime mode you can modify the workbook or the text document and save changes by
clicking the save button found in the bottom toolbar.

Creating a dynamic Viewer object


To create a dynamic Viewer,
Create a Viewer object of the appropriate type (Internet browser, DynaWrite or DynaSheet).
Add a DataView object to the Capsule screen and define a text column with the containing
the file names (or the URLs) that the Viewer should refer to.
Make the text column a hidden column: enable the Data Layout option &rdquor;Hide this
block.
Click on a DataView row: the viewer display the file or the URL specified in the hidden text column.
Note that you can define more than one dynamic Viewer on a Capsule screen: for each dynamic
viewer object on the screen define a hidden text column on a DataView object.

Flowchart
208

Chapter 7 Capsules

The Flowchart object


The Flowchart object allows you to create dynamic flowchart diagrams representing a business
process, a decision or a navigation tree or other graphical representation of an Input-Process-Output
system.
The Flowchart object is a graphic workspace where you can add boxes of different shapes
(rectangles, rhombuses, ellipses etc&ldots;) and draw arrows linking them.

The Flowchart can contain up to four Layout definitions. The boxes (rectangles, ellipses etc&ldots;)
can display a value from one of these Layouts.
The flowchart object also provides a table object that can display plain text (manually filled-up) or a
data column from one of the Flowchart Layouts.
The box objects can
Display a fixed text or a picture.
Display a value from a Layout of the Flowchart: an InfoCube or a calculated column, including
text columns and gauges.
Contain other toolbox objects: a DataView, a Graph, or any other object except for the
following: Button, Picture, Folder, Viewer and Flowchart.
You can also associate an action to a box, jumping to another screen or running a procedure,
obtaining the behavior of a button object: when the user clicks the box the action is executed.
Example

209

Board 6.1 Manual

Creating a Flowchart
To create a Flowchart object, select the Flowchart icon from the toolbox then drag and drop it to the
desired screen area.
Right click on the flowchart object to access its properties definition window.
To draw a box, click on the flow chart then keeping the mouse button down, drag the mouse pointer
in a diagonal. Right click on the box to set its properties: shape color, actions etc&ldots;

210

Chapter 7 Capsules

To draw an arrow, click on a box then drag the pointer to another box (an arrow links two box
objects). Right click on the arrow to access its properties.
To add a toolbox object onto a box, select the desired icon from the toolbox then drag and drop it to
the desired box. The following toolbox objects can be placed positioned on a box: DataView,
DynaSheet, Graph, Mapping, GDE, Cockpit, Alert, DynaWrite and STO.
Note! Once an object from the toolbox has been places on a box, it is not possible to
draw arrows originating from that box. Draw the arrows before placing the toolbox
object.

The Flowchart properties


Right click on the Flowchart to view the properties window.

211

Board 6.1 Manual

Back color

Sets the background color. Click the &rdquor;as screen button to select
the screen background color.

Picture

Allows you to select an image file to use as background. Click the Clear
button to remove the background image.

Scrollbars

Displays the horizontal and vertical scrollbars.

Shadows

Creates a 3D show effect on boxes and arrows objects.

Layout

Allows you to define up to four Layouts. The Box and Table objects can
display data from one of these Layouts. Note that you can use the Alert
functions (color coding or gauges) on the Layout data columns displayed
in Boxes or Tables: the box background color changes according to the
alert rule or the gauge image is displayed.

Add Table

Creates a table object that can display data from a Layout text (the table
can be manually filled-up). The Table object allows you to draw arrows
pointing to a specific table cell; this is not possible if you are using the
DataView or DynaSheet objects embeded in a Box (the arrow can only
point to the box border).
The Table object is a light object, requiring a small amount of RAM
compaired to the DataView and DynaSheet objects.
The Table object is suitable for simple reports, with a limited number of
rows and columns. It does not support drill-down and data-entry. It
displays a fixed number of rows and columns.
Right click on the Table object to define its properties.

212

Chapter 7 Capsules

Set the number of rows and columns using fields Row Nr. and Column
Nr.
To display a data column in the Table, select the Show Value option,
then select the Layout number (from 1 to 4) and the data block to display
(one of the Layout columns from a to z).

The Flowchart box properties


Right click on a box to display the properties window. The Box object has two configuration tabs.

Shape

Select the shape from the list. Available shapes are: Rectangle Ellipse,
Rounded rectangle, Rhombus, Polygon, Delay, Button Container.

213

Board 6.1 Manual

Transparent

Makes the box object transparent.

Text

Text label. Nota that if the box is configured to display a Layout column
(using the Show Value property) this field is ignored.
Use the Aligment and Font butons to define the text properties.

Back color

Allows you to set the box background color.

Border color

Allows you to set the border color.

Border width

Allows you to set the border width.

Picture

Allows you to select an image file to use as background. Click the Clear
button to remove the background image.

The Function tab allows you to define the Box behavior.

Show Value

To display a data column from one of the available Layouts, click the
Show Value check-box then select the Layout number (from 1 to 4)
and the data block to display (one of the Layout columns from a to z).

Action

Associates an action to the Box object, making the object to behave in a


similar way to the Button object: when the user clicks on it, the
associated action is executed.
The Goto Screen option allows to jump to another screen. The
Procedure option allows to launch procedure.
The pw list field allows you to define a password that will be prompted
to the user when attempting to run the procedure.

214

Chapter 7 Capsules

Clicking the
environment.

Procedure

button

opens

the

Procedure

designer

The Flowchart arrow properties


Right click on an arrow to display the properties window allowing you to define the arrow style arrow
shape, size, color, etc...

STO - Simple Transaction object


The Simple Transaction object
The Simple transaction object (STO) is a specialized data-entry tool that allows you to define
validation rules on data-entry and supports the creation of new entity members and relationships to its
parent entities.
For example, lets consider a budgeting application where users should define budget figured by
Product. Using the STO object it is possible to define a validation rule: the budget quantity is accepted
only if within a specified range, or only if a price has been keyed-in as well. The STO allows also the
creation of new items (members of the Product entity), and the definition of all parent relationships:
when a new item is created, the user can immediately assign a Product Group, a Product Family
and other parents.
The STO object is made of two parts, a header part containing entities and relationships and a detail
part made of one or more spreadsheets containing the data-entry cubes.

215

Board 6.1 Manual

Creating a STO
To create a Simple Transaction Object, select the STO icon from the toolbox then drag and
drop it to the desired screen area.
Right click on the header area then select the Entities/Relationships option from the menu.

The following configuration window is displayed.

Start by setting the entities that will be displayed in the header part of the STO object: drag
and drop the desired entities from the left list box to the Entity list table (see illustration
below). Start by selecting the most detailed entity (for example Customer or Product) to
which the users may add new members then set the parent entities that need to be related to
the member from the input entity.

216

Chapter 7 Capsules

Only the entities found one level up the hierarchy should be selected. For example, if you select the
Customer (the detail entity) and add the City entity (a parent of Customer) then you should not add the
State entity (a parent of City): the indirect relationships Customer State will be assigned
automatically through the City State relationships.
For each entity, configure the following options
Insert new

Click to allow adding new occurrences. Enable this option only on


entities to which adding new members should be permitted.

Numeric

Generates an auto-incremental numerical code for new occurrences.


This option is relevant only when Insert new has been enabled, it
generates an automatic code for new members.

Edit Desc.

Click to allow editing the occurrences description field.

Capitalized

Converts the descriptions of newly created occurrences to upper


case.

Let move

Displays scroll buttons allowing you to scroll up and down the


occurrences list. This option is automatically disabled when the Insert
new option is enabled.

Show list

Click to allow viewing the entity occurrences list. If the Insert new
option is enabled ad Show list is disabled then the user will be able to
create new occurrences but not search or view the full list of
occurrences.

Whole list

Click to displays the full members list (all occurrences) ignoring the
screen selection.

If needed, set some additional options

217

Board 6.1 Manual

Layout Nr

Defines the number of Layouts to include in the STO. The


maximum number of Layouts per STO object is 4.

Trigger

You can select a procedure that will be executed whenever data


from a Layout is saved (i.e. when the user clicks the Save values
button).
Click the Refresh check-box to reload the screen after running
the procedure.

Interactive Selection

Chose an entity on which end users need to make a selection that


acts on the Layouts included in the STO.
For example, if you select the Product, users will be able to click
on the Product list-box, select some products and the selection
will apply to the Layouts of the STO object.

By <&ldots;>
sparsity

activeThis drop-down list allows you to select a sparse structure that


involves the entity on which new members can be created. When
an item from that entity is chose, the sparse structure is used to
apply a selection on other entities involved in the sparse structure.
For example: lets consider that Customer is the entity to which
new members can be created. This option will show the list of
sparse structures involving the Customer entity. Suppose you
select a sparse involving Customer-Product. When the user will
select a customer from the Customer list box in the STO header,
Board will automatically select products for which there is a
sparse combination with the chosen customer. The selection
propagates from the customer entity across to the product entity
through the sparse structure.

In the Message grid, type the warning messages to display when a validation rule is not met.
The row number will be used the message identifier when defining the validation fields.

The STO header section is now fully configured. You must now configure at least one Layout.
Right click the header section and select the Layout option.
218

Chapter 7 Capsules
Configure a Layout with data-entry columns as desired, considering that the most detailed
entity selected in the header section will act as a DynaBar (a paging criterion) for the STO
Layouts.
Optionally set the validation rules by clicking the Validation field checkbox (see illustration
below). A validation rule is a calculated field, usually with an IF statement, that returns the
zero if the rule is met (the input value is valid) or the warning message row number when the
criterion is infringed. Validation fields are usually hidden in the Layout; click the Hide This
Block option to hide it.

Note that it is possible to create complex validation rules by nesting IF statements or referring to other
Layout columns containing IF statements, and then combining the expressions using the logical
operators AND and OR.
Note that the validation formulas are evaluated only when the end user enters numerical data, not
when text is entered on a text InfoCube.

Data-entry default and the Choose( ) function


When configuring the data-entry columns in an STO object it is possible to use to define a proposed
default value by typing a formula in the column algorithm field of the data-entry column. The illustration
below is an example: the InfoCube Budget Dollars is a data-entry column and the formula b*1.15 will
be used to propose the user a default input value.

219

Board 6.1 Manual

The Choose( ) function allows you to specify a fixed list of input values the user can choose from.
When the choose function is used, the user can only select one of the values from the list.
Syntax:
Choose(value1; value2; &ldots;)
Choose(entity_name)
Optionally you can define a default value by adding the character &rdquor;> before the desired value.
Example using a list of values: choose(10; 15; 20)
Choose(10; >15; 20)
Will give the user the choice to select one of the three listed values and will default to the
value 15.

220

Chapter 7 Capsules

When the user clicks on a cell to enter a value in the InfoCube, a list-box with the specified
values will appear. The user can only select one of the available values from the list.

Example using an entity: choose(Values list)


create an entity, for example Value list, containing the list of values which you want to be
listed as input options.
Choose(Value list; >15)
The above formula will give the user the choice to select any member of the Value list entity
and sets the default to 15.

221

Board 6.1 Manual

When the user clicks on a cell to enter a value in the InfoCube, a list-box with the entity
members of the Value list entity is shown. The user can only select a value from the listed
ones.

Using the STO


To use the STO object, you must always start from the header section: either selecting an occurrence
from the entity list or creating a new occurrence. Only after that it is possible to view and work on the
Layout section.
To select an existing occurrence, click the entity list-box (see the illustration below) and select
the desired occurrence from the list. Note that selecting an occurrence from the list is possible
only if the Show list configuration option is enabled.

222

Chapter 7 Capsules

If you type a text string in the code or in the description field and then click the entity list-box,
Board will display the occurrences matching the given text, facilitating the search for a
particular occurrence out of a large list.

To create a new occurrence, click the yellow box,


Type the code and description for the new occurrence
Select parent entities to assign relationships. To select a parent, you may use the search
function: type a text to search in the code or description field then click the entity list-box.
Click the Save Entities button.

If present, make a selection from the entity defined as interactive entity selection.
Enter the desired data in the InfoCubes then press the Save Values button.

223

Board 6.1 Manual

Data-entry and DS&S


The Logical Data-entry: Data Split & Splat
The logical data-entry, also called Data Split&Splat is a feature that allows you to enter data at any
aggregation level. When a summary value (a total) is entered, the DS&S feature automatically
allocates it down to the detail cells contributing to that summary based on underlying value proportions
such as previous-year sales (or other user defined allocation criteria) across any dimension, such as
products, customers, territories and time.
In a company where different people contribute to drawing up the budgets and forecasts, each
individual can work along the lines closest to his/her own perception of the market and of the
business. For example, the Sales Manager can make conjectures about the total sales by Customer
Category while the Marketing Director might choose to view data by Product Category. Data
consistency is granted at all times, without having to run batch processes, allocation procedures or
consolidating the variations brought about by one or the other.
For example, suppose having a budget InfoCube structured by three dimensions: Month, Customer
and Product. DS&S allows you to input values at any aggregation level for example on a summary
view by quarter, State and Product. When a summary value is entered, it is instantly and proportionally
allocated down to the elementary values contributing to that summary.
To enable logical data-entry,
configure a Layout with one or more data-entry columns (i.e. click the Allow changes option
located in the Layout data Setup)
Click the DS&S checkbox found in the Layout toolbar

Note! The DS&S allocates summary values based on the underlying data proportions. It
is not possible to enter a value on a summary cell if the summary value is zero. The
data-entry InfoCubes are usually initialized through a procedure that feeds it with data

224

Chapter 7 Capsules
using a defined criterion such as &rdquor;copy last year data or &rdquor;apply a
forecasting function or some other user defined method.

The logical data-entry allows you to enter summary values.

Note! That the DS&S feature is available on all objects supporting data-entry: DataView,
GDE, Mapping and STO.

Inverse algorithm
The inverse algorithm allows you to enter data to an InfoCube by typing a value on a calculated
column. The calculated column should contain two formulas, the standard one and the inverse formula
that defines the data-entry InfoCube column as a function of the calculated column.
The inverse algorithm is often used in conjunction to the DS&S feature.

225

Board 6.1 Manual


For example, consider a data-entry report with three columns, Budget (column a), Sales of Previous
Year (column b) and Budget vs Actual % (column c) given by (a/b)*100. You can define the inverse
formula a=c*b/100 allowing users to enter a value on the Budget vs Actual % column and actually
save a value into the Budget InfoCube by applying the inverse formula.
To define an inverse formula, after the formula defined in the Column algorithm field type the &rdquor;
| character followed by the inverse formula.
Example

Click the Allow changes check-box on the calculated column to allow data-entry.

Note! The inverse algorithm feature is available on all objects supporting data-entry:
DataView, GDE, Mapping and STO.

226

Chapter 8 Procedures
About procedures
A procedure is made of a sequence of actions that are executed sequentially. Board provides a wide
variety of actions allowing you to run database maintenance tasks or run data processing required by
your analytical application, for example running a cost allocation procedure or a planning simulation
and so on.
The elementary steps of Procedures are called actions. An action can run a Data Reader or a Batch
Reader, run a calculation on an InfoCube (a DataFlow action), print reports or broadcast reports via
email, extract some data from the Board database etc. Some action can require user interaction, for
example requiring the user to make a selection on an entity before running a calculation.
Procedures are stored into Capsules. A Procedure can be
Interactively launched by a user (clicking on a button linked to that procedure)
Executed automatically when a certain screen is opened
Executed as a batch process, launched from a command line or by a scheduler.
When a procedure is launched, it inherits the DynaBar and the screen selections.

The Procedure Designer


Opening the Procedures Designer
The Procedure Designer environment can be accessed
Clicking the Procedures icon from the top toolbar

Clicking the procedures button found on the Button Action tab

Creating a procedure
227

Board 6.1 Manual


To create a procedure, you must first create a Capsule and open a database. It is not possible to
create procedures in capsules stored in thte Local Capsules folder.
To create a procedure
Open the Procedure Designer and click the New Procedure button.

Type the procedure name.


Define Actions in the procedure rows. To define an Action, click the Set button or double click
on a line.

Define the desired actions then click the Quit button to close the Procedure Designer.
Click the Save Capsule button to save your Procedure.

Moving an action
You can move Actions defined in procedures rows. Right click on the action to move then drag and
drop the curson on the new line.

Copying and deleting procedures


Using the Navigator tree you can copy a procedure from one Capsule to another or you can delete a
procedure. Right click on the capsule name to view the pop-up window with the list of procedures
contained in the Capsule. Right click on the Procedure name then drag and drop it onto another
Capsule to copy it or drop it to the recycle bin to delete it.
Refer to the Capsules chapter, paragraph Copying and Deleting Capsule screens and Procedures for
more details.

Editing an existing procedure


Open the Procedures Designer then select the desired procedure from the drop-down listbox.

Actions reference
228

Chapter 8 Procedures

Goto

Screen

Select the screen to go to from the list.


Note! This action terminates the execution of the procedure: by
going to another screen the current procedure exits.

Capsule

Allows you to jump to another Capsule. Select the Capsule


name from the listbox. Optionally you can specify a specific
screen name to go to if you wish to open a screen different to
the main screen: after the capsule name type a comma and
then the screen name.
The Get Back option allows to nest Capsules navigation. For
example if you go from CapsuleA to CapsuleB, if get back is
enabled when you exit CapsuleB you return to CapsuleA. Note
that only one nested level is supported.
Note! This action terminates the execution of the procedure,
even when the Get Back option is used.

Goto Row ... Iterations ...

Allows you to define loops in the procedure flow. In the Row


field select a row number to jump to and in the Iterations field
set the number of jumps. In the Row field you must specify a
row number which is above the current row (you cannot jump
forward).
Note that by setting N Iterations, all actions included in the loop
are executed N+1 times.

GoSub Row ...

Allows you to set run an action located in a specific row. When


229

Board 6.1 Manual


this action is found the action found at the specified row is run
the the flow resumes from the next line after the GoSub row.
For example, if in row 10 you set GoSub Row 50, when the
execution flow reaches row 10, the action found at line 50 is
executed then the flow restarts from row 11.
If ... Then ... Else ..

Allows to define a conditional execution flow: test a condition


and set the execution flow.
The test can be defined on a numerical InfoCube:
select the InfoCube from the listbox and if desired
apply a selection by clicking the Refer To button.
Select the comparison operator from the list.
Type the test value in the text are
If the test elavuates to True, the GoTo or GoSub action
specified in the Then row is executed. Click the Else checkbox
to define a GoTo or GoSub action to execute when the test
evaluates to False (the else actio is optional).

Exit Procedure

Exits the procedure. Note that a procedure that doesnt contain


conditional jumps (the IF then else action) doesnt need to
include an Exit procedure command. The procedure will
terminate when all actions in the top-down flow have been
executed.

Exit Capsule

Exits the Capsule. Terminates the procedure and closes the


Capsule.

Select

230

Chapter 8 Procedures

The Select action allows you define a selection that will remain active until another Select action is
made. Each select action replaces the previous selection.
When a procedure is launched it inherits the Select and the DynaBar selections from the screen. Lets
suppose, for example, that a screen has been designed to enter a percentage for calculating sales
commissions and contains a button that runs the actual calculation procedure. The procedure consists
of a single process action that multiplies the Sales InfoCube by the Commission Percentage InfoCube.
If a selection is made before launching the procedure the process will run on that selection.
Select

Allows you to define a Selection on entities.

Reset to Screen

Resets the selection to the last saved selection.

Reset to All

Resets the selection to all occurrences.

Interactive Selection

Prompts the user to make a selection an entity. You can define


an interactive selection on an individual entity or on the entities
list (select &rdquor;..whole list of entities).

Process
Allows you to
Define calculations on InfoCubes, for example to run a cost allocation model or a budgeting
simulation model that take as input some InfoCubes, apply a formula and store the result into
another InfoCube.
231

Board 6.1 Manual


Clear an InfoCube or align InfoCube versions.
Clear an entity

Data Flow

Defines a calculation formula on one or more source InfoCubes and


stores the result to a target InfoCube. The formula is applied for each cell
of the target InfoCube.

InfoCube Align

Allows you to align InfoCube versions: all InfoCube version are


reconsolidated starting from the most detailed version.

InfoCube Clear

Allows you to clear in InfoCube. All cells of the InfoCube are cleared,
considering the time selections only: selections on entities other than time
are ignored.

Entity Clear

Clears an entity; all occurrences are removed, ignoring selections.

The DataFlow process


A DataFlow example: lets consider the following InfoCubes,
Quantity

232

structured by

(Month, Product, Customer)

Standard Product Cost

by

(Year, Product)

Cost of Good Sold

by

(Month, Product, Customer)

Chapter 8 Procedures
To calculate the Cost of Goods Sold as a product of the Quantity sold times the Standard Product
Cost, define the following process:
(a) Quantity
(b) Standard Product Cost
(c) Cost of Good Sold = a*b
BOARD checks the structural congruency before running the calculation: the Quantity and Cost of
Products Sold InfoCubes are based on Month, and the Standard Product cost InfoCube is based on
Year. Board automatically uses the Month-Year relationship to perform the operation between
InfoCubes having a different structure.
The calculation will take place as follows:
&rdquor;For each Month, Product, Customer combination, multiply the Quantity by the Standard
Product Cost for the relative Product in the Year to which the Month belongs.
The automatic use of relationships is not limited to Time Entities, and will be applied to any
relationship defined in the database.
The following rules apply to a DataFlow calculation:
The evaluation of the formula always takes place at the aggregation level of the target
InfoCube. If one or more InfoCubes involved in the formula have different structures than the
target, they will be brought to a congruent level before the formula is evaluated, according to
the following rules:
When a factor has one dimension that the target InfoCube doesnt have, it will be aggregated.
For example: The factor InfoCube is structured by Customer/Product/Month and the target
InfoCube by Product/Month. Before the calculation is run, the factor is aggregated for all
selected Customers.
When the target has a dimension that a factor doesnt have, the factor value is repeated for
each member of the exceeding dimension of the target. For example, if one of the factors is
Commission Percentage, structured by Salesperson/Month, and the target is Commission
Percentage, structured by Salesperson/Product/Month, the same Commission Percentage
value will be repeated for each Salesperson/Month for all Products.
When a factor is structured by a more detailed entity than the target, the factor is aggregated
to the same level of the target. For example, if one of the factors is structured by
Product/Month, and the Target is structured by Product/Quarter, then the factor will be
summed by Quarter through to the Month-Quarter relationship.
If a factor is structured by a more aggregated entity than the target, the value of the parent
occurrence is determined through the parent-child relationship. For example, one factor is
%Royalty structured by Product Brand/Year, the target is Royalty Value structured by
Product/Month, and there is a relationship Product Product Brand. The %Royalty value of
the Brand will be applied to each Product based on its Brand.
If the target InfoCube has a sparse structure, the calculation takes place for the existing
sparse combinations only. At least one calculation factor must be structured with either the
same sparse structure as the target, or a sparse structure that is more detailed than the
sparse structure of the target. For example, a sparse structure consisting of
Customer/Product/Depot is more detailed than the sparse structure made up by
Customer/Product.
The Dynamic Offset is a Data Flow function used to shift InfoCube values in time. The shift can be
absolute, based on a specific date (Absolute Offset option), or relative (Relative Offset option), shifting
values forward or backward for a given number of periods as specified by values in another InfoCube.
The Dynamic Offset function is located in the Advanced setup tab.

233

Board 6.1 Manual

Based On &ldots; field: Choose the InfoCube that specifies the offset from the pull down list.
Relative Offset: Shifts InfoCube values in time based on the number of periods specified in the
InfoCube indicated in the Based On field. The time shift can occur either forward (Forth option) or
backward (Back option) from the previous period. To use the Relative Offset option, the Based On
field must refer to an InfoCube containing integer values.
Absolute Offset: Shifts values to the date specified in the InfoCube indicated in the Based On field.

Print
The Print action allows you to print an object present on the current screen. Select the desired object
from the list: a DataView, DynaSheet or Flowchart.

234

Chapter 8 Procedures
If an entity is present in the DynaBar you can select it from the Page Break option to create a printout
for each occurrence of the selected entity.
The Screen Hardcopy option allows you to print the Capsule screen to a printer or to a file (Bitmap
or JPG file). The files are created in the Board.Loc\Desktop directory.

Launch
The Launch action allows you to run a command.

Data Read
The Data Read action launches one of the following actions
Data Reader protocols
A Batch Reader procedure
Run the relationships Normalize function.

235

Board 6.1 Manual

Data Reader

Select the protocol name from the list. If you select an ASCII protocol,
choose the file to read from the Path/File list box. Note that the files
listed are on the computer where BoardServer is running.

On error

Stop: causes the Data Reader protocol to stop in case a reading error
occurs.
Continue: the Data Reader rejects the violating record and continues
reading the next record.

File Missing

Stop: interrupts the procedure if the source file or table doesnt exist.
Continue: if the source file doesnt exist the process continues with the
next action.

236

Log File

Creates a log file with the rejected records; when all source records are
read successfully no log file is created. The log file is created in the
Board\Dataset\databasename directory.

Batch Reader

Selected the desired Batch Reader procedure from the list.

Normalize tree

Select a hierarchy from the list. This action runs the normalize function
on the selected hierarchy.

Chapter 8 Procedures

Xtract

Print ASCII file

Export an entity, or a hierarchy or an InfoCube to a text file. By default


files are created in the directory Board\Dataset\databasename.
When a data is exported to a text file, Board creates a structure definition
file containing the field name, the starting position and the length of the
extracted data file. The structure definition is in a text file (that can be
opened using Notepad or any other text editor) having the name of the
extracted data file and extension CFG.
This file allows Board to automatically generate a Data Reader protocol
for reading the extracted file: when defining a Data Reader protocol, click
the name of the extracted file, the fields and positions are automatically
generated.

File Printout

Configures the Broadcasting function.


In the text field, type the path of the directory where the Excel files should
be created. It is recommended to let this field blank, which assumes the
default directory Board.Loc\Printout.
In the DataDivew Block field, select the data column of the DataView
object containing the recipients e-mail address.
Enable the Broadcast checkbox to send the reports (the Excel files)
immediately after being created.
Refer to the Broadcasting paragraph for details on the Brodacsting
function.

237

Board 6.1 Manual

More
The More action tab contains miscellaneous actions.

Wait

Defines a delay. The procedure stops for the specified number of


minutes. It is possible to type a factional value, for example 0.5
suspends the procedure for 30 seconds.

Refresh Screen

Generates a screen refresh: all Layouts present on the screen are reexecuted.

Show message

Creates a pop-up window displaying a text message. Type the text


message in the text area and select the type of message window from
the list box. Press the Test button to have a preview of the pop-up
message.

The Broadcasting function


About the Broadcasting function
This function allows to create a spreadsheet report (using the DynaSheet object) and send it to a list of
recipients via email.

238

Chapter 8 Procedures

How to set up a Broadcasting screen


To use the broadcasting function you must create an ad-hoc Capsule screen with the following criteria:
the screen must contain,
One DynaSheet object. This is the object that will be sent to the recipients in the form of an
XLS file. Define one or more worksheets with the desired data Layouts.
One DataView object where the entity by row identifies the recipients; one data column of the
DataView must contain the email addresses of the recipients. You may use either a text
InfoCube or a calculated column where the formula returns a text string producing the desired
email address. This DataView may be (and generally should be) defined Master, so that the
data sent to users is limited for each individual recipient.
One DynaWrite object: type the email body text.
One button with a procedure that launches the action: Xtract/file Printout/Broadcast.
When the broadcasting procedure is triggered, an Excel file is created for each recipient, for each
occurrence of the entities set by row in the DataView:
DynaSheet layouts are executed and if the DataView has the Master option enabled, the
layouts are refreshed for each individual row of the DataView. For example if the DataView
contains the list of Salesman then the reports defined in the DynaSheet will be executed with
a restriction on the Salesman and then sent so that each salesman receives a report
containing its own data only.
If the text column of the DataView contain a text string (i.e. the email address), an Excel file is
created (by saving the DynaSheet object) to a given output directory specified in the
procedure setup. Note that this allows to broadcast the report on a conditional basis, for
example: if a certain column of the DataView is within a given range, then the email address
column is blank and therefore this person will not receive an email or vice-versa the email
address column is non-blank only when a certain threshold is exceeded and therefore that
person will receive the report.
If the Broadcast option has been clicked, then the broadcast.exe program is launched and
starts sending the XLS files as attachments, using the file name as the email address and the
DynaWrite content as mail body text.

239

Board 6.1 Manual

240

Chapter 9 Board Web Server


Board Web Server basics concepts
About Board Web Server
Board Web Server allows users to dynamically analyze and interrogate data held in Board databases
using an Internet browser. Users can view predefined analyses or create ad-hoc analyses on the fly.
Board Web Server provides typical multidimensional analysis functions such as: drill-down, drillthrough, slice-and-dice; including multi-user data entry (write-back) to the multidimensional database,
a necessary feature for web-distributed applications such as budgeting and forecasting.
Board web server can be easily integrated with your existing corporate web site. Board web pages
use Cascading Style Sheets (CSS files) thus allowing easy customization of fonts, colors,
background and other style settings according to your companys corporate image. Board HTTP
service support HTML pages, ASP pages using VBScript and JavaScript and can launch Board web
queries (using a specific URL).

About Board Web Queries


A Board Web query will produce a HTML page containing one or more tables with data, charts and
optionally procedures that the user can launch. A Board Web query definition is stored in a text file,
using a scripting language that allows defining
the tables and charts Layouts (i.e. InfoCubes, algorithms, axes and selections) and optionally
Board procedures that the user can launch,
the navigation features such as drill-down and drill-through paths, links to other Board Web
queries
the page title and page style settings.
Note that it is not necessary to learn the scripting language to create a Board Web query. A Board
Web query can be easily created
using the online Query Builder that provides a guided graphical interface for users accessing
from an Internet browser.
using the Capsule environment: you can create one or more reports in a Capsule screen,
using the standard BoardClient program, then by pressing the F8 key on your keyboard,
Board automatically creates the corresponding script commands which you can publish to
the Web by saving it to a text file in a subdirectory of BoardPub\Root_Web .

The Board Web root directory


The Board web root directory is the home directory of Boards HTTP service. To create the root
directory, run the setup program BoardWebKitSetup.exe on the computer where the BoardMaster
is installed and follow instructions. Refer to the Installation chapter for details on the program
installation procedure.
The setup procedure creates a directory structure &endash; by default c:\BoardPub &endash;
containing subdirectories with files needed for Board Web Server (some ASP, HTML, CSS, JS files
into different subdirectories). The HTTP service home directory is BoardPub\Root_Web and the
default start-up is index.html.

241

Board 6.1 Manual

The Web Server architecture


Overview
The BoardMaster program runs a HTTP service and must be installed on a computer that can be
accessed from the Internet.

Refer to the Architectures chapter for more details.


When a user accesses the home page, he is prompted for his user name and password. BoardMaster
validates the password. After authentication, the user can run an existing analysis or create a new one
on the fly. When a user submits a request, the query request is forwarded to an available BoardServer
that extracts the requested data from the database. The result is then returned to the BoardMaster
that translates the result into an HTML page and sends it back to the user.
Board Web queries definitions are stored into text files (with TXT extension) on the server. When the
user requests a query, the BoardMaster sends the query definition to a BoardServer for execution.
Note that as in the Capsules environment, queries are executed online, not pre-calculated and stored
for reuse.

Notes on Security
BoardMaster provides a standard HTTP service; it does not include a firewall. If you are installing
BoardMaster on a computer connected to your company Local Area Network (LAN), and accessible
via the Internet, it is strongly recommended to install a firewall (a hardware or software layer) to protect
the LAN from undesired external intrusions.
BoardMaster can run, use a standard HTML protocol or the HTTPS protocol providing data encryption.

Getting started
Installation and overview
The main steps to install and configure your Board Web server application are:
Run the BoardServer setup and the WebKitSetup installation programs. Note that this section is
not an installation guide; you must read the Installation chapter for details on the installation
procedure.
Install your Board license. Refer to the Licenses chapter for details.
242

Chapter 9 Board Web Server


Configure your BoardMaster: create the user accounts; configure parameters present on the Web
tab. Refer to the Installation chapter for details on other necessary BoardMaster configuration
settings.
In the BoardMaster WEB configuration tab, type the name of the Board database (or databases)
that you wish to make available through Board Web service. In the [Default PW] field, type the
administrators Board security profile.

Start the BoardMaster, clicking the Start button.


You can now open an Internet browser and connect to your Board web site.

Notes on Database design and content


Duplicate names. If an entity of the database contains occurrences having duplicate descriptions,
&endash; i.e. two or more occurrences having a different code but the same description &endash;
then it is important to setup the entity display option to c+d (code+description). This setting is
configured from the database Entity Definition window.
Names. Some characters may interfere with the HTML code therefore entity names, entity members,
InfoCube names should not contain characters like & (ampersand), the character sequence %20, and
other HTML reserved characters.

Building your Board Management Intelligence Quick


Site
What is Quick Site
Quick Site is a template web site that can be used to provide access to Board databases without the
need for any HTML development. With Quick Site you can safely and rapidly make your Board
databases web-enabled.
Quick Site home page is made up of a navigation tree on the left and the main page frame on the
right.

243

Board 6.1 Manual

Board Quick Site features


Depending on the users account privileges (refer to the Installation chapter), the user may have
access to the following features
Online Query Builder : this function is used for the creation ad-hoc queries or to modify the
Layout of existing analysis.
QueryManager : allows to save and manage queries on the server.
Select : allows to change selections and re-run the query.
Download : allows a user to save a query to his PC in MS-Excel format.
Briefing : allows users to join a Board Briefing session run by a BoardClient.

Quick Site navigator tree


The navigator lists all available analyses, grouped into folders. By clicking on an analysis name, the
corresponding query is executed.

244

Chapter 9 Board Web Server

The folders displayed in the navigator correspond to subdirectories of the BoardPub\Root_WEB


directory. The links contained in the folders correspond to Board web query definition files or HTML or
ASP pages.

Directory structure

Web navigator

Example:
Create the directory named Sales Location as a subdirectory of BoardPub\Root_WEB, and then
include a BOARD web query definition file named &rdquor;Sales by Territory.txt. Restart Board Web
service and the navigator will include the new folder and analysis names.
245

Board 6.1 Manual


The navigator automatically scans two subdirectory levels of BoardPub\RootWeb and creates links
to the Board web queries, ASP pages or HTML pages found in the subdirectories.
Note! All files and folders starting with the underscore (&rdquor;_) character are
ignored: if you need to include some Board Web queries, HTML or ASP pages that
shouldnt be listed as links in the navigator, use file names starting with the underscore
character or place the files in directory starting with the underscore character.

Personal folders and Group folders


A personal folder is a folder that can only be viewed by its owner. To create a personal folder for a
user, enable the &rdquor;Personal Folder option in its account definition (go to BoardMaster, then to
the Security tab).

It is possible to hide a folder to a user group. Create a file named [UserGroup].out (where
UserGroup is the name of a user group) in a directory to hide that directory to the specified user
group. The user group is defined in the account definition, as illustrated.

For example, if you create the file Division1.out in the directory \BoardPub\Root_Web\Sales,
users of the group Division1 will not view the &rdquor;Sales folder. Note that you can include several
files with extension out in a directory to restrict access to more than one user group.

The online Query Builder and Query Manager


Accessing the Query Builder
To access the Query Builder page, open the Online/Query Builder folder from the navigator then click
the link to the database name as illustrated. Note that to access the Query Builder, your user account
must have appropriate access rights (the Query Builder option must be enabled).
246

Chapter 9 Board Web Server

The Query Builder shows the definition of the last Board Web query that was executed or is blank. The
Query Builder page is illustrated hereafter.

Creating a query using the Query Builder


To define a Board Web query,
open the Query Builder,
247

Board 6.1 Manual


if an existing query definition is shown and you wish to clear it, click the Clear button.
select the InfoCubes and algorithms: click on an empty line in the Data tab.

Go to the Axes tab and set the entities to display by row, by column, by page and define the
drill-down paths

248

Chapter 9 Board Web Server

Go to the Options tab and type the title for the current table.

Go to the Chart tab and add a chart if desired. It is possible to define up to three charts per
Layout.

Go to the Select tab and select the desired entity members.

249

Board 6.1 Manual


If desired, define another Layout. Click the Add button to add another Layout to your Web
query. Some limitations apply to queries having more than one Layout. Refer to the MultiLayout paragraph queries for details.

Click the Options button to set more options such as the main title, subtitle, comments and
the Main Selection, which is a selection applying to all Layouts of the Web query.

Click the Execute button to run the query.

Saving a Board Web query


To save a Board Web query, open the Online/Query Manager folder from the navigator then click
the link Save As&ldots; as illustrated. Note that to access the Query Manager, your user account
must have appropriate access rights (the Allow Upload option must be enabled).

250

Chapter 9 Board Web Server

Type the query name in the Title field, select the folder in which to save the query and press the Save
button. Note that by default the query is saved to your personal folder. Saving the query in a different
folder will make it available to other users.

The New folder button will allow you to create a new folder.
The Edit button will allow you to view and edit the querys script.

Warnings!
After saving a new query, you may have to press the Refresh Tree function in order to
view it in the navigator tree.

Query Builder functions reference


251

Board 6.1 Manual


The query builder will allow you to create the Web queries. Refer to the Capsules chapter for details
on the Layout functions and settings.
The Data Setup tab allows the definition of the data columns in the query: select an InfoCube or
define an algorithm and set options.

Available features are:


Data selection

Allows the selection of InfoCubes from the drop down list.

Column algorithm

Type an algorithm, based on other columns. For example,


a/b*100 .
From the drop down list to the right you can select the algorithm
data type.. The available options are:
Numeric: this is the default data type.
Text : select this option if the algorithm returns a text string.
Date : select this option is the algorithm returns a date.
Picture : if the algorithm returns an image file name. By selecting
this option the image is displayed and embedded in the table.
Image
files
must
be
located
in
the
directory
BoardPub\Root_Web\_WebSys\Images.

252

Ranking function

Allows you to select a ranking function.

Entities&Relationships

Allows you to select an entity from the list. From the drop down
list to the right you can select the entity fields to display; the code
part, the description part or both.

Heading

Allows you to type the column title

Width

Allows you to adjust the column width. Type a percentage value


remembering that 100% is the default column width.

Dec digits

Number of decimal digits to display.

Divide by

Dividing factor. This option can only be applied to InfoCubes, not


to algorithms.

Chapter 9 Board Web Server

No totals

Disables the totals.

Allow changes

Enables the data-entry on the InfoCube. Note that data entry can
be enabled only under the following conditions:
- The Layout should only have a single entity by row.
- data entry is permitted only at the InfoCube physical level.
- If the Layout includes more than one data column, there cannot
be entities set by column.
- If an entity is set by column, the Layout can only include one
data column.
- The query cannot be multi-table.

Hide this block

Hides the data column.

Recalc

Recalculates the totals using the formula. This option applied only
to column algorithms. Enable it for example when the column
contains a percentage formula; by setting this option the totals cell
is calculated applying the percentage formula to the totals cells of
the data columns used by the formula.

Sort

Sets the sorting option. The sort option can be set on one data
column only.

The Functions tab contains time and filtering functions

Available features are:


Prev. Year

Applies the Previous year function: retrieves previous year data.

Function

Allows to select one of the following functions:


- Previous Period Value: retrieves data from the prior time period;
the prior day, week, month or other time entity depending on the
InfoCube structure.
253

Board 6.1 Manual

- Yearly Cumulated Value: calculates the year to-date value.


- Yearly Moving Total: calculates the yearly moving total.
- Yearly Moving average: calculates the yearly moving average
which is the yearly moving total divides by the number of periods
in a year (for example 12 periods if the InfoCube is monthly).
- Trend: forecasting function calculating the trend (line) based on
a moving average statistical model.
- Forecast: forecasting function based on a moving average and
exponential smoothing statistical models.
Filter A, Filter B

Filter, allows you to define a minimum and maximum value for the
data column. Note that it is possible to set a maximum of two
filters on a Layout. When you define two filters (on the same data
column or one filter on two different data columns), you must set
the AND or OR operators defining how the two filtering conditions
combine.
Note that Filters can be defined on numeric data columns only:
numeric InfoCubes or algorithms.

The References tab holds the Total by, Detail by and Refer to functions.

Total By

Click the selection button and select the entities defining the Total
by condition.

Detail By

Click the selection button and select the entities defining the
Detail by function.

Refer To

Click the selection button and select the entity and entity member
to refer to. Up to three -Refer to- conditions can be defined.

The Alert tab sets the red/green alert thresholds and the gauges function. To enable the Alert function,
select the Color Coding or the Gauge options.

254

Chapter 9 Board Web Server

Red Alert Value

Values smaller than the given threshold are colored red.

Green Alert Value

Values smaller than the given threshold are colored green.

Blocks

By enabling this option the red/green coloring is applied to the


cells background.

Gauge

Allows to use images illustrate the alert condition instead of the


cell coloring. Type a image file name pattern, for example
MyAlert???.gif.
If the matching files set is made of three files:
- then the first image file is displayed in the cell (replacing the cell
content) when the data value is smaller than the red alert
threshold.
- The second image file is used for values between the red and
green thresholds
- the third image file is used for values greater than the green alert
threshold.
If the matching files set is made of more than three files:
- the last three characters of the files names indicates a
percentage value (from 0 to 100). The image file used is
determined by calculating the percentage value on the range
defined by the thresholds.
The image files set must be in the servers directory
BoardPub\Root_Web\_WebSys\Gauges
You can use images of type JPEG or GIF, including animated
GIF.

The Axes tab allows you to define the row, column and page entities.

255

Board 6.1 Manual

Show all

Enable this option to view all rows of the report, including rows
where all values are null (or zero). This option is usually enabled
on data-entry queries.

Keep Top

Sets the number or rows to display, for example top 10 or top 20


rows. It must be used when sorting has been defined on a data
column.

Autorefresh

This option applies to entities set by page. When enabled, the


query is automatically refreshed when the user changes a page
selection.

More Paging options

For each entity set by page, it is possible to set one of the


following three options:
&endash; Disables the All option from the entity members list,
The All option corresponds to the members sum.
+ The report defaults to the ALL option when it is executed.
* The report defaults to the last item, this option is usually applied
to time entities. For example if the Month entity is by page and 3
months are selected, by setting this option the report defaults to
the last month (most recent).

The Options tab


256

Chapter 9 Board Web Server

Title

Type the layout title

Master

This option allows you to drill from one Layout to other reports. It
applies to multi-table queries only. When the query is executed,
only the master table is visible and by drilling-down on a row, the
other tables of the query are executed limited to the entity item
from master table.

Hide Table

Hides the table; this option is generally used when a chart has
been defined and you do not wish to view the table linked to the
chart.

Cell border

Style format option: removes the table borders.

The General Options tab :

Title

Web query main title.

Subtitle

Web query subtitle.

Note

Text note, supporting multi-line text.

Backcolor

Sets the page background color.

Style CSS

Allows you to reference a CSS file for the Web query.

Picture

Allows you to select an image file to include into the query page.
Image
files
must
be
located
in
the
directory
BoardPub\Root_Web\Pictures .
257

Board 6.1 Manual

Selecting the Use as background checkbox sets the image as


page background.
Hyperlink

Allows you to include a hyperlink in the query page.

Hyperlink comment

Type the text comments that links to the hyperlink.

The Advanced tab

Menulist

The Menulist function allows a user to jump to other Web queries


and if the target query has the same entities set by page, the
target query page selection synchronizes with the origin query
selection.

Menulist Title

Comment text of the Menulist drop-down list object.

Selected Procedures

Allows you to select Capsule procedures to include in the Web


query.

Metabody

Allows you to insert a text in the body tag of the HTML page.
Refer to the Board Web Script commands reference section for
details on the Metabody tag.

Metahead

Allows you to insert a text in the head tag of the HTML page.
Refer to the Board Web Script commands reference section for
details on the Metahead tag.

Display script

Displays the query script in the query page. The script appears in
a text area at the page bottom and can be edited online.

Fundamental end-user functions


Navigating through an existing query
To launch an existing query, open the desired folder and click on the query name in the navigator.

258

Chapter 9 Board Web Server

A page with the message &rdquor;Please wait&ldots; appears immediately: the BoardServer is
retrieving data. When the result is ready it will automatically appear in the main page.

Changing page
Queries can have one or more entities set as paging criteria. To change page, select the desired item
from the drop-down list then press the Refresh button.

259

Board 6.1 Manual

Some queries can have an Autorefresh option which automatically re-runs the query on the item as
soon as the user has selected it. The Autorefresh option can be set from the Axes tab of the Query
Builder.

Changing selection
To change selection of a query, click the Select icon located in the lower part of the navigator.

The Select page shows the database entities list. To make a selection,
Click on the desired entity in the left column to view its members
Highlight the desired items from the entity members list. To make multiple selections, keep
the Crtl key pressed. To make a multiple selection of contiguous items, keep the mouse button
pressed and drag the mouse down
Click on the right arrow to add the desired members as illustrated.

260

Chapter 9 Board Web Server

After making the desired selection on all entities, press the Refresh button to re-run the
analysis.

Note that by default hierarchies are collapsed, click on the


and view all parent entities.

symbol to expand the hierarchy tree

Note! The entities having a large number of members may not be available. This occurs
for entities exceeding the Entity Cut-off parameter found on the BoardMaster Web
configuration.

Saving a Query to a MS-Excel file


The Download feature allows you to export and save a Board query to an MS-Excel file format.
After executing the desired query, click the Download link and follow instructions.

Note that the MS-Excel file only contains data extracted from the Board database in a grid format.
Charts, images hyperlinks and other HTML content are not reproduced in the file. To save a query
with its entire HTML content, use the Internet browsers File/Save as menu option.

Using the Drill-down and Drill-through features


To drill-down (or drill-through), click on the drill-down symbol. A pop-up window showing available drilldown paths and drill-trough protocols appears. Choose the desired drill-down path from the list.
261

Board 6.1 Manual

Note! To go back to the previous level, click the browsers Back button.

For drill-trough protocols three dots &rdquor;&ldots; are the prefix to the protocol name.

Printing a query
To print a query or a graph, use your Internet browsers printer icon or Print menu option.

Data entry options


Data entry queries natively support several input methods, illustrated below.
Single Value Input. To input a single value, type the desired value (or text if the entry InfoCube is of
type text), then press Enter on your keyboard or click the Save button.

Total value with proportional allocation. Enter a value in a row total, column total or grand total cell.
This value is then proportionally allocated to the lines using the existing proportions
(weightings)&endash; similar to the DS&S feature of the DataView.

262

Chapter 9 Board Web Server

Constant value options. On numeric InfoCubes, and only on data entry queries including a single
InfoCube, it is possible to insert values into the field named TOTAL, with the following syntax and
semantics.
= value

The inserted value is inserted to all cells of the report


Example: Typing =100 on the TOTAL cell&ldots;

assigns the value 100 to all cells of the report.

+ value

The inserted value is added to all cells of the report.


Example: Typing +10 on the TOTAL cell&ldots;

263

Board 6.1 Manual

adds the value 10 to all cells of the report.

&endash;
value

The inserted value is subtracted to all cells of the report.

* value

Multiplies the values of all cells of the report by the given factor.
Example: Typing *2 on the TOTAL cell multiplies all values of the report by
2.
Tip! To increase all values by a percentage factor n, multiply values by 1.n
Example, to increase values by 15%, type *1.15

/ Value

Divides the values of all cells of the report by the inserted factor.
Example: Typing /2 on the TOTAL cell divides all values of the report by 2.

How to port Capsules reports to the Board Web queries


Generating the Board Web query script from a Capsule
Reports defined Capsules can be exported into Board Web Query script definition, with some
limitations as described below.
From a Board Capsule screen, press the the [F8] key on your keyboard - or press the PrintScreen
key, then select the Web Query option. This generates the query script corresponding to all report
Layouts from DataView and DynaSheet objects present on that screen. The query script file is
created in the directory Board.Loc\Templates\Query. This file can then be copied to the desired
Board Web folder for publishing &endash; a subfolder of \BoardPub\Root_WEB.

264

Chapter 9 Board Web Server


The automatic generation of the script is meant to facilitate the creation of Board Web Queries. Some
changes to the script might be needed, such as adding the drill-down paths, adding a charts or
disabling the QueryEdit option.
The following rules and limitations apply
Pressing the F8 key, creates a text file with the name [CapsuleName ScreenName].TXT
in the directory \Board.Loc\Templates\Query.
The script file is simultaneously opened with Notepad, to allow for editing of the script.
The commands and Layout options, which are not supported by the script language, are
ignored. The list of supported commands is detailed in the chapter Web Query Script . The
most common Layout options which are not supported by the script are:
The following Layout options located on the Layout Axes tab: Master, Indentation,
Collapse, Totals alignment, Align vertically.
The Logical Data Entry (DS&S) and reverse algorithm
The stored drill-down paths
The ZeroOn option located in the Data/Setup Layout tab
The screen layout and relative position and size of the DataView and DynaSheet
objects is not maintained.
The DataView format options found on the Layout Format tab.

Exporting charts templates


Board Web server does not to allow access to the Chart Designer environment. However, you can
design your chart in a Capsule, set all desired format option using the Chart Designer environment
and then save the settings to a chart template file. Board Web queries can then refer to the chart
templates.
By creating a gallery of chart templates (one template per chart type) you can give a consistent format
to all charts of your Board Web site. When creating a query with a chart using the online Query Builder
end-users can select one of the available templates.
To create a chart template,
Open the Capsule with the desired graph then switch to design mode
Right click on the graph object and select the menu option Templates/Export Chart

265

Board 6.1 Manual

By default, the template file is saved in the directory \Board.Loc\Templates\Chart (on the
computer running the BoardClient). In order to make the template available to Board Web users, copy
the template file in the directory \BoardPub\Templates\Chart of the computer where the
BoardMaster is running.
To use a chart template in a Board Web query:
open the Query Builder then go to the Chart tab and click the advanced chart options button
as illustrated

Select the chart template as illustrated

266

Chapter 9 Board Web Server

Integrating Board Web queries and features to your


Web site
Launching a Web Query from a hyperlink
Board Quick Site, is not the only available method to publish Board Web queries in a web site. It is
possible to freely create HTML pages that include Web Queries, integrating them in your existing
company web site.
BoardMaster executes a Board Web query when the following URL is received:
http://[BoardMasterAddress]/execquery.hdoc?id=Path/QueryName
where Path/QueryName is a Board Web query file, found in a subdirectory of BoardPub\Root_web
.
For example, to launch the Board Web query called &rdquor;Sales defined in the file
c:\BoardPub\Root_Web\Monthly\YearToDate.txt
use the following URL:
http://[BoardMasterAddress]/execquery.hdoc?id=Monthly/YearToDate

Note! Not all browsers support the space character in URL addresses, if the path and file
name include spaces, use the sequence %20 instead of the space character.
For example, dont use
/execquery.hdoc?id=/Sales/Month to date Sales
use the following syntax
/execquery.hdoc?id=/Sales/Month%20to%20date%20Sales

Launching other Board web functions from a hyperlink


To call the Select function use the following URL
SELECT

http://[BoardMsaterAdress]/SelectShow.hdoc
267

Board 6.1 Manual

To call the Select function limited to time entities only use the following
URL
http://[BoardMsaterAdress]/SelectTime.hdoc

To call the Download function use the following URL


DONWLOAD

http://[BoardMsaterAdress]/DownloadXLS.hdoc

To call the online Query Builder use the following URL


QUERY BUILDER

http://[BoardMsaterAdress]/DexA.hdoc?id=DatabaseName

To call the Save as function use the following URL


SAVE AS

HTTP://[BOARDMSATERADRESS]/BQS.HDOC

To call the Refresh Tree function use the following URL


REFRESH TREE

HTTP://[BOARDMSATERADRESS]/REFRESHTREE.HDOC

To call the Briefing logon page, use the following URL


BRIEFING

http://[BoardMsaterAdress]/WebBriefing.html

Board Web Query Script


Creating a BOARD Web Query using the script language
A Board Web Query is defined using the Board script language commands. The script commands are
automatically generated when using the on-line Query Builder; alternatively, you may write the
commands using a common text editor program.
The query definition is a set of script commands that are saved as a text file in a subdirectory of the
BoardPub\Root_Web folder. The file name is used as the query title.
Open the text editor.
Write the query using Board script language commands (refer to chapter Web Query Script
for details).
Save the query script to a text file.
268

Chapter 9 Board Web Server

Tip! To simplify writing the query definition, use the online Query Builder to create the
desired query, then edit the script using a text editor and refine the script by adding the
desired commands and options that cannot be configured through the online Query
Builder.

Notes!
Script commands are not case sensitive; fonts are used to make a script easier to read.
In the examples, script commands and options are courier new bold.
Parameters included in square brackets [..] are optional, but do not type the brackets
when used.

Query script structure


The first line of a query must start with the command Dtb (i.e. Database), followed by the name of the
Board database. Following commands specify the layout of the query: the InfoCubes and algorithms;
the entities to display in rows, in columns and in pages; the selections and then other optional
commands.
The main structure of a query script is:
Dtb
Database name
Show
InfoCube to display. A query can include several lines of this type.
Select
Entity selection. A query can include several lines of this type.
ByRow
Entity to display by row
ByCol
Entity to display by column
ByPage
Entity to display by page
DrillBy
Entity to display as drill-down options
Opt
Query options
The order of commands is generally not relevant, except for the Dtb command that must always be
the first command of a script.
Example of a query:
Dtb Gamma
Show Gross Sales, sort
Show Gross Sales, @py heading &rdquor;Last Year Value
Show (a-b)/b*100, dec 2 heading &rdquor;Variance %
Drillby Product Group, Product, City, Salesman, Customer
byrow State
select Year=2000
graph Pie oncolumns

Refer to the Board Web Script commands reference for the list of commands and commands syntax.

Master and Multi-table queries


269

Board 6.1 Manual


The table command allows you to define multiple Layouts in a single query. In a multi-table script,
some commands have a local scope, limited to the single table and other commands have a general
scope and apply to all tables.
Syntax
Table [Master] [Heading&ldots;]
Local commands &ldots;
Opt Local options &ldots;
Table
Local commands &ldots;
Opt Local options &ldots;
Table
Local command &ldots;
Opt Local options &ldots;
General commands &ldots;
Opt General options &ldots;

Master

In a multi-table query, only the first table can be defined as


Master. The master function is similar to a drill-down. When the
query is executed, only the Maser table is displayed. The user can
then drill from one line of the master table to other analyses, with a
hotlink similar to the drill-down.

Heading

Defines the table header (title displayed above the table in the
HTML page)

Local scope commands

Dtb, ByCol, ByRow,


Select, DrillBy

Local scope options

NoBorder GraphOnly

General scope commands

ByPage, MainTitle, SubTitle, Hyperlink, Tetxnote,


WebPicture, Keep.
Note!

General scope options

Graph,

GraphOnly,

Keep is a synonym of Select but has general scope.

QueryEdit, Preserve

The following example creates a page with three tables:


Table Master Heading Sales By City
Dtb Sales
ByRow City
ByPage Area Manager
Show Gross Sales
Show Sales Packs
Table Heading Historical Products Sales
Dtb Sales
ByRow Product
ByCol Month
Show Gross Sales
270

Show,

Chapter 9 Board Web Server

Table
Dtb Sales
ByRow Product
Show Gross Sales, colhide sort
Show Vertical%, dec2
Keep Year=2001
Notes!
It is not possible to use have data entry tables or include procedures in multi-table queries.
The DrillBy command can only be used on a single table other than the Master table.
The Dtb command may appear in the first Table definition only, in this case the same
database is considered for all tables.
The command Master can only be set on the first table of a multi-table query.

Procedures
A Board Web query can include the run command to launch the execution of a Board Procedure
defined in a Capsule. It can be useful to combine a procedure to a data-entry query. For example, a
query that allows users to enter a budget quantity could include a procedure that immediately runs a
procedure that multiplies the Quantity and Price to obtain the budget amount.
Command syntax
Run ProcedureName
IMPORTANT! The procedure invoked must be defined in a Capsule located in the Main Capsule folder
on the server, and the Capsule must have the same name of the database.
Example
Dtb Sales
Run Increase Budget by 10%
Run Reduce Budget by 10%
ByPage -Year, State
Show Gross Sales
Show Budget
ByRow City
ByCol Month
A query script can include one or more Run command lines.
Three different execution modes are available. The execution mode is defined in the Opt line of the
query.
None

When no options are specified, the procedure is executed on the server and while
it is running the browsers &rdquor;waits for its termination; the mouse pointer
displays a small hourglass until the procedure is terminated. When the procedure
completes execution, the message &rdquor;Done is returned to the browser (or
&rdquor;Error if some errors occurred).

Batch

The procedure/s is/are launched on the server, the browser is immediately


released, and the user can do other queries without having to wait for the
termination of the procedures. A message is returned to the browser that confirms
271

Board 6.1 Manual


the list of processes launched.
The batch option does not notify the user when the procedure is terminated.
Trigger

This option can only be applied in conjunction to a Data entry query. The
procedure/s is/are launched automatically whenever the user enters (and saves)
data in a data-entry cell.
Trigged and Batch options can be specified both in a script, it combines the effect
of the two execution modes.

Procedures are executed within the range specified by the script (in the Select or Keep or ByPage
statements). If the procedure contains a Select action, it will prevail over the script selection. When
creating the Capsule on the server it is recommended to avoid defining selections on the Capsule
screen.

Note! A procedure that executed from a browser cannot include interactive actions, such
as Interactive Selection, Print or similar actions.

Customizing Board Web pages with Cascading Style


Sheets (CSS)
About CSS
Cascading Style Sheets (CSS) is a mechanism for adding style (e.g. fonts, colors, spacing) to Web
documents. All Board Web pages use a CSS file and therefore you can edit the CSS file to change
the appearance of your Board Web site.
Board uses the following CSS files
Board_Style.css This file contains the default style definitions for the Board Web query pages.
This file is located in the directory BoardPub\Root_Web\. Note that Board Web queries can refer to
different CSS files. The script command StyleSheet=cssFileName allows you to specify the desired
CSS file.
Ftie4style.css This file contains the style definitions for the navigator tree pages. This file is
located in the directory BoardPub\Root_Web\.
Selector_Style.css This file contains the style definitions for the Select page. This file is located
in the directory BoardPub\Root_Web\_WebSys.
BQB_Style.css This file contains the style definitions for the Query Builder page. This file is
located in the directory BoardPub\Root_Web\_WebSys.
BQS_Style.css This file contains the style definitions for the Save As. This file is located in the
directory BoardPub\Root_Web\_WebSys.
QBSelector_Style.css This file contains the style definitions for the Select function part of the
Query Builder. This file is located in the directory BoardPub\Root_Web\_WebSys.

The Board web queries Style Sheet: Board_Style.css

272

Chapter 9 Board Web Server


The Board_Style.css file contains the style definitions of all elements of a Board query page. The
elements of Board query pages use classes and the CSS file contains the class name and some class
properties definitions.
To customize the style of your query:main titles, title, tables, cells, images, you should refer to the
following table below:
Class name and property

Object

BODY
BODY.Background

General page body properties.


Page background color.

P.MainTitle
P.SubTitle
P.MenuList
SELECT.MenuList

Main title style


Subtitle style
MenuList style
Menulist options style (items listed in the
MenuList drop-down box).
MenuList object borders, background color.

TABLE.MenuList
P.PageBy
SELECT.PageBy
P.TextNote

Style for the drop-down lists corresponding to


entities set in the PageBy script command.
PageBy items style (items listed in the PageBy
drop-down list)
Text note style

IMG.Drill
IMG.Img01....Img09
IMG.MenuList
IMG.WebPicture

Drill-down image style.


Other images included in the page.
Menulist image style.
Style for the image defined in the command
script webpicture

INPUT.Execute
INPUT.MenuList
INPUT.Refresh
INPUT.Reset
INPUT.Save
INPUT.Numeric
INPUT.NumericTotal

Execute button style


Go button style
Refresh button style
Reset button style
Save button style
Numeric input cell style (part of a table object).
Numeric input cell style for row and column
totals cells (part of a table object).

TABLE.Data

Table corresponding to a report. Multiple table


objects may exist; they are numbered starting
from 01.
Table containing the procedures list. This table
is created when the Run Procedure command is
used.
Details of a procedure table row.
Row header of each Table.Data
Row header of each group of Table.Data
Totals row header of each Table.Data
Report Table.Data rows details
Report Table.Data totals row details

TABLE.Procedure
TR.ProcedureVA
TR.HeaderVA
TR.GroupHeadVA
TR.GroupTotalVA
TR.RowVA
TR.TotalVA
TD.ProcedureLogo
TD.ProcedureName
TD.ProcedureInput
TD.ProcedureExec
TD.ProcedureError
TD.HeaderName

Column containing the Procedure logo


Column containing the name of the Procedure
Column containing the check box to run a
Procedure
Column containing the Procedure result
message
As above, in case of error in the execution of the
Procedure.
HeaderName column of each Table.Data
273

Board 6.1 Manual

TD.HeaderCol
TD.HeaderTotal
TD.Group1Head &ldots;..Group9Head
TD.Group1HeadName&ldots;&ldots;.
&ldots;..Group9HeadName
TD.GroupTotalName
TD.GroupTotalData
TD.GroupTotalTotal
TD.Hyperlink
TD.MenuList
TD.RowName
TD.RowData
TD.RowDataGreen
TD.RowDataGreenBlock
TD.RowDataRed
TD.RowDataRedBlock
TD.RowTotal
TD.SubTitle
TD.TotalName
TD.TotalData
TD.TotalTotal

(corresponding to a report)
HeaderCol column of each Table.Data
HeaderTotal column of each Table.Data
Header columns for groups 1 to 9
Title header column for groups 1 to 9
Column name of the total row, of the group.
Data column of the total row, of the group.
Column total of the total row, of the group.
Hyperlink style.
MenuList row text.
Column header name of the detail rows of a
report
Data column of the detail rows of a report
Data column of green cells deriving from the
alert function.
Data column of green cells deriving from the
alert on blocks function.
Data column of red cells deriving from the alert
function.
Data column of red cells deriving from the alert
on blocks function.
Totals rows of a report
Subtitle row
Header column of the totals row of a report
Totals row of a report
Grand total row of a report

The navigator tree Style Sheet: Ftie4style.css


The Ftie4style.css file contains the style definitions of the Navigator tree object. The navigator
uses the following classes:
TABLE.Folder
TABLE.Item

A tree folder.
A tree item.

Adding JavaScript functions to Board Web queries


It is possible to create JavaScript functions and use them in your Board Web query pages. All Board
Web query pages include the JavaScript file Custom.js, located in the BoardPub\Root_Web
directory. Define your JavaScript function in the Custom.js file then use the metahead and
metabody Board script commands to invoke your function.
For example, suppose you want to add the JavaScript function MyFunction() that should run the Board
query page is loaded. Open the custom.js file and write the code of the function. Open the query script
file and add the command
Metabody onload=JavaScript:MyFunction();

274

Chapter 9 Board Web Server

Board Web Script commands reference


Database
Dtb [alias ,]DatabaseName
[alias]

Optional parameter. Alias of the folder containing the database. When omitted
the value Main is assumed.

DatabaseName

Compulsory parameter. It is the name of the Board database.

Example:
Dtb main, Gamma

Select
Select EntityName = codes or description list
Synonym: Sel
This specifies the selection and must be followed by the name of an entity, then the equal or the space
character, and then the list of items to select separated by a comma. Both the codes or descriptions of
an entity can be used. The specified values are searched on the entity code field first then on the
description field.
Example:
select City=San Diego, New York
Selections on Month entity can use the format YYYYMM or MMM.YY:
Select month=200001

selects January of 2000.

Select month=Jan.00

selects January of 2000.

Note!
A script can include several Select lines.
On time entities, it is possible to select a range using:
Select FirstOccurrence to LastOccurrence
When using the to command, the time entity code must be used, i.e. for the Month entity, use
the format YYYYMM, for the Year entity use the format YYYY etc.
Example: to select months from January 2000 to June 2000
sel month =200001 to 200006

Show
Show InfoCube [, properties]
Show algorithm [, properties]
Displays an InfoCube, an algorithm or an entity. Can optionally be followed by the comma and a list of
properties to apply to the column.
Note! The order in which properties appear is not relevant.
275

Board 6.1 Manual


Properties
heading
&rdquor;Specifies the column header.
&ldots; &rdquor;
Example: Show Sales Value, heading &rdquor;Dollars invoiced
Sort

Sorts rows in descending order. This parameter can only be applied to


numeric InfoCubes.

Sort ascend

Sorts rows in ascending order. This parameter can only be applied to


numeric InfoCubes.

DecN

Number of decimals to display.


Example: Show Growth, dec2

colhide

Hides the column.

/nnn

Divide by factor. For example, to divide an InfoCube by 1000:


Show Sales Value, /1000

ZeroOn

Displays the zero character in cells having a numerical null value.

redN greenM [block]

Enables color-coding. Following red and green specify the threshold


values for red and green coloring. Color-coding is applied to the fonts by
default. The optional parameter block applies coloring to the cells
background. The gauge &rsquor;filename option allows you to specify
an image file to use instead of the coloring.
Example: Show a/b*100, red 25 green 75 block
Show a/b*100, red 25 green 75 block gauge &rsquor;smile???.gif

AsText, asDate

Applies to algorithms only. Defines the data type of the algorithm.

asPicture

AsText indicates the algorithm returns a text string


AsDate indicates the algorithm returns a date value
AsPicture indicates the algorithm returns an image file name. The image
files
must
be
located
in
the
directory
BoardPub\Root_Web\_WebSys\Pictures

DataEntry

Enables data entry on the InfoCube, with the following limitations:


The InfoCube must be numerical (excluding MXC) or text data type.
The InfoCube is viewed at the physical level, not at an aggregated
level.
The query only has a single entity set ByRow.
If there is an entity set ByCol, the query must include a single
InfoCube.
If the query includes more than one InfoCube or algorithm (more than

276

Chapter 9 Board Web Server


one Show statement), there cannot be entities set ByCol.

Rule= rule name

Specifies the name of a BOARD calculation Rule to apply to the InfoCube.

@pp

Applies the Previous Period function.

@py

Applies the Previous Year function.

@ycv

Applies the Yearly Cumulated Value function.

@ymt

Applies the Yearly Moving Total Value function.

@yma

Applies the Yearly Moving Average function.

@trend

Applies the Trend function

@forecast

Applies the Forecast function.

Last Value

Applies the Last Value function.

offset

Applies the offset function

Cycle

Applies the cycle function

Filter(conditions)

Defines a filter on the column. Filters can be defined on one or two


columns of the query (on two Show command lines).
When the filter is defined on a single Show line, the syntax is:
Filter(>MinValue1;<MaxValue1;and/or;>MinValue2;<MaxValue2)
This command allows you to define one or two ranges and combine the
two conditions with the logical operators AND or OR. For example:
Show Sales, Filter(>10;<100;OR;>1000;<2000)
shows lines having
sales between 10 and 100 or between 1000 and 2000.
When the filter is defined on two Show line, the syntax is:
Filter(AND/OR;>MinValue1;<MaxValue1)
Filter(AND/OR;>MinValue2;<MaxValue2)
For example,
Show Sales, Filter(AND;>1000;<2000)
Show Quantity, Filter(AND;>10;<100)
shows lines where the Sales value is between 1000 and 2000
and the Quantity value is between 10 and 100.

DetailBy entityName

Applies the Detail By function. Example: Show Sales, detailby Month

277

Board 6.1 Manual

Allows you to specify a column width as a percentage of the default width.

Width
Examples:

show Gross Sales


show Gross Sales, @py /1000 dec 1
show (a-b)/b*100, heading "Var.%" red80 green120 block dec1

ByRow
ByRow Entity Name, &ldots;
Specifies which entities should be displayed by row in the report. Use the comma character as a
separator to specify more than one entity name.
Example:
ByRow Region, City

ByCol
ByCol Entity Name, &ldots;
Specifies which entities should be displayed by column in the report. Use the comma character as a
separator to specify more than one entity name.
Example:
Bycol Month, Quarter

ByPage
ByPage Entity Name, &ldots;
Specifies which entities should be displayed by page in the report. Use the comma character as a
separator to specify more than one entity. When two or more entities of the same hierarchy are
present, the parent entity should come first.
Example:
Bypage Year, Month

Drillby
DrillBy Entity1, Entity2, EntityN, .. Drill-through protocol&ldots;
Defines drill-down option paths. Use the comma character as separator to specify more than one
entity name. Drill-trough protocols can also be specified. To specify a drill-through protocol type
&ldots;protocol name.
Example:
DrillBy Region
Only one drill-down option (the entity Region) will be available to the user.
Drillby Region, City, Customer, Product Group, Product, &ldots;DrillThru-to-Invoice
The user will be given the option to drill-down to any of the listed entities and to drill-through using
the protocol DrillThru-to-Invoice.

278

Chapter 9 Board Web Server

Graph
Graph [type] [data series] [width] [height]
Creates a graph displayed above the report. By default, a line graph is created by plotting values from
the last row of the report (generally the Totals row).
Optional parameters
Type

When omitted, the default type is Line. The following types are supported:
Line, Bar, Pie, Area

2D

Draws a 2 dimensional chart.

data series

When omitted, the data series for the graph are assumed to be by row. To create
a graph with data series by columns use the command:
OnColumn

Width N

Specifies the graph width as a percentage of the default width.

Height M

Specifies the graph height as a percentage of the default height.

Using

Specifies a chart template file that defines the chart style. The chart template file
must be located in the directory BoardPub\Templates\Charts

Detail

Creates a multi-line graph, plotting on the graph one data series for each row of
the report. This option can be used only on tables having one column, one entity
ByRow and one entity ByColumn.

Options
Opt [parameters]
Specifies optional parameters for the query, as follows:
AllRows

Displays all occurrences of entities set ByRow, including lines where all values are
null or zero &endash; by default, lines that have all null or zero values are not
displayed.

ShowAll

AllRows and ShowAll are synonyms.

KeepTop

Filters lines of a sorted report and displays only the specified number of lines.
Example:
The following query orders Customers from high to low then displays the top 20
Customers.
Dbt Gamma
Show Sales Values, sort
ByRow Customer
279

Board 6.1 Manual


opt keeptop20
EditQuery

Displays the query script in the results HTML page, under the report table or graph.
The script can be edited and the query can be re-launched but changes are not
saved to the server. To save changes, the Query Manager must be used.

EditQuery

Synonym of EditQuery

NoTable

Hides the table containing the report data. This option is generally used in
conjunction with the Graph statement. It is functionally equivalent to the GraphOnly
statement.

TableHide

Synonym of NoTable.

HideTable

Synonym of NoTable

Graphonly

Shows the graph only and hides the corresponding source table. This option can be
used only if the query includes a Graph command.

DataEntry

Enables data entry on all InfoCubes, with the following limitations:


The InfoCube must be numerical (excluding MXC) or text data type.
The InfoCube is viewed at physical level, not at an aggregated level.
The query only has a single entity set ByRow.
If there is an entity set ByColumn, the query must include a single InfoCube.
If the query includes more that one InfoCube or algorithm (more than one Show
statement), there cannot be entities set ByColumn.
Note! This option can be included in the properties of an InfoCube to enable data
entry only on that InfoCube.

Run
run [procedure name]
Allows the user to run a Capsule Procedure. A query script can include multiple run command lines.
The specified procedure must be defined in a Capsule located in the Main folder and having the same
name of the database.

Backcolor
Backcolor [color]
Determines the page background color. Recognized values for this option are grey, lightgrey, white,
blue, and green.

MenuList
280

Chapter 9 Board Web Server


MenuList [Foldername/Queryname], [Foldername/Queryname],..comment
Creates a drop down list that allows users to jump to another existing Board Web query. Note that if
the current query and the target query have the same ByPage entities, when the user jumps to the
target query the PageBy selections are maintained on the target query.
[Foldername/Queryname]

Full name of a BOARD Query file. Use the comma character to


specify multiple BOARD Queries.

&rdquor;comment

Text added to the right of the menu list.

Page header options


If header options are present, they are reproduced in the following order:
mainTitle

Query main title.

subtitle

Text that is displayed in black medium font under the main title.

textnote

Text that is displayed in small black fonts. The text can be multi-line text.
Note! This command must be the last command of the script.

webpicture

Specify the file name of a picture to include in the page. Image files must be
located in the sub folder \BorardPub\WebPic.

hyperlink

Includes a hyperlink to a URL. Optionally after the URL, type a comma followed
by the text for the hyperlink.

Example:
dtb gamma
byrow City
bycol Month
show Gross Sales
Select Year= 2004
maintitle Monthly Sales of 2004 per City
webpictire Logo.gif
subtitle Geography split by City
hyperlink www.mycompany.com
textnote Sales figures refer to invoiced value before returns

StyleSheet
StyleSheet filename
Allows you to reference a Cascading Style Sheet (CSS) file. The CSS file must be located in the
BoardPub\RootWeb directory.

MetaHead
MetaHead Text..
281

Board 6.1 Manual


Allows you to insert a text string in the head section of a Board Web query HTML code.
For example, you may include a javascript file declaration in your Board web query page.
metahead<SCRIPT LANGUAGE="JavaScript1.2" SRC="MyScriptFiles.js"></SCRIPT>

MetaBody
MetaBody Text...
Allows you to insert a text string within the body tag of a Board Web query HTML code.
For example, you may invoke a javascript function on the OnLoad event of your Board web query
page.
metabody onload="JavaScript:MyFunction();"

Single Sign-On (SSO)


SSO Basic concepts
Board Web Single Sign-On (SSO) allows users that have logged-on a web application through their
browser to access a Board Web application, without needing to type their username and password a
second time.
For example, suppose you have a website which performs user authentication in order to provide
access to some restricted services such as a webmail or a CRM application. Suppose you also have a
Board WebServer application, also requiring users to authenticate before they can access Board
reports. Thanks to the SSO once the user has successfully authenticated on your primary web
application, he can link into the Board Web pages without having to type his username and password
a second time. The authentication is delegated to a single centralized server making your Board Web
application fully integrated with the other existing web services. However if the user accesses the
Board Web application directly (through a direct link to a Board Web page), without first logging on the
usual authentication server, he will be prompted his username and password.
To implement multi-domain, single login support, you must share cookies between domains using their
domain property. This works only if the domains have a common top-level and second-level domain
names. For example, the top-level domain name for mycompany.com is .com, and the second-level
domain name for mycompany.com is mycompany.com. Therefore, sales.mycompany.com and
board.mycompany.com both share the same top-level and second level domain names and
therefore can share cookies.
When sharing cookies between domains, you must share at least two domain levels. However, you
can share more than two domain levels.
Two domains such as www.ycompany.com and www.mycompany.uk cannot share cookies
because their top-level domain names (in this case .com and .uk) are dissimilar. In this scenario, the
user is required to log in again when switching between these domains.

How SSO works


The Board Single Sign-On is based on the usage of cookies:
The user logs-on the web-server which performs the authentication.
if authentication is successful, an encrypted cookie named BoardSSO is sent on the users
browser. The cookie contains the username and password, both encrypted with a server's
private Key. The methods to create the cookie are described in the following sections.
When the user links to the Board Web site or opens a Board query, Board WebServer
interrogates the BoardSSO cookie.
282

Chapter 9 Board Web Server


If the BoardSSO cookie is found, it is sent to the server and its contents is un-encrypted and
verified.
If the username and password from the cookie corresponds to an existing Board WebServer
user then access to the Board WebServer pages is granted immediately (succesful single
sign-on) .
In case the user is not a registered Board WebServer user or in case the password in
incorrect, then Board WebServers logon window appears.

Single Sign-On schema

How to setup SSO


To setup SSO,

Open BoardMaster, go to the WEB tab and click the "SSO, SSL" button
On the SSO configuration window, click the button named "Create SSO File" as illustrated

283

Board 6.1 Manual

A message box will indicate that the BoardSSO.txt file has been created. This file is the
private KEY used to encrypt the cookie content which you will need to copy on the server
performing the authentication. The file is a plain text file containing a random sequence of 65
characters. The BoardSSO.txt file is created in the System directory, which usually is
c:\WinNT\System32 or c:\Windows\System32.
You have completed the setup Board WebServer for SSO, you now need to set up the process to
create the BoardSSO cookie on the server that performs the user authentication.
Add to your Web application, a piece of code that, after the user has successfully
authenticated, will create a cookie with the following contents:
BoardSignOn = [the encrypted username and password];
Domain = [domain name, for example mysite.com];
Expires = [cookie expiration time in milliseconds];
Path =;
Note that instead of writing your own code you can use the Java Class or the ASP page
provided as examples in following sections.
To encrypt the username and password use the followign algorithm:

Example:
284

For each letter of the username, convert it to its ASCII value and add this
number of the ASCII value of the letter found in the same position in the
BoardSSO.txt file.

convert this number to a 5 characters string with leading zeros.

concatenate the 5 character strings computed for each letter,

after encrypting the last letter of the username, add the character *
(asterisk) as a separator,

go through the same algorithm to encrypt the password.

Chapter 9 Board Web Server


Name= Mario
Password= Rossi
BoardSSO.txt:
YPCDWPGXHZUMFWDKDGBSHVDPVUYNVJTSFNJWLOCDYOZARZIOMXDWMCZLKZSFOYZ
V
The encryption algorithm starts with the first letter of the name, the M. Its ASCII value is 77. The first
letter of the string found in the BoardSSO file is Y and its ASCII value is 89. The sum is 166 which
after conversion to a 5 character string with leading zeros is 00166. Repeating this process for all
letters will produce the following:
M (77) + Y ( 89) = 166 --> &rdquor;00166
a (97) + P (80) = 177 --> &rdquor;00177
r (114) + C (67) = 181--> &rdquor;00181
i (105) + D (68) = 173 --> &rdquor;00173
o (111) + W (87) = 198 --> &rdquor;00198
&rdquor;*
R (82) + Y (89) = 171 --> &rdquor;00171
o (111) + P (80) = 191 --> &rdquor;00191
s (115) + C (67) = 182 --> &rdquor;00182
s (115) + D (68) = 183 --> &rdquor;00183
i (105) + W (87) = 192 --> &rdquor;00192
The resulting character string which will be inserted in the cookie's BoardSignOn property is
&rdquor;0016600177001810017300198*0017100191001820018300192

Source code samples to create the SSO cookie


Hereafter you can find the code of an ASP page that creates the Board SSO cookie. The ASP page
uses JavaScript to create the cookie and VBScript to invoke a Java class that performs the encryption
of the username and password.

<%@ LANGUAGE =VBScript %>


<% OPTION EXPLICIT %>
<%
Dim objBoardSSO
Dim strID, strPwd, strAuth
Dim strParEnc
Set objBoardSSO = GetObject("java:BoardSSO") ' CALL THE JAVA CLASS
%>
<script Language="JavaScript">
<!-var today = new Date();
var expiry = new Date(today.getTime() + 2 * 60 * 1000); // 2 minutes
// here you set the expiration time for the cookie
function SetCookie (value) {
285

Board 6.1 Manual

document.cookie = "BoardSignOn=" + escape(value)+";


expiry.toGMTString()+"; path=; domain=MyCompany.com"

expires="

// The domain must be changed


}
// -->
</script>
<HTML>
<BODY>
<FORM NAME="formlogin" METHOD="POST" action="menu.asp">
<HR>
<CENTER>
<H3> SSO Board ASP</H3>
</CENTER>
<HR>
<%
strAuth = "ok"

' example, to show the sso method

strID = Request.Form("ID")
strPwd = Request.Form("PASSWORD")
' Authentication
' If OK then calls Java class and writes the cookie
if ( strAuth = "ok") then
strParEnc = objBoardSSO.Encrypt(strID,strPwd)
%>
<SCRIPT LANGUAGE="JavaScript">
SetCookie('<%=strParEnc%>');
</SCRIPT><P>
<a
href="http://BoardWebServer.MyCompany.com"><h1>Redirect
WebServer </h1></a>

to

Board

<%
end if
%>
</FORM>
</BODY>
</HTML>

The BoardSSO.class must be copied into your WinNT\java\trustlib or Windows\java\trustlib


directory.

286

Chapter 9 Board Web Server


The following code can be compiled with Sun Java 1.3

import java.lang.System;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class BoardSSO
{
public String Encrypt(String uid, String pwd) throws IOException
{
FileInputStream pKey = new FileInputStream("BoardSSO.txt");
int inBytes = pKey.available();
byte inBuf[] = new byte[inBytes];
int bytesRead = pKey.read(inBuf,0,inBytes);
String encode = new String(inBuf);
String pRes = new String();
String pCon = new String();
int base;
int shift;
int decode;
for(int i=0;i<uid.length();i++)
{
base

= (int) uid.charAt(i);

shift

= (int) encode.charAt(i);

decode = base + shift;


pCon = "";
pCon

= pCon +

decode;

for(int y=0;y<(5-pCon.length());y++) { pRes = pRes + "0"; }


pRes

= pRes +

decode;

}
pRes = pRes + '*';
for(int i=0;i<pwd.length();i++)
{
base

= (int) pwd.charAt(i);

shift

= (int) encode.charAt(i);

decode = base + shift;


pCon = "";
287

Board 6.1 Manual

pCon

= pCon + decode;

for(int y=0;y<(5-pCon.length());y++) { pRes = pRes + "0"; }


pRes

= pRes +

decode;

}
return pRes;
}
public static void main(String args[])
{
/*
}
}

288

*/

Release Notes
Release notes for version 6.1
Upgrading to version 6.1 instructions

Capsule and Database compatibility


Board databases and Capsules created with prior releases (6.0 or prior) are fully compatible
with version 6 and do not require any migration or other change.
Capsules are not backward compatible: a Capsule which is created or edited (opened then
saved) with version 6.1 cannot be re-opened using any earlier version.
Databases are backward compatible: it is possible to create or edit a database using version
6.1 and then open and edit it using a prior version 6.0 however the new features of 6.1 will
clearly not be available.

Client-Master-Server compatibility
The BoardClient version 6.1 must connect to a BoardMaster of the same version and vice-versa.
It is recommended to upgrade to version 6.1 the server running the BoardMaster and then deploy
BoardClient version 6.1 to all client PCs.

Upgrading to version 6.1


download the setup programs from the download area of the web site,
run the BoardServer installation program on the server.
run the BoardClient installation program on the client computers
if you are using Board WebServer, run the BoardWebKitFiles installation program.
It is recommended to upgrade the server running BoardMaster first and then after upgrade the
BoardClient installations.

Notes
When upgrading a PC or a server from any earlier version you must not un-install the Board
license. All currently installed licenses (version 6, version 5 or version 4) are fully compatible
with version 6.1 therefore after running the BoardClient or BoardServer installation programs
you can start using version 6.1 immediately.
It is possible to run the installation procedures as a background process that doesn't require
any user interaction (this technique is referred to as "silent mode" install). Refer to the
following knowledge-base article for details: How to run Board Setup in silent mode.

What's new in version 6.1

ETL on RDB Infocubes protocols


The ETL protocol can now be defined for protocols of the RDB InfoCubes and the ETL
configuration is accessible from within the Options tab of the ODBC protocol configuration
window as show in the following picture.

289

Board 6.1 Manual

Number of InfoCubes in a database


The maximum number of InfoCubes which can be defined in a Board database has now been
increased from 256 to 999.

Drill-through in web queries can be configured using the Web


Replicator (F8)
The Web Replicator function [F8], now allows to select a drill-through protocol from the list of
existing protocols defined in the database and then includes it in the query script. Click in the
Drill-Through Get List button then select the desired protocol from the drop-down list.

Changes in the interface of the Database Security


The interface and functionality of the Database Security function has been changed to
improve the management of a large number of profiles.
The existing security profiles are now listed in a table on the left-hand side of the window. By
clicking on a profile name, the profile settings are displayed in the right-hand side table where
they can be edited. The property formerly labeled "Password" has now been renamed
"Profile" but is functionally unchanged.

290

Release Notes

The profiles list can be sorted by clicking the Sort button and searched.
To add a new profile, click on an empty row in the Profile table (left-hand side) then define the
profile settings on the right table.
To delete an existing profile, delete the profile name from the right-hand side table.

Dynamic selection on Security profiles


A Dynamic Selection on a security profile is a function which allows to create a parametric
selection on an entity, based on the user's log-on name. The function creates a Select by
matching the user's username to a chosen entity of the database. The username is searched
in the description field of the chosen entity. This feature allows to create a single security
profile for all users having identical privileges differing only in the data range which can be
viewed. For example, suppose you need to create security profiles for area managers, giving
each area manager access to its own data only. In the Board database, you need to create
an entity containing the names of the area managers (for example named Area Manager),
then you create a single security profile, AREAMGR, which uses the dynamic selection on the
Area Manager entity. When a user which is associated to the AREAMGR profile logs-on, its
security profile will dynamically inherit a selection on the Area Manager entity item
corresponding to its own username therefore all InfoCubes having a dimension linked to the
Area Manager entity will be filtered on that item.

Note that if the username is not found in the chosen entity members then 0 members are
selected therefore all InfoCubes having a dimension linked to the dynamic selection entity
become inaccessible.

Dataview word-wrap of row headers columns


The Dataview object now supports word wrapping on the first column, containing the row
headers. To enable word wrapping, tick the check-box located in the Format tab of the Layout,
as shown in the following picture.

291

Board 6.1 Manual

When word wrap in enabled, the row height is adjusted to fit the entire text contained in the
cell which would otherwise be truncated.

Infocube Xtract in floating point format


The procedure action Infocube Xtract can now be configured to extract data in floating point
format. To enable this option, tick the check-box as shown in the following picture.

This option applies to numeric InfoCubes only.

OLE DB for OLAP support (ODBO)


Board Datareader now supports importing data from an OLE DB for OLAP (ODBO) provider
data source. The ODBO connectivity is supported both by the ODBO Datareader

292

Release Notes
To import data from ODBO data source,

create an ODBC Datareader protocol (or RDB InfoCube protocol),

define the ODBO connection string using the OLE-DB Wizard and connect to the
ODBO data source,

the list of cubes present in the data source is shown in the RDB window (where the
list of relation tables is usually displayed for ODBC providers)

Select the desired cube from the list,

Select Board's InfoCube and entities to feed (or to map in case of an RDB
InfoCube). Note that it is only possible to feed (or map) a single Board InfoCube in a
protocol.

Drag and drop the dimensions and measures of the ODBO data source in the same
way you drag & drop table fields in an ODBC protocol.

The Datareader automatically creates an MDX statement however it is necessary to


manually edit the statement to comply to the following rules and syntax:

the MDX statement must sue a single axis, AXIS(0),

each field of the statement is sequentially matched to the entity or InfoCube


in the protocol,

the code part of a Board entity is populated by retrieving the unique ID of the
member from the corresponding MXD field,

the description part of a Board entity is populated by retrieving the caption of


the member from the corresponding MXD field,

the InfoCube must be the last field in the protocol definition and the MDX
statement must return one measure only,

if you include in the protocol both the code and description of an entity, they
must be one after the other.

293

Board 6.1 Manual

Refer to the Board database "Adventure Works.Bmi" for examples of Datareader


protocols and corresponding MDX statements. The "Adventure Works.Bmi" database can
be downloaded from the online knowledge base.

LDAP and AD Authentication


This feature allows to set up your Board user accounts using the same username and
password used to connect to the network, avoiding to store user passwords in BoardMaster.
Only the username of your Board users need to be stored in the BoardMaster Security and
the passwords are verified against the Domain Controller (DC) or LDAP server. For details,
read LDAP and AD authentication.

Dataview Dynamic Format: Headers and Totals can be formatted


It is now possible to format headers, totals, subtotals and grouping rows of a DataView using
the Dynamic Format function. Open the Layout of a Dataview, go to the Format tab, select the
Dynamic option then select the headers, labels, subtotals or total rows and then apply the
required formatting using the available format designer functions.
294

Release Notes

Dataview Layout now supports text functions Left, Right, Mid


The Column algorithm of a Layout now supports the use of the text functions LEFT( ), RIGHT(
) MID( ), in reports (DataView, Graph, etc..) and in DataFlow calculations.
LEFT(text, num_chars) , returns the leftmost characters from the specified text.
RIGHT(text, num_chars) , returns the rightmost characters from the specified text.
MID (text, start_position, num_chars) , returns the specified number of characters from a text,
beginning with the specified starting position.

Layout Infocubes listed


When configuring a blank Layout, it is now possible to go to the Axes tab and drag&drop one
or more entities to the axes, before selecting any InfoCubes in the columns. In this case the
when setting afterwards the columns of the Layout only the InfoCubes dimensioned by the
selected entities will be listed. For example, if you start configuring a Layout by setting the
entity "City" in rows or columns, then only the InfoCubes having City as dimension will be
listed in the InfoCubes selection list.

Lite+ and Lite licenses functionality


It is now possible to grant to users having a Lite+ license, access to the Layout of a DataView
report. The user can make changes to the Layout such as changing axis or adding a column
to the report however for security reasons the Lite+ user is not authorized to save such
changes to the Capsule (they will be lost upon closing the Capsule screen). Note however
that the user may open the Layout of a DataView, click the copy button then open the
DynaSheet++ or DynaWrite++ environments, paste the Layout and then save the report
locally as a personal DynaSheet++ or DynaWrite++ document.
To grant access to the Layout to users having a LitePlus license, go to the Options tab of the
BoardMaster program and tick the checkbox named "Licese LitePlus / Enable Layout".

It is also now possible to deny to users having a Lite or LitePlus license access to the
DynaWrite++ or DynaSheet++ environments, to do so, go to the Options tab of the
295

Board 6.1 Manual


BoardMaster program and tick the checkbox named "Licese Lite / Disable DynaSheet++ and
DynaWrite++".

Bug Fixes and changes of version 6.1

296

Security. An error that could cause the unauthorized access to the database security panel of users
having a Lite+ or Lite license has been fixed.

System robustness. The communication protocol between the BoardClient <--> BoardMaster <-->
BoardServer programs has been changed and optimized to provide stronger robustness. The
capacity of the BoardMaster in handling a large number of simultaneously connected users has
improved. The auto-resume function has also been improved in robustness and sophistication, the
system is now able to grant higher availability rates on highly concurrent systems.

STO. When, while entering data through an STO object, a validation criterion is not met (therefore
saving is refused), the STO data in the Dataview is no longer refreshed even if the "Refresh" option
is enabled, so that the data which has been input isn't lost and can be corrected.

Datareaders and MXC Infocube. An error caused by the execution of a Datareader having one or
more entites with Append and without Infocubes launched immediately after another Datareader
feeding an MXC Infocube has been fixed.

WEB. When using Board web Server with the HTML theme (this setting is located in the
BoardMaster's Web tab), the drill-down icon was incorrectly displayed also on the totals row (which
cannot be drilled) for databases where the time range language was set to any language other than
English.

WEB. An error of the data dictionary translation (Language DD) function in the Web environment has
been fixed.

BoardClient configuration window. The text field "Write program path" where to type the path
of the default word processor program has been increased in length.

Chart in Dynasheet++. An error occurring on charts created on a sheet of a DynaSheet++


document provoked by the presence of empty cells has been fixed.

New screen. When attempting to copy a screen from one Capsule to another, if the target Capsule
already contains a screen having the same name of the copied screen a warning message now asks
to confirm the action before replacing the target screen.

Procedures copy. An error provoked by the copy of a procedure between two Capsules having the
same name but located in different folders has been fixed.

Capsule save. A case of possible loss of the procedures, occurring when saving a Capsule after
accessing a database design function, has been fixed.

Capsule Tree. The very first Capsule created on a newly installed system, was not listed in the
Capsule Tree in case there were no subfolders of the Main capsule folder.

Capsule Tree. An error occurring after copying a Capsule through the right-click-drag&drop on the
Capsule Tree window and which was incorrectly displaying hidden folders, has been fixed.

Capsule Tree. An error occurring after multiple repeated copies of screens and procedures and
which could provoke instabilities of the BoardClient has been fixed.

Capsule Tree. Capsules which name starts with the underscore character, are not listed in the
Capsule Tree but are accessible through the "Goto Capsule" action of a procedure.

Dynawrite++. An error of the Current Selection function used in a Dynawrite++ document has
been fixed.

Dynawrite ++. An error in the Dynawrite++ object occurring after defining a header in the document
has been fixed.

FlowChart Value. An error in the display of decimal values on a FlowChart area and occurring on
systems having the comma as decimal separator has now been fixed.

Release Notes

Flowchart area. An error causing the following error message no HWD bound to this object,
occurring in design mode while overlapping a floating pane drag&drop onto a flowchart area has
been fixed.

Graph object Standalone Layout. Changing the header text of a column which was previously set
in the Graph tab, was clearing the setting.

Folder object: An error of the Capsule designer which could block removal of an empty tab of the
Folder object has been fixed.

Drill-to child screen. An error causing the loss of the master function of a Dataview and occurring
after closing a child screen has been fixed.

Drill-to child screen from a FlowChart. An error occurring upon closing a child screen and causing
the propagation of the child screen name to the parent has been fixed.

Drill-down on a Dataview cell. When drilling-down on a cell of a Dataview having the columns
Totals left aligned, the drill-down was incorrectly occurring on the item to the right of the drilled cell.

Dataview Dynamic Format. An error causing a crash, occurring after pasting a Layout on a newly
created Dataview and then immediately opening the Dynamic Format and clicking the OK button,
has been fixed.

DataView with collapse. An error of the Dataview object with the Collapse option, causing the
expand/collapse of rows to stop working immediately after having clicked on the total row, has been
fixed.

Dataview column sort. An error of the Dataview column sort occurring when attempting to sort a
text column (single click on the column header) and causing the Dataview rows to collapse, has
been fixed. Sorting on text columns is not supported.

Dataview header. An error of the @year function occurring in the Dataview header has been fixed.

DataView Layout. An error occurring when accessing the Functions tab of a column subsequent to
an empty column, has been fixed.

Dataentry on totals of a Dataview. Attempting to enter data on a total cell of a Dataview having the
save/undo option disabled was displaying an erroneous warning message.

Dataentry on a Dataview with 2 or more independent entities by row. Attempting to enter data
on a total cell of a checkbox column of a Dataview having the save/undo option disabled was
erroneously displaying a warning message.

Dataview with gauges and a header. In a Dataview report having a column using the Alert/Gauges
option, the use of the a Layout Header was preventing the display of the gauge on the totals and
subtotals rows.

Dataentry on a text or date Infocube. When entering data through a Dataview object on a text or
date Infocube, the inserted text or date was in some cases displayed (in green color, before saving)
in the cell above even though it was correctly saved against the desired entity member.

LDAP and AD Authentication


LDAP and AD authentication
This feature allows to set up your Board user accounts using the same username and password used
to connect to the network, moreover it allows to avoid storing user passwords in BoardMaster. Only
the username of your Board users will need to be stored in the BoardMaster Security and the
passwords will be verified against the Domain Controller (DC) or LDAP server. The authentication
mechanism can work in two ways, Control mode or Append mode.

Control Mode
The Control mode delegates the validation of the username/password of existing Board user
accounts. Therefore when using this mode, you must first define your Board user account as
usual but in the password field type LDAP instead of the real password, as illustrated.
297

Board 6.1 Manual

You have completed configuring the account. Note that you can still have other user accounts
defined as usual with their password saved in the BoardMaster users list. This is useful when
you need to define Board accounts for persons which are not registered in your network
domain.
In Control mode, when the user attempts to log-on the BoardMaster, the BoardMaster receives
the username/password then

looks up for the username in the list of registered users and if the username is not
found in the BoardMaster users list then the log-on attempt is turned down with the
error message "User not registered".

otherwise, if the username is found then,

if the account's password field is "LDAP" then the BoardMaster sends the
username/password to the DC or LDAP server for authentication and finally if
the DC or LDAP server responds "authentication successful", then the
BoardMaster grants access

if the account's password field is not "LDAP" then the BoardMaster performs
the authentication as usual.

Append Mode
This mode dynamically creates the Board user account the first time a user logs-on the
BoardMaster and is successfully authenticated by the Domain Controller or LDAP server. New
Board user accounts are created automatically when the users log-in and are assigned the
privileges and settings defined in a generic Board User Group named "LDAP".
To use Append mode, create a Board user Group called LDAP and apply the settings and
privileges which you want to assign by default to new users, it is recommended to specify a

298

Release Notes
minimal level of privileges. When a user account is created by the Append mode, its password
is set to LDAP and subsequent behaviour is as per Control mode.
When running in Append mode, when the user attempts to log-on the BoardMaster, the
BoardMaster receives the username/password then looks up for the username in the list of
registered users,

if it is found, then the same logics of Control mode applies.

if the username is not found in the BoardMaster users list, then

the BoardMaster sends the username/password to the PDC for authentication


and if the PDC responds with an "authentication success" message then

the BoardMaster
1. creates a user account in the BoardMaster users list,
2. assigns to it the settings found in the LDAP User Group,
3. sets the password field value to LDAP
4. and immediately grants access.

Configuring Append or Control Mode


Append or Control modes are set while configuring the LDAP or AD authentication. Refer to
Microsoft AD Authentication or OpenLDAP Authentication

Microsoft AD Authentication
When using AD Domain authentication, BoardMaster delegates the validation of the user's password
to the Microsoft Primary Domain Controller or Domain Controller. This option can be used only if you
are using a Microsoft Server for managing network users (such as Microsoft Windows 2000 Server or
later) and only if the machine running BoardMaster belongs to the domain of the domain controller that
perform the user's authentication.
To configure the Microsoft domain authentication, go to the BoardMaster Security tab and click the
LDAP AD button as shown,

299

Board 6.1 Manual

then tick the Active Directory check-box, type your domain name in the AD Domain field (see picture
below) and finally set the Control or Append mode as desired.

The Test button allows testing the authentication of a username/password against the domain
controller.

Note
To run the BoardMaster service you must use an account that has a special Windows
privilege called SE_TCB_NAME set to "true" on the AD server or domain controller server .
This is because the BoardMaster program uses a Windows API called LogonUser which
requires (it is a Microsoft imperative requirement) this level of privilege to be invoked.

300

Release Notes
This privilege is defined in the domain policies, the "long" name is "Act as part of the
operating system".
For example you cannot use the LocalSystem account.
A way of doing this is the following:
- create a new account on the domain, just for the purpose of running the BoardMaster
service, for example "BoardMasterUser"
- make this account administrator of the computer where the BoardMaster is running,
- make this account administrator of the computer where the AD is running (or at least grant
the SE_TCB_NAME privilege).To do this, open the "Domain security policies" snap-in, select
the option "User rights assigments" and add the "act as part of the operating system"
privilege, refer to the attached screenshot.
- grant other necessary privileges to run the Boardserver programs, such as for example
access to network resources in case you need to read text files or ODBC connections from
other computers.

OpenLDAP Authentication
LDAP Authentication, allows to delegate the validation of the user's password to an LDAP compliant
server such as Microsoft Active Directory Services, OpenLDAP Server, Lotus Domino Server etc..
To configure the LDAP authentication, go to the BoardMaster Security tab and click the LDAP AD
button as shown,

301

Board 6.1 Manual

then tick the OpenLDAP check-box, configure the LDAP parameters as explained hereafter and
finally set the Control or Append mode as desired.

Port :
set the TCP/IP port of your Ldap sever, conventionally the common value is 389.
Full Name :
is composed of a first part that describes the protocol ldap://, then the hostname where the
LDAP service runs and finally the RDN of the container that holds the entry with the different
parts that belong to the Domain component of the directory (dc).
Example:
Suppose that we want to authenticate the entries under container Account, so the complete
DN of the entry of Mr. Brian Arkills is: uid=barkills, ou=accounts, dc=mycompany, dc=com
Then the string in Full Name field should be:
302

Release Notes

ldap://server01.mycompany.com/ou=accounts, dc=mycompany, dc=com


Where:
"server01.mycompany.com" is the hostname (or IP address) where LDAP service is
running.
The dc part is normally the domain described in the dns. So if you have mycompany.com the
dc will be dc=mycompany, dc=com. If you have a second level domain like
mycompany.mycountry.com it will be dc=mycompany, dc=mycountry, dc=com
User Name String :
The User Name String parameter has the first part equal to Full Name string but the second
specify the complete DN of the entry that hold the users that will authenticate over LDAP.
Example:
Like above the complete DN of the entry for the account of Mr. Brian Arkills is:
uid=barkills, ou=accounts, dc=mycompany, dc=com
So the string of User Name should be:

ldap://server01.mycompany.com/uid=[un]
dc=mycompany, dc=com

ou=accounts,

The [un] string is a fixed value and is used by Board in the authentication challenge.
Board will replace the text [un] with the username keyed in the BoardClient logon prompt.
In the security folder the user must be defined as it appear in the entry LDAP attribute value of
his RDN.
Note! In the above examples, we have used the UID attribute of the entry, but the required
attribute may be different according to the schema used by your company. For example the
Windows Active Directory usually define sAMAccountName as the attribute for authentication
purposes.
For more information LDAP, refer to LDAP general concepts

Troubleshooting
The directory structure is not equal in all organizations or companies, actually it may
considerably vary, so the string used in Board LDAP configuration should be composed in
different ways accordingly.
Usually the directory structure, the LDAP schema, is well known by the system administrator
that should be able to provide the correct setting by deducing it from the examples given in
the current manual.
In case if you dont know the directory structure, you may try to browse the LDAP schema
using a tool such as LDAP Browser from Softerra (http://www.ldapbrowser.com/) to identify
the right schema that fit for you.
The Softterra LDAP Browser is a freeware tool that is able to browse and search within a
given LDAP Server.
You can also check the connection string by authenticate yourself over the LDAP server with
the username of a user involved in the authentication challenge.
To do this, in the wizard of LDAP Browser specify the complete DN of the user:

303

Board 6.1 Manual

If you are not able to connect with LDAP Browser, check if port TCP 389 is open from and to
the server where Board Master is installed.
In some LDAP schemas you may find that users are defined across different OU containers.
In this case you should consider using the [un] parameter, to include the OU part of the DN.
Example:
Users splitted in two OUs, the OU= marketing and OU=account
The username string should be:

ldap://server01.mycompany.com/uid=[un], dc=mycompany, dc=com


And the user name of Board user in the marketing container should then be:
"barkills,OU=marketing"

LDAP General concepts


The Lightweight Directory Access Protocol, or LDAP , is an application protocol for querying and
modifying directory services running over TCP/IP.
A directory is a set of objects with similar attributes organized in a logical and hierarchical manner.
The most common example is the telephone directory, which consists of a series of names (either of
persons or organizations) organized alphabetically, with each name having an address and phone
number attached.
The directory services was born over the x.500 standard and needed an less resource expensive
interface and a lightest protocol. X.500 directory services were traditionally accessed via the X.500
Directory Access Protocol (DAP), which required the Open Systems Interconnection (OSI) protocol
stack. LDAP was originally intended to be a lightweight alternative protocol for accessing X.500
directory services through the simpler TCP/IP protocol stack.
The directory structure
The information of a directory is always organized in element called entry

304

Release Notes
An LDAP directory tree often reflects various political, geographic, and/or organizational boundaries,
depending on the model chosen. LDAP deployments today tend to use Domain name system (DNS)
names for structuring the topmost levels of the hierarchy. Deeper inside the directory might appear
entries representing people, organizational units, printers, documents, groups of people or anything
else that represents a given tree entry (or multiple entries).
Example of LDAP directory that integrates within the DNS namespace with person and other part
DNs:

How do you reference an entry within my LDAP directory? Each entry in the directory has a unique
name known as the distinguished name (DN). Each entry also has a name local to its immediate
container known as the relative distinguished name (RDN). The RDN is unique among all entries in
that container. For now, think of a container as being similar to a directory or folder in a file system.
The DN of each entry is formed by concatenating the RDN of the entry with the RDN of the
containers between the entry and the directory root. There is a comma between the RDNs in the DN.
An entry can look like this when represented in LDAP Data Interchange Format (LDIF):
DN: uid=barkills, ou=people,,dc=mycompany,dc=com
cn: Brian Arkills
uid: barkills
sn: Arkills
telephoneNumber: +1 234 567 8901
mail: barkills@mycompany.com
objectClass: inetOrgPerson
objectClass: person
objectClass: top
The DN is the way to identify uniquely an entry in the entire directory, it's not an attribute nor part of
the entry. "cn=Brian Arkills" is the entry's RDN, and "dc=mycompany,dc=com" is the RDN of the
parent entry, where dc denotes Domain Component. The other lines show the attributes in the entry.
Attribute names are typically mnemonic strings, like "cn" for common name, "dc" for domain
component, "mail" for e-mail address, uid for user id and "sn" for surname.

305

Board 6.1 Manual

A server holds a subtree starting from a specific entry, e.g. "dc=mycompany,dc=com" and its
children.

In the above picture example the container starting point from top to button is the DNS
(mycompany.com) DN (dc=mycompany, dc=com). Then there are some children container OU
(organization unit) like Customer, Account, People ect. Each container may hold another container
(white) or an entry (black), each entry may . To identify an entry in the above example you should
specify the full DN.
For example in a schema like the above one:
The entry under the account container may be identified by the DN:
uid=barkills, ou=Accounts, dc=mycompany, dc=com
the entry under the people container may be identified by the DN:
cn=Brian Arckills, ou=People, dc=mycompany, dc=com
Note: the cn or uid is not the name of the entry itself but an attribute of the entry

Release notes for version 6.0D


Upgrade instructions
Upgrading from version 6.0
BoardClient version 6.0D can connect to a server running BoardMaster 6.0 (or 6.0A) it is
therefore possible to gradually update the PCs running BoardClient from version 6.0 (or 6.0A)
to version 6.0D.
Upgrading from version 5.6x (or earlier)
BoardClient and BoardMaster version 6.0D are not compatible with 5.x releases, please refer
to Instructions for Upgrading to version 6.0 for details.

306

Release Notes
Tip! It is possible to run the installation procedures as a background process that doesn't require any
user interaction (silent installation). Refer to the following knowledge-base article for details: How to
install Board in silent mode

Bug Fixes and changes


- DynaSheet. A malfunction occurring when attempting to insert a new sheet (menu option Insert /
Sheet) to a DynaSheet object and provoking BoardClient crash has been resolved.
- DynaSheet. A malfunction of the DynaSheet object which was preventing access to the following
menu options: Format | Sheet | Properties, Format | Column | Width, Format | Row | Hide, has been
resolved.
- DynaWrite++. A malfunction occurring for users having a Lite or Lite+ license which was preventing
access to the Layout of a DataView has been resolved.
- Trigger Procedure. The trigger procedure associated to a screen is now fired also when leaving the
screen through a click-able area of a FlowChart object.
- STO. The items list of the STO object has been adjusted correctly display all items on screen having
a resolution of 1024x768 pixels.
- Goto Capsule. A malfunction of the Goto Capsule command which was preventing to go to a
desired landing screen of the target Capsule, has been resolved. To define a given landing screen,
add the screen name after the Capsule name in the Goto Capsule command.
- Child Screen. An error occurring when jumping to a child screen from a click-able FlowChart area
has been resolved.
- DataView Button. It is now possible to trigger a procedure by clicking on a DataView Button for
Layouts having two independent entities by row. Note that it is not possible to launch a procedure
from a drill-down window (the DataView Buttons are disabled when in a drill-down window).
- DynaSheet. A malfunction of the DynaSheet object occurring when attempting to create more than
three Layouts has been resolved.
- Copy Capsule. An error which was disabling the Capsule copy functionality of the Capsule Tree
(right-click then drag&drop) has been resolved.
- Child Screen. An error of the child screen configuration window which could cause an incorrect link
to the child screen has been resolved.
- Select BasedOn. An error of the Select BasedOn action which could cause an incorrect flow in the
execution of the procedure has been resolved.
- DataReader. An error of the DataReader which causing an erroneous update of the relationships
has been resolved.

Optimizations
- The caching mechanism has been improved and made more robust and fault-tollerant. The
preparation of the database cache is now carried out independently by each BoardServer session.
The BoardClient is now able to more accurately detect inconsistencies in the local copy of the
database cache (inconsistencies caused by errors in the communication layer) and in case of
inconsistencies re-attempts the transfer of the cache.
- An optimization of the BoardMaster now allows to better and more robustly handle peaks in the
number of simultaneous connections to the BoardMaster with over 20 highly active BoardClients (i.e.
each executing a high number of small requests per second).

Release notes for version 6.0


What's new in version 6.0

307

Board 6.1 Manual


Board Version 6.0 introduces a considerable set of new features and enhancements, some of the
most relevant are:
Fully restyled product interface, with the possibility to select your preferred look and feel
from a gallery of "skins".
The DynaWrite++, a completely new reporting environment to create high quality report
booklets. DynaWrite++ is word processor environment which supports embedding on the
document's pages some Board reports (created with the DataView object), Graphs and
FlowCharts, manage page headers and footers. The documents can be output to various
format such as MS-Word (.doc), HTML, RTF or PDF. This new reporting environment is
accessible from BoardClient without restrictions by all types user licenses, including Lite and
Lite+ which can therefore create their own report booklets.
The DynaSheet++, a completely new spreadsheet environment, simple and familiar, which
allows all BoardClient users (including those with a LitePlus or Lite license) to become selfsufficient in the creation of simple and unstructured analysis. Users can place multiple reports
on the same sheet, add formulas, charts and use the Dynabar and Select to navigate across
data.
The BLOB InfoCube, is an InfoCube that stores files in the cube cells. The supported file
types are text (TXT extension), rich text (RTF), MS-Word (DOC) and MS-Excel (XLS). This
new feature allows to store unlimited text information or formatted documents in the database
and therefore benefit from Board's security features. It is particularly suited for example for
human resources appraisal applications or to add annotations to reports at cell-level.
The data-entry locking, is an improvement of the DataView object which allows to enable or
disable (lock) data-entry at cell-level through a conditional field. This feature improves
budgeting and forecasting applications where there is a need to lock or unlock the data-entry
dynamically, based on the rules of the application workflow.
The drill-to screen, is a new feature that allows to drill from a report down to another screen
containing different objects (reports, charts etc.) providing different views and analysis. This
new feature empowers Board's analytical capabilities allowing the designer of a Capsule to
create richer navigation paths across the application screens and analysis.
The Select BasedOn, is a Procedure action which selects members of a chosen entity on the
basis of the value of an InfoCube. It may for example be used to create target groups or run
cross-selling analysis or any equivalent analysis which requires nesting multiple queries.
Enhancements to the DataView object
Column sorting, it is now possible to sort the rows of a DataView or DynaSheet
report with a single click on the column header, without therefore having to access the
Layout.
The Button format, it is possible to format a column of a DataView (holding an
InfoCube or an algorithm) as a "Button", the cells will appear as buttons and by
clicking on it the user may trigger a procedure or jump to a child screen.
The automatic roll-up rule, is a rule that uses the code structure of the entity members to
automatically create totals and subtotals where a code is the left sub-string of other members.
For example, for an entity containing the members A, A1, A2, A3, A31, A32, the rule will
automatically calculate A3 as the sum of members A31 and A32, and item A as the sum of A1,
A2 and A3. This feature facilitates the management of unbalanced top-down hierarchies such
as the chart of accounts.
Version 6.0 includes several other new features, changes as well as bug-fixes, please read all topics
in the current section for details.

Instructions for upgrading to version 6.0

Capsule and Database compatibility


Board databases and Capsules created with prior releases (5.x) are fully compatible with
version 6 and do not require any migration or other change.

308

Release Notes
Capsules are not backward compatible: a Capsule which is created or edited (opened then
saved) with version 6.0 cannot be re-opened using any earlier version of Board.
Databases are backward compatible: it is possible to create or edit a database using version
6.0 and then open and edit it using a prior version 5.x however the new 6.0 features will
clearly not be available.

Client-Master-Server compatibility
The BoardClient program version 6.0 cannot connect to prior versions 5.x of BoardMaster
and vice-versa BoardMaster version 6.0 doesn't accept connections from earlier versions of
BoardClient,
it is therefore required to simultaneously update all PCs running Board.
Considering that BoardMaster 6.0 actively rejects connections from clients running earlier
versions (5.x), it is advisable to install the new version first on the server running the BoardMaster
and then deploy the BoardClient upgrade to all client PCs.

Upgrading to version 6.0


download the setup programs from the download area of the web site,
run the BoardServer installation program on the server.
run the BoardClient installation program on the client computers
if you are using Board WebServer, run the BoardWebKitFiles installation program.
It is recommended to upgrade the server running BoardMaster first and then after upgrade the
BoardClient installations.

Notes
When upgrading a PC or a server from any earlier version you must not un-install the Board
license. Currently installed licenses (for version 5.x) are fully compatible with version 6
therefore after running the BoardClient or BoardServer installation programs you can start
using version 6.0 immediately.
It is possible to run the installation procedures as a background process that doesn't require
any user interaction (this technique is referred to as "silent mode" install). Refer to the
following knowledge-base article for details: How to run Board Setup in silent mode.

Skins: interface look and feel themes


Skins define the style of buttons, toolbars and other common elements of the interface providing a
new look and feel to the environment. The skins affect the look and feel of the Capsule objects such
as the Buttons and DataViews as well as the interface of the BoardClient and BoardMaster programs.
To select a skin for the BoardClient program,
Open the Setup window by click the Setup icon as displayed

in the lower part, under the group Visualization, select the desired skin from the drop-down list
as illustrated

309

Board 6.1 Manual

The radio buttons present in the Visualization group provide further customization of the look
and feel in combination to the selected skin.
Note that the skin is a configuration of the BoardClient program therefore each user can select
his preferred style and then change it at as desired.
To select a skin for the BoardMaster program, ,
Go to the Options tab of the BoardMaster program,
select the desired skin from the drop-down list located in the Visualization group.
The selected skin affects also the look and feel of the BoardServer program.

The DynaWrite++ environment


The DynaWrite++ is a new environment designed to create high quality report booklets. It is a word
processor environment which allows to create formatted text documents and which supports
embedding on the document's pages Board reports (created with the DataView object), Graphs and
FlowCharts that dynamically retrieve data from a Board database. The documents can be printed or
exported to the following file formats: MS-Word (.doc), HTML, rich text (RTF) or PDF.
DynaWrite++ is accessible from BoardClient, without functional restrictions, by all types user licenses,
including LitePlus and Lite which can therefore create their own report booklets.
To access the DynaWrite++ environment, click the following icon located on the top toolbar,
310

Release Notes

The DynaWrite++ environment

-- -- Picture 1 -- -Working with DynaWrite++ documents


The DynaWrite++ documents are listed in the Capsules Tree navigator with the icon shown in
the following picture.

To open a document, click on the DynaWrite++ document icon. When the document is
opened, all Layouts of embedded Capsules objects (reports, charts and flowcharts) are
refreshed.
To create a new document, select File / New from the menu or click the New document
icon.
311

Board 6.1 Manual


To save a document, select File / Save or click the Save icon. A file with extension DWR is
created.
Note that DynaWrite++ documents can only be saved on the local hard disk, it is therefore
recommended to save your documents into the Board.Loc\Capsules folder (or in a sub-folder)
so that the documents are listed into the Local folder of the Capsules Tree window. To publish
a DynaWrite document to all BoardClient users, copy the DWR file to the Board\Capsules
folder of the Board server.
DynaWrite++ documents can be exported to various other file formats such as rich text, html,
MS-Word: use the menu option File / Save as and choose the desired format. Note that when
a document is saved in a format different to the Board DynaWrite's native format, the reports
and charts become static.
To export a DynaWrite++ document to PDF format, select the menu option Export /
Export File then type the name for the PDF file.

Linking the document to a database


Select from the Database drop-down list (see picture 1 above) the Board database to
connect to. Note that a document can be linked to one Board database therefore all reports
and charts retrieve data from the same database.

Synchronized mode
The Synchronized mode makes all Capsule objects (tables, charts, flowcharts) of the
document subject to a unique Select and Dynabar. To enable the synchronized mode, tick
the Synchronize check-box located in the toolbar (refer to picture 1 above). When the
Synchronize mode is enabled the Select icon and the Dynabar become active and can be
used by the end-user to navigate through the data.
When the Synchronize mode is disabled, each Capsule object has its own independent
selection which can be configured by clicking on the Select icon located in the object's
configuration window.

To add a table report


Click the Insert DataView icon (see picture 1 above), or right-click on the
document's page and select Capsule Object / Table from the pop-up menu,
a pop-up window with a blank DataView opens,
then right-click on the DataView to access the Layout, configure and run the Layout,
adjust columns width and rows height then press the OK button of the DataView
window to close it,
the spreadsheet is translated into a table and inserted into the document's page.
Notes !
If the report has a high number of rows and columns and doesn't fit into the page, it is
automatically truncated. In this case apply a Select to reduce the number of rows or
columns returned.
Some features of the DataView object available in the Capsules environment are not
supported (such as Indentation, Master, Collapse, data-entry etc..) and are therefore
disabled.

To add a link to a DataView report


Right-click on the document's page and select Popup Object / DataView from the
pop-up menu,
312

Release Notes
a pop-up window with a blank DataView opens,
then right-click on the DataView to access the Layout, configure and run the Layout,
click the OK button of the DataView window to close it,
the icon of the DataView is added on the page.
By clicking the icon the DataView report will open in the pop-up window.

To add a chart
Click the Insert Chart icon (see picture 1 above), or right-click on the document's
page and select Capsule Object / Graph from the pop-up menu,
a pop-up window with a blank Graph opens,
then right-click on the Graph object to access the its configuration properties,
configure and run the Graph,
adjust the width and height of the window to the desired size for the chart. The size of
the window determines the size of the image which is inserted into the document.
then press the OK button to close the chart configuration window,
the chart is translated into an image and inserted into the document's page.

To add a FlowChart
click the Insert FlowChart icon (see picture 1 above),
a pop-up window with a blank FlowChart opens,
draw the flowchart as desired and right-click on the FlowChart to access its properties,
adjust the width and height of the window to the desired size. The size of the window
determines the size of the image which is inserted into the document.
then press the OK button to close the FlowChart configuration window,
the FlowChart is translated into an image and inserted into the document's page.
Notes !
Some features of the FlowChart object available in the Capsules environment are not
supported: the FlowChart areas can't contain other toolbox objects and can't have a
background image.

To add a Current Selection


Right-click on the document's page then select from the pop-up menu Current
Selection / Selection ,
choose from the drop-down list the desired entity or choose Current Selection for
displaying all selected entities,
the list of selected items of the chosen entity is inserted on the page.
Note that this feature should only be used on documents where the Synchronize option is enabled
(i.e. tick the Synchronize icon in the toolbar) implying that all Board objects (reports, charts) share
the same Select.

To edit an object
To edit a table: click on the first cell (top-left) of the table to open the DataView pop-up
window.

313

Board 6.1 Manual

To edit a Chart or a FlowChart: right-click on the chart or flowchart image to open the
pop-up window.
To edit a link to a DataView, click on the DataView icon.
To edit a Selection to an entity (Current Selection), place the mouse over the
selection text, the pointer changes shape then left-click.

To manage page headers and footers


To manage the page headers and footers, select the menu option View / Headers and
Footers. Page numbering is automatically added to the footer the first time the
headers/footers function is accessed.
The text area of the header and footer supports embedding of Capsule Objects, Current
Selection and images.

Note about DynaWrite++ documents


When a document is opened, all Layouts of embedded Capsules objects (reports, charts and
flowcharts) are refreshed, therefore it is recommended to embed a reasonable number of
objects - not exceeding 20 to 30 objects - such that the time required to open the document is
reasonable and the overall size of the document doesn't exceed 40 or 50 pages. If a larger
document is needed, use the Select to split it into smaller documents.

The DynaSheet++ environment


The DynaSheet++ a spreadsheet environment, simple and familiar, which allows all BoardClient
users, to create reports and analysis. In a DynaSheet++ workbook it is possible to insert multiple
reports on the same worksheet or on different worksheets, add charts and use the Dynabar and Select
to navigate across data.
DynaSheet++ is accessible from BoardClient, without functional restrictions, by all types user licenses,
including LitePlus and Lite which can therefore create their own reports worksheets.
To access the DynaSheet++ environment, click the following icon located on the top toolbar,

314

Release Notes
The DynaSheet++ environment

Worksheets and multiple-Layouts: the workbook object model


A DynaSheet workbook can be linked to a single Board database. Each worksheet (sheet) of
the workbook can contain different Layouts, and one Selection and one Dynabar
configuration. All Layouts on the same worksheet share the same Select and Dynabar but two
different worksheets have independent settings of the Select and of the Dynabar. A worksheet
without any Layout cannot bear any Select nor Dynabar settings.

Working with DynaSheet++ workbooks


The DynaSheet++ workbooks are listed in the Capsules Tree navigator with the icon shown in
the following picture.

To open a workbook, click on the DynaSheet++ workbook icon. When the workbook is
opened, all Layouts of the active sheet are refreshed.
To create a new workbook, select File / New from the menu or click the New workbook icon.
To save a workbook, select File / Save or click the Save icon. A file with extension DSH is
created.
DynaSheet++ workbooks can only be saved on the local hard disk, it is therefore
recommended to save your documents into the Board.Loc\Capsules folder (or in a sub-folder)
315

Board 6.1 Manual


so that the workbooks are listed into the Local folder of the Capsules Tree window. To publish
a DynaSheet workbook to all BoardClient users, copy the DSH file to the Board\Capsules
folder of the Board server.
DynaSheet++ workbooks can be exported to MS-Excel format, use the menu option File /
Save as and select the XSL format. Note that when a workbook is saved to MS-Excel format
the reports become static. DynaSheet++ charts are not exported to the MS-Excel file.
To link the workbook to a Board database, select from the Database drop-down list (see the
DynaSheet++ environment picture above) the Board database to connect to. Note that a
workbook can be linked to one Board database therefore all reports retrieve data from the
same database. After linking to a database, it is possible to start adding reports on your
worksheets.

To add a report on a worksheet


Place the cursor on the cell where you want to place the report, then click on the
Report Layout icon from the toolbar (refer to the DynaSheet++ environment picture
above),
or right-click on the cell where you want to place the report,
the report's Layout window opens, configure and execute the Layout,
the report's result is inserted onto the worksheet down and across, starting from the
cell where the cursor was placed. Any prior content of the cells is overwritten with
the data returned by executing the Layout.
it is then possible to overwrite a report's cell with a worksheet formula, for example to
calculate an average instead of a total. The next time the Layout is refreshed, the
formula is not overwritten by the report's data.

Notes
When a workbook is opened, only the Layouts of the active (foreground) sheet are
refreshed therefore if a worksheet contains formulas referencing cells of another
worksheet, you must activate all worksheets holding some Layouts to correctly
refresh the calculated cells.
When a Layout is defined on a given cell, the returned data is inserted in the
spreadsheet starting from that cell then down and across. If the number of rows and
columns of the report is subject to change, you should allow a sufficient number of
empty cells under and to the right in order to avoid overlapping with other reports or
other cells containing data.
The cells of a report cannot be formatted (such as font style and color, cells color,
borders and patterns etc..).

Editing a report of a worksheet


To access the Layout of a report, place the mouse over the cell first cell (at top-left) of the
report and left click to access the Layout.
To remove a report from a worksheet, open the Layout definition then clear the Layout and
click the OK button.

The Select and Dynabar of a worksheet


The worksheet's Select and Dynabar can be configured after inserting at least one Layout.
To access the Select window, click the Select icon from the top toolbar (refer to the
DynaSheet++ environment picture above).

316

Release Notes
All reports which are on the same worksheet share a unique Select and Dynabar
configuration however different worksheets have independent Select and Dynabar settings.

The Autosize function


The Autosize function automatically adjusts the width of a report's columns. To automatically
adjust the width of a report's columns, click the Autosize icon (refer to the DynaSheet++
environment picture above).
To permanently enable the Autosize function, tick the Autosize on/off checkbox (refer to the
DynaSheet++ environment picture above).

DataView cells as Buttons


It is possible to define a column of a DataView report to work as a button. Hereafter an example of a
DataView with some columns formatted as buttons.

The button cells can be used for different purposes, by clicking on a button-like cell, the user may
trigger a procedure, drill-down to a child screen or view a BLOB, in relation to the multidimensional
space identified by the clicked cell. For example, if a button-like cell is configured to fire a procedure
and the DataView has a dimension by row and another dimension by column, then by clicking on a
button-cell, the procedure will run with a selection on the entity members of that row and column.

How to define the Button format


To define the Button format on a column, tick the Button checkbox located on the Format tab of the
column Layout, as illustrated hereafter

317

Board 6.1 Manual


It is possible to define the text displayed on the button (the label) and the link activated by the click on
the button with the following syntax,
Syntax: "Label, Link"
For example,
to create a button with the label "Go to detail" which drills-down to the screen named
"Child screen", the text InfoCube (or text algorithm) should return the string "Go to
detail, Child screen".
to create a button with the label "Run calculation" which triggers the procedure named
"MyProcedure", the text InfoCube (or text algorithm) should return the string "Run
calculation, MyProcedure".
Note that if the name of the child screen or the name of the procedure are modified, the text (the
InfoCube or algorithm) should be updated as well.

Sorting on columns of a DataView or DynaSheet report


It is now possible to sort the rows of a DataView or DynaSheet report. Click on the header of the
column on which to sort rows. The first click sorts rows in descending order and a second click sorts in
ascending order. To remove sorting on a column press the F5 key.

In case the column headers of the object are not visible, click on the first row of the column to sort.

The BLOB InfoCubes

318

Release Notes
The BLOB InfoCubes are InfoCubes that can store in a cube cell documents of the following type: Text
(TXT extension), Rich text (RTF), MS-Word (DOC) or MS-Excel (XLS). The documents are
compressed and encrypted into the Board database InfoCube therefore can't be accessed from
systems other than the Capsule environment. As InfoCubes of other type, the BLOB InfoCubes are
subject to the Board database security therefore by assigning user access rights to the InfoCube it is
possible to assign read-write privileges to some users, read-only or exclude it to others.
The BLOB InfoCubes extends the capabilities of Board from the management of multidimensional text
to the management of multidimensional documents containing sensitive information.

How to create a BLOB InfoCube


To create a BLOB InfoCube for storing files of one of the four supported formats, create an InfoCube
and add to the name of the InfoCube the extension of the desired BLOB documents format.
For example,
for an InfoCube for storing files of type MS-Word, create a text InfoCube named "My
Comments.doc",
for an InfoCube for storing files of type MS-Excel, create a text InfoCube named "My
Comments.xls",
for an InfoCube for storing files of type rich text, create a text InfoCube named "My
Comments.rtf",
for an InfoCube for storing files of type text, create a text InfoCube named "My
Comments.txt",
A BLOB InfoCube is therefore made of a standard InfoCube which can be of type numerical, text or
date and an equivalent multidimensional space that stores the documents.

How to manage the contents of a BLOB InfoCube


The documents in a BLOB InfoCube can be accessed and edited only from a Capsule screen either
through the Viewer object or by triggering an associated editor program (such as MS-Excel or MSWord).
The editor programs must be configured in the BoardClient setup window: type the full name
of your spreadsheet program (MS-Office Excel compatible) and text editor (MS-Office Word
compatible) in the fields as illustrated hereafter.

319

Board 6.1 Manual

With the DataView object, create a report using the BLOB InfoCube. Run the report, then
double click on a cell of the BLOB InfoCube: the spreadsheet or text editor program is
launched and the document contained in the clicked cell is loaded. Note that you may format
the BLOB InfoCube column to Button, in this case a single click on the cell triggers the editor
program.
If the cell is empty, a new document blank is created. You may edit the document, then when
you exit the program the document will be automatically saved into the BLOB InfoCube.
It is possible to use the Viewer object to view and edit the documents of a BLOB InfoCube,
With the DataView object, create a report using the BLOB InfoCube,
Add a Viewer object to the screen: drag and drop the Viewer object from the Toolbox onto the
Capsule screen,
In the pop-up window, select the option "MD BLOB" and type the name of the BLOB InfoCube
to view,

320

Release Notes
If the cell is empty, a new blank document is created. You may edit the document, then when
you exit the program the document will be automatically saved into the BLOB InfoCube.
Note that if the DataView report doesn't have entities by column, it is possible to click on an
entity member to view the relating document in BLOB Viewer.

Notes
To remove documents stored in a BLOB InfoCube use the InfoCube Clear action.
It is not possible to load documents in a BLOB InfoCube through the DataReader
It is not possible to extract the documents of a BLOB InfoCube through the Xtract action of a
procedure.

Data-entry Locking
The data-entry locking is a feature of the Layout object allows to lock the data-entry on a column on
the basis of another column of the Layout. This feature is designed for budgeting and forecasting
applications where there is a need to lock or unlock the data-entry dynamically, based on the rules of
the application workflow.
The following picture shows an example of a DataView object where the conditional locking is applied
to the Budget InfoCube. The cells having a colored background are locked, data-entry is allowed only
"Budget" cells with a white background. The adjacent column shows "Locking Condition"
determines which cells should be locked: if the value different from zero then the locking occurs.

To add conditional locking to a data-entry column,


open the Layout,
in the Layout block which is next to the data-entry column, define the locking condition: select
an InfoCube or type an algorithm,
go the Functions tab and enable the Lock check-box as shown in the example hereafter

321

Board 6.1 Manual

Notes
The conditional locking is applicable to the Layout of any object supporting data-entry:
DataView, GDE, Mapping and STO.
When the conditional locking is applied, the data-entry on a row or column total cell is locked if
at one detail item is locked or if the summary algorithm of the data-entry locking column is set
to NoTotal (if the locking column is an InfoCube) or to Calculated (if the locking column is an
algorithm).
If you are using an inverse algorithm (see Inverse algorithm for details) to enter data on an
InfoCube, the same conditional locking column must be defined after the data-entry InfoCube
column and after the inverse algorithm column.
The column containing the locking condition can be a hidden column.

Drill-to Child Screen


The drill-to child screen allows to drill-down from a report or a screen to another screen of the same
Capsule. The child screen inherits the parent screen selection and Dynabar. The child screen may
contain multiple objects (such as DataViews, Graphs, etc..) retrieving different InfoCubes and thus
providing different views, reports, alerts but since the selection range is that of the parent screen the
analysis context is retained. Note that when a user jumps or drills to a child screen, the parent screen
remains visible in the background (similarly to what happens with drill-down windows) creating a visual
parent-child relationship between the two screens.
There are three different ways to jump to a child screen,
through a button in the parent screen,
by drilling-down on a report of the parent screen,
by clicking on a cell of a DataView report of the parent screen.

How to create a child screen


322

Release Notes
A child screen is a Capsule screen which appears similarly to a pop-up window, of a smaller size and
overlaying its parent screen. To create a child screen,
Create a new screen by clicking the New screen icon

While in design mode, click the restore icon of BoardClient's workspace in order to reduce it to
non full-screen size,

Resize and position the window as desired. Note that when a child a screen is opened by a user,
it retains the size and position defined during designing.
Then place the objects from the toolbar onto the screen and configure them as for standard
screens,
Save the screen then close it.

Notes
When designing a child screen, the size of the workspace is the same of the size of a full screen. The
size of the objects placed on the screen is absolute therefore it is not affected if the screen is resized.
This allows the screen designer to have an accurate control of the presentation layout.
When a user jumps to a child screen while navigating the Capsule from in runtime mode, the select
and Dynabar of the parent screen is inherited by the child screen therefore any selection saved on
the child screen while designing it is ignored.

How to jump to a child screen using a button


Add a button object to the parent Capsule screen,
right click on the button to access its properties configuration window
then select the desired child screen in the Next Screen as drop-down list located on the Actions
tab.

How to drill-down to a child screen


The drill-down function has been enhanced and now provides the list of the existing child screens as
possible drill-down paths.
To drill-down to a child screen,
right click on the desired row header,
select the Screen tab, and choose the desired child screen to drill-down to. Note that it is possible
to make a multiple selection, in which case when the user attempts to drill-down a pop-up window
will prompt to select one of the available child screens.

323

Board 6.1 Manual

The drill-down path or options can be saved (by saving the parent screen) and then reused through a
left click on the row header, as for the standard drill-down function.

Note
The entity from which the user drills-down in the parent screen is added to the Dynabar of the child
screen.

How to drill-down to a child screen from a DataView cell


The drill-down to a child screen can be triggered by clicking on a cell of a DataView which has been
formatted as Button.
To configure a DataView column for drilling-down to a child screen,
In a column of the a DataView Layout, select a text InfoCube or type text algorithm which returns
the name of the desired child screen,
go to the Format tab of the column and tick the Button check-box, as illustrated

Note that it is possible to define the text label for the button with the following syntax : "Text Label,
Screen Name"

324

Release Notes
For example, to create a button with the label "Go to detail" which drills-down to the screen
named "Child screen", the text InfoCube or text algorithm should return the string "Go to
detail, Child screen".
Note that if the name of the child screen is modified, the existing links need to be updated to the new
name.

Notes about child screens


The child screens are not listed in the screens list pop-up window which appears when rightclicking on the Capsule name. It is therefore not possible to copy a child screen from one
Capsule to another: should you need to do so, edit the child screen, maximise it to full screen
size (it so becomes a standard screen) then copy it to the desired Capsule and after restore the
child screen.
The Capsule menu screens list displays the child screens only while in design mode and
identifies the child screens by adding the annotation (Child screen) next to it. The Capsule menu
screens list allows to jump to any screen, including child screens, by double clicking on the
screen name when in design mode.

The Select Based On Action


The Select Based On action is a Procedure action that selects the members of a chosen entity
based on values of a chosen InfoCube. For example, let's consider the InfoCube Sales dimensioned
by the entity Customers, then the action "Select Customers based on Sales" selects all members
of the Customers entity for whom the Sales are different from zero.
The analysis of the InfoCube values which determines the selection of the chosen entity is subject to
the selection of the procedure therefore, by making a selection on any other dimension of the
InfoCube before the Select Based On action, the criteria is evaluated only for the selected subrange. For example, considering a Sales InfoCube dimensioned by Customer, Product, Month,
you may select one or more Months and a one or more Products then run the action "Select
Customers based on Sales" which results in selecting all customers for whom, in the chosen
Month and for the chosen Product, Sales are different from zero.
This feature can be used to create analysis which requires nesting multiple queries such as target
groups or cross-selling analysis: select one or more products then identify which are the customers
buying those products and then discover which other products these customers are buying.

How to define a Select Based On action


Open or create a Procedure and add an Action,
Go to the Select tab and choose the Select Entity option then
choose the desired entity from the drop-down list
then choose the InfoCube that should be used to determine the selection from the Based on
Cube drop down list
Example

325

Board 6.1 Manual

The automatic roll-up rule


The automatic roll-up rule is a rule that uses the code structure of the entity members to automatically
create totals and subtotals wherever a code is found to be the left sub-string of other members. This
feature facilitates the management of unbalanced top-down hierarchies such as the chart of accounts.
Consider for example an entity having the code structure which is clearly hierarchical,

326

Release Notes
the automatic rule sums all the member having a code with a common root (the same left most
characters) into the item which code is the root. For example the entity member "4A01 40" is the sum
of members which start with "4A01 40" therefore of "4A01 40 01 01", "4A01 40 01 02", "4A01 40 01
03", "4A01 40 01 04" and "4A01 40 02".
The data should therefore be loaded on the detail members only, as in the following example,

the automatic rule calculates the members which are highlighted by summing all other members which
have a common root

How to define the automatic roll-up rule


327

Board 6.1 Manual


Create a rule (refer to Defining a Rule for details) and add the characters /c at the end of the rule
name, for example "Balance Sheet calculation /c"
Any rule which name ends with the characters /c implicitly calculates roll-up totals based on the code
structure, it is therefore possible to simply rename old rules created with prior versions to add this new
feature.

How to use roll-up rule


The automatic roll-up rules can be used in any Layout and in a DataFlow calculation as any other rule
without restrictions. Refer to Using a rule in a Layout or Using a Rule in a DataFlow for details.

New Select options


Selected entities
The Select window now highlights the entities on which the user has applied a selection. In the
following illustration the Select window shows that the entities which the user has selected some
members are Year and City.

This new function allows to view the selection which was saved on a screen or in a procedure.

Screen selection pop-up window


By clicking on the selection indicators located in the toolbar

a pop-up window opens displaying the currently active entities selection as in the illustration hereafter.

Using the DynaWrite to display the screen selection

328

Release Notes
The DynaWrite object is now able to dynamically display the currently selected members of a chosen
entity or the entire screen selection. The DynaWrite object can be placed onto the Capsule screen for
the user to easily view or print the active selection of that screen.
To configure the DynaWrite object,
Insert a DynaWrite object on a Capsule screen, then right-click on it to access the designer
environment.
Type the desired text then right-click to insert the selection text,
Choose the Current Selection option from the pop-up window (refer to the illustration
hereafter) then
choose the option "Current Selection" to insert all entities and entity members on
which a selection is active
or choose one entity from the list if you wish to only view the active members of that
entity.
Exit the DynaWrite designer environment and save the Capsule screen.

Adding the selection in the DataView header or title


It is possible to insert in the header or title of a DataView the list of currently selected members of a
chosen entity. In a header or title of a DataView, the text @MyEntity is replaced with the list of the
currently selected members of the entity called MyEntity.
In the following example, the header of the report will display the text "Year is" followed by the year.

329

Board 6.1 Manual

It is possible to include multiple entities, for example: "The Year is @Year and the Regions
are @Region".
It is possible to insert this command in the Layout title instead of the header.
A carriage return (new line) character is automatically added after the members list of an entity.

Changes to the Button and Picture objects


The look and feel of the Capsule Buttons is now determined by the selected skin. All configuration
properties of the Appearance tab are therefore now disabled with the exception of the font type and
size and the Tooltip property.
Examples of different skins
Office2007Aqua

iTunes

Royale

The Picture object, now supports all properties of the former Button object, including Actions. The
Capsule Button object of Board version 5.x is equivalent to the Picture object of version 6. When you
open a Capsule created with Board version 5.x the buttons are treated as Picture objects of version 6
in order to preserve all properties and behaviour therefore the skins do not affect the look and feel of
such objects.

On-screen-exit procedure
This new function allows to link to a Capsule screen a Procedure which is automatically executed
when the user exits the screen and has either entered data or ran a procedure on the screen.
To select the procedure to run when the user exits the screen, open the screen Properties window and
choose the desired procedure from the Trigger drop-down list as in the following illustration.

330

Release Notes

Note that the selected procedure is automatically launched whenever the user exits the screen but
only if the user has done data-entry or has ran a procedure on that screen - if the user only visits the
screen without modifying any data the procedure is not triggered.
The procedure runs when the user attempts to exit the screen, but before actually closing the screen
therefore the procedure context (the active Dynabar and Select) is that of the screen.

Version 6.0 other changes and bug-fixes


- Save changes message. The pop-up message that appears when the user makes some design
changes to a Capsule screen and exits the screen has been changed from "Quit without saving" to
"You made changes to the current screen, do you want to save changes ?", the effect of answering
Yes or No is therefore opposite to version 5.
- STO object: the pop-up window with the list of entity members now has a Find function to facilitate
finding a known entity member.
- Multi-language Database translation for the Web client: the multi-language database capability
which exists in the BoardClient environment is now available also for the web client. To define a user's
language: open the user account definition on the BoardMaster and type the data dictionary language
ID of the desired language.

331

Board 6.1 Manual

- Capsule Screen copy. Copying a Capsule screen or procedure from a Capsule stored in a Local
folder to a Capsule stored on the server is now disabled due to a disruptive malfunction provoking a
corruption of the target Capsule.
- Capsule Screen copy. A malfunction occurring when copying a screen containing an STO object
from one Capsule to another Capsule has been resolved.
- Capsules Tree navigator. The Capsules Tree window now manages 6 levels of subfolders (i.e. 5
more than prior versions) of the Board\Capsules folder. The window width can now be adjusted by
placing the mouse pointer over the right border. Note for developers! the width of the Capsules Tree
window affects the size of the database functions windows (such as Entities, InfoCubes
DataReader...), if the Capsules Tree window is too wide, the windows of some database functions
may become truncated on their right side. Should that happen, reduce the width of your Capsules
Tree window.
- A malfunction of the Capsule environment occurring after running a procedure on a screen with an
STO object and which was preventing to switch to design mode has been resolved.
- F7-Excel export. A malfunction of the BoardClient F7 function (export to MS-Excel) which truncated
the decimal part of numbers has been resolved.
- Keep Totals. A malfunction of the Keep Totals filter option occurring on Layouts containing an Entity
in a column has been resolved.
- Screen selection. A malfunction of the Procedure Designer environment occurring when opening a
procedure with a DataReader action and causing the screen selection to reset has been resolved.
- SQL-Builder. A malfunction of the RDB InfoCube designer environment occurring when attempting
to create a table on an Oracle or SQL-Server database to store an InfoCube of type double precision
has been resolved.
- FlowChart. An instability causing the BoardClient program to crash and occurring randomly when
clicking on a FlowChart area linked to another screen has been resolved.
- Select. A malfunction occurring when using the Focus function on an entity which exceeds the entity
cut-off threshold has been resolved.
- STO. A malfunction of the STO object occurring on a Layout with two or more validation fields has
been resolved.
- STO. An instability of the STO object which was causing the loss of the Layout configuration has
been resolved.
- DataFlow with Rule. A malfunction of the DataFlow occurring when calculating a Rule on an
InfoCube having complex multidimensional structure has been resolved.

332

Release Notes
- A malfunction causing the BoardServer to hang when processing a column algorithm containing a
syntax error due to an incorrect use of quotes has been resolved, the calculation with the error is now
ignored.
- FlowChart area with color coding. A malfunction of the color coding function of an area of the
FlowChart object has been resolved.

Release notes for version 5.6D


Upgrade instructions
BoardClient version 5.6B (or earlier) shouldn't connect to a BoardMaster version 5.6D and viceversa. It is recommended to first upgrade the server where BoardMaster is running to version 5.6B
and then upgrade all PCs running BoardClient.
Tip! It is possible to run the installation procedures as a background process that doesn't require any
user interaction (silent installation). Refer to the following knowledge-base article for details: How to
install Board in silent mode

Bug Fixes and changes


- F7 Export. A malfunction of the F7 Export (to MS-Excel or other spreadsheet program) occurring
when exporting a DataView having a Header enabled and causing the truncation of the decimal parts
of numbers has now been resolved.
- Screen object maximize. It is now possible to maximize a screen object (such as DataView, Graph,
etc) by dragging and dropping the Maximize icon onto the object, only while in runtime mode. While in
Capsule design mode the Maximize icon is inactive.
- BoardServer not responding. Execution of an incorrect Layout containing references to a deleted
entity item could provoke a BoardServer to stop responding, now the faulty Layout is discarded by the
BoardServer.
- DynaZip Error. A case of "DynaZip Error" sometimes occurring while running a procedure which
updates the database data dictionary immediately followed by a refresh of a screen containing a
series of small Layouts, has been resolved.
- Capsule black screens. Different cases of errors occurring while copying screens from one Capsule
to another and which could provoke corrupted screen (black screens), have been resolved.
- Capsule screen title. The maximum size of a Capsule Screen title is of 64 characters, a warning
message now indicates the user to reduce the title length when the limit is exceeded.
- DataEntry calculator. Cases of BoardClient crashes occurring on systems configured with Regional
Settings where the decimal grouping symbol is the space character have been resolved.
- Procedures. When accessing the Procedure Design environment through the Edit button of a
Button object or the Edit button of a FlowChart area, it is not possible to create a different Procedure
by using the Procedure "Save as.." button.
- Capsule Screen list window. The pop-up window appearing when right-clicking on a Capsule name
which shows Capsule's screens and procedures list is now wider to facilitate reading long screen titles
and procedures names.
- Procedure name tool-tip. In the Procedure Designer environment, if a procedure name exceeds the
width of the drop-down list containing all procedure names, it is possible to view a tool-tip with the full
procedure name by selecting the procedure in the drop-down list and then placing the mouse over the
title.
- Copying Procedures. A malfunction occurring when copying a Procedure from one Capsule to
another which was causing a corruption of the target Capsule by erroneously copying to the target
Capsule the screens list of the source Capsule, has now been resolved.

333

Board 6.1 Manual


- Copying Procedures. A malfunction occurring when copying a Procedure from one Capsule to
another and which was erroneously creating a screen titled "Main" in the target Capsule has been
resolved.
- Select. Resetting a selection on a stand-alone entity could cause an unwanted selection on items of
other standalone entities, this malfunction has now been resolved.
- Screen Hardcopy. A malfunction of the Screen Hardcopy feature that was provoking an incorrect
screen capture with two missing pixels has been resolved.
- Screen Hardcopy of all screens of a Capsule. A new feature, which is activated by pressing the
keys shift+F11, allows a user to capture the screen-shot of all screens of the currently open Capsule:
for each screen of the Capsule an bitmap file (extension BMP) having the same name of the Capsule
screen is created into the folder \Board.Loc\Desktop of the user's computer.

Bug Fixes and changes of Board Web


- Print Preview. A malfunction of the Print Preview function occurring when using the "space"
character as digit grouping symbol has been resolved.
- Print Preview. A malfunction occurring when attempting to print a report having special characters or
accented characters in the column headers has been resolved.
- Drill-through. A malfunction occurring when trying to drill-through on a web report has been
resolved.
- Printing large reports. When printing multi-page reports the column headers are now repeated on
each page.
- Web replicator. A malfunction of the Web Replicator function (F8) occurring when translating to a
BSP page a Capsule screen containing a FlowChart object with two or more buttons has been
resolved.
- Supertable report. A malfunction occurring when using an entity in a column of Web report,
generating an incorrect count of the entity members in the column total has been resolved.
- Supertable with header. A malfunction occurring on a Supertable using the table "header" option
has been resolved.
- Supertable - Sort on column. A malfunction of the Supertable column sort, occurring on column
having some blank cells has been resolved.
- Supertable - multi-line text. The Supertable now supports displaying multi-line text in a report cell.
- HTML Max Kbytes. A malfunction of the BoardMaster program which was not correctly saving the
parameter HTML Max Kbytes found on BoardMaster's Web tab has now been resolved.
- Supertable with data-entry. A malfunction of the Supertable object occurring after the first dataentry on an InfoCube column which was causing other columns to become editable has now been
resolved.
- Web replicator. A malfunction of the Web Replicator function (F8) occurring when translating a
Capsule located in a directory having the same name of the Capsule or containing the name of the
Capsule, which was creating an incorrect directory structure in the Root_Web directory has now been
resolved.

Release notes for version 5.6B


Upgrade instructions
Upgrading from version 5.6
BoardClient version 5.6 can connect to a server where BoardMaster 5.6B is running therefore
it is possible to initially upgrade the server where BoardMaster is running then gradually
update all PCs running BoardClient from version 5.6 to version 5.6B.

334

Release Notes
Upgrading from version 5.5 (or earlier)
It is required to upgrade all client PCs simultaneously. BoardClient version 5.5 (or earlier)
cannot connect to a BoardMaster version 5.6B and vice-versa. It is recommended to first
upgrade the server where BoardMaster is running to version 5.6B and then immediately
upgrade all PCs running BoardClient. Note that BoardMaster version 5.6B refuses
connections from BoardClient version 5.5 (or earlier) to grant integrity.
Capsules and databases created or edited with version 5.5 (or earlier) are fully compatible
with version 5.6B and do not require any type of conversion or change in order to be used
with version 5.6B.
Tip! It is possible to run the installation procedures as a background process that doesn't require any
user interaction (silent installation). Refer to the following knowledge-base article for details: How to
install Board in silent mode

Bug Fixes and changes included in version 5.6B


- Print error on HP printers. Cases of errors occurring when attempting to print a DataView to some
printers (particularly HP Laser Jet 1320, 1160 and 1003x) have been resolved.
- Named and Dynamic Selections in Procedures. Due to a malfunction, the use of Named and
Dynamic selections in procedures has been disabled. This is a temporary measure which will be
removed in a future release.
- Named Selections and Exclude. Due to a malfunction, the use of the Exclude in defining a Named
Selections has been disabled.
- Goto action in Procedures. A malfunction occurring on procedures having two (or more) GoTo
actions and provoking an incorrect number of iterations on the second Goto has now been resolved.
- Capsule screen Print HardCopy. A malfunction of a Capsule's print screen feature that was
truncating a few pixels on the right border of the Capsule screen has been resolved.
- Alert/Gauge on DataView. A malfunction of the Alert feature combined with the Gauge option and
occurring on systems having the comma as the decimal separator has been removed.
- Layout and ReferTo. An apparent error in the drop-down list visualizing the members of an entity
set in the ReferTo pane of a Layout and occurring in some cases of Layouts where two or more
columns have different ReferTo settings has been removed.
- DataView columns with Checkbox format. The Checkbox symbol no longer appears on the
grouping rows and on totals rows when the column Summary algorithm is set to NoTotal.
- FlowChart "No Hwnd bound to this box" error. A malfunction of the FlowChart object occurring
when placing the toolbox over an area of the FlowChart and provoking the error message "No Hwnd
bound to this box" has been removed.
- Capsues Tree Navigator. BoardClient users having a Lite or Lite+ license are now unable to copy or
overwrite Capsules by right clicking (followed by drag&drop) on a Capsule in the Navigator tree.
- STO with triggered procedure. A malfunction of the STO object causing a newly created entity
member to lose has been removed.
- Drill-down to child database. A malfunction which was preventing from drilling-down to a child
database has been resolved.
- Truncated Messages on Buttons. Long text in a Button's Confirm Message or Comment fields
was truncated. The Comment field can now be scrolled vertically to view the full text. A long text in the
Confirm field may still be truncated when long.
- E-mail Broadcast. Cases of instability of the e-mail broadcasting function, causing the process to
hang, have been resolved. The process of sending e-mails (executed by the Broadcast program) has
been slowed allowing a greater time delay between two consecutive e-mail messages.
- Capsule Tree Navigator. An error, occurring when attempting to delete a Capsule screen by
drag&drop of the screen on the trash bin and causing the error message "Unable to remove
screen", has now been resolved.
335

Board 6.1 Manual


- Capsule User Password. An error, occurring when defining certain User passwords on a Capsule,
has now been resolved.
- Totals on columns containing Entities. It is now possible to disable the column total on columns
containing Entities by setting the Summary algorithm to NoTotal. Previously this setting had no effect
and the count of members was always displayed.
- DataView with Gauges. An error, provoking the Gauges to appear on some line breaks on
DataViews having two or more entities by Row, has been revolved.
- Loading large InfoCubes. Loading some large InfoCubes (generally exceeding 2 GB) could
provoke a corruption of the InfoCube version, this case is now trapped and an "Out of memory"
error is logged in the database log. This error is generally resolved by reducing the number of
InfoCubes fed by the DataReader protocol or by reducing the number of versions of the InfoCube.
- DataView with NoTotal on an InfoCube column. An error, occurring on a DataView when setting
the Summary Algorithm to NoTotal and causing the display of all report rows (as if the Show All rows
option was enabled), has been removed.
- Master DataView. A malfunction occurring on a Master DataView with two or more independent
entities by row has been fixed.
- Button with Images. A malfunction of the Button object causing the image Autofit option to fail has
been fixed.
- Mouse icon - Hourglass. Handling of the hourglass mouse icon has been improved in some cases
when accessing large databases and when running DataReaders.
- DataView with Alert and Detail by. A case of a malfunction occurring on DataView reports using a
color coding (Alerts) and DetailBy on a column, has been resolved.
- STO and trigger procedure. A procedure triggered through the STO object and containing two
consecutive DataFlow actions, now runs both DataFlow calculations on the same selection which is
limited by the entity item selected in the STO Entities section.
- DataView and Alert. A malfunction occurring on DataView reports using color coding (Alerts) and
causing the totals of calculated columns to become green has been resolved.
- Extract of large InfoCubes. A malfunction which was preventing to extract InfoCube versions larger
than 2 GB has been resolved.
- F7 Export change. It is now possible to configure a spreadsheet program other than Microsoft Excel
which is launched when the F7 key is pressed, for example OpenOffice Calc. Type the full name of the
program in the F7 Export field of the BoardClient setup window. Note that the spreadsheet program
must be able to read Microsoft Excel files as Board still produces a Microsoft Excel like file with the
extension XLS.
- Web Server Page for Mozilla. Board Web Server Pages are now correctly viewed on Firefox/Mozilla
browsers.
- Web Server and SSL. Several changes and optimizations required by the HTTPS protocol have
been implemented in the syntax of URL links and commands contained in the Board Web Server
Pages.
- Drill-down in Web Server. A case of error in the drill-down from a Board Web Server Page
occurring in some cases when the code width definition of the Entity on which the user drill-down was
significantly larger than the actual code has been resolved.
- Board Web Server and LDAP Append mode. An error in the validation of the user password
occurring when using the LDAP authentication with LDAPAppend mode has been resolved.
- Drill-down on Web report. An error occurring when drilling-down on the last row of a Web
Supertable which doesn't have any column totals has been resolved.
- Print of a Web Page with entities by page. A modification to the print preview function has been
implemented to better manage printing of Supertable reports containing entities by page; the entities
by page could overlap the table containing data.

336

Release Notes
- Web print preview. An error, occurring on the print preview page of reports without any column
totals (the Summary Algorithm is set to NoTotals on all columns) and causing the last row of the
report to be formatted as a totals row, has been resolved.
- Web Replicator. An error, in the creation of a BSP script occurring when translating a DataView
using color coding with red and green thresholds equal to zero, has been resolved.
- Web script in BSP page. A malfunction of the web script commands causing an error when defining
certain column headers on columns using a time function (such as Previous Year) has been
resolved.
- Print of a Web Page. An error occurring when attempting to print a Web report created through the
Query Builder has been resolved.
- Web Page print style. The format of the table corresponding to a Supertable's print preview can be
customized through the classes TABLE.DataPrn contained in the BoardStyle.css file. .
- Web Replicator. A malfunction of the Web Replicator, occurring when exporting a Capsule screen
containing a picture and using the Picture size "percentage" option has been removed.
- Alert box in Web Page. The SquareAlert class has been added to the BoardStyle.css file to allow
formatting of the alert boxes contained in a Board Web Server Page.
- Web Server HTML theme. An error causing some charts not to display correctly in a Board Web
Server Page when using the HTML theme has been resolved.
- Try and buy licenses: A malfunction that was preventing the use of Try&Buy licenses (licenses
having a time limit) on some systems has been resolved.

Release notes for version 5.6


What's new in version 5.6
Board Version 5.6 brings a rich set of new features and enhancements, the most relevant are:
Improved Web capabilities: Board Web pages now support most of the features available in
the Capsule environment including unlimited data-entry with DS&S (logical data-entry),
procedures and flow-chart support for porting your Capsule applications to the Web.
The Web Menu Builder allows to quickly create fully customized menus which are profiled for
each user account.
Multi-language support for internationally deployed projects: this feature allows to translate the
Entity names and InfoCube names into different languages. Different users accessing the
same database will view the entity names and InfoCube names in their chosen language.
Improved reporting and data presentation: the DataView and Cockpit objects have been
enhanced adding new features and options for more flexibility and a higher quality of data
presentations.

New features of BoardClient version 5.6


The new features of the Capsule and Database environment are
DataView Dynamic Format. Allows to define the font style, font color and other format
settings on a report row. The definitions are linked to the entity item, it is therefore
independent to the number of rows of the report.
DataView Header. Adds a header row to a DataView report. The header row may contain a
picture (a logo) and some text. When printing a DataView having a header row, the header is
automatically repeated on every page.
DataView Print Preview. Displays a print preview window for reports built using the DataView
object.

337

Board 6.1 Manual


Cockpit styles. Select your preferred Cockpit style from a gallery of over a dozen different
objects including angular, horizontal and vertical gauges.
Capsule Themes. Allows to set the style of buttons and DataView objects for an entire
Capsule.
Multi-language Database. Designed for internationally deployed projects, this feature allows
the translation of InfoCube names and of Entities into different languages. The end users
access a unique Board Database but visualize InfoCubes names and Entities in the language
of their choice.
Improved performance for large reports: a new optimized technique for executing reports
having two large independent entities by row (for example Customer and Product, each
having several thousands members) has produced a significant performance gain which can
reduce response times from several minutes to a few seconds only.

The new Board Web environment


The new Board Web Server environment allows delivering better and more powerful B.I. and C.P.M.
applications which are fully browser based. Board Web Server now supports most of the objects and
features existing in the Capsule environment.
The generation of Board Web applications is made in a more efficient way than previously: using the
Capsule designer environment you may build screens and procedures and then translate them to a
Board Web Server page definition.
A Board Web Server Page (BSP) is a HTML page, produced on the fly by a BoardServer, and
containing Board analysis. A Board Web Server Page is the equivalent of a Capsule screen: it is a
combination of tables, charts, gauges, images and buttons that link to other pages or that trigger
Board procedures. Existing Capsules can be exported to an equivalent BSP, however some limitations
apply, details are provided later in this section of the manual.
Some of the main features supported by the Board Web Server Pages are
The Supertable object: This object is the equivalent of the Capsule's DataView object: it is a
table object which with scroll-able columns and row with frozen headers. It supports column
sorting by clicking on column header, it has an ad-hoc print function and supports logical dataentry (DS&S) on an unlimited number of cells.
Web Buttons: They are the equivalent of Capsule Buttons, allowing to easily create a guided
navigation throughout the Board Web Server Pages or launching a Board procedure.
The Flowchart: It is possible to port into a BSP a Capsule Flowchart object with embedded
DataViews, Charts, gauges and buttons.
Drill-down to other Analysis: it is possible to drill-down from one analysis to another Board
Web Server Page. This feature can be though of as an extension of the Drill-down feature. It
allows for example to drill-down from one report to another report having a different Layout.
Board Web Server 5.6 also delivers a completely restyled Web menus with a visual designer
environment that allows to create customized menus per user group or per single user account. The
Web Menu Designer is a centralized management feature accessible from the BoardMaster program
that allows to define for each user or user group which Board Web Server Pages are accessible. The
Menu Designer also allows to customize the menu style such as orientation, fonts, color, icons.

Instructions for upgrading to version 5.6


To upgrade to version 5.6,
download the setup programs from the download area of the web site,
run the BoardClient installation program on the client computers
run the BoardServer installation program on the server.
if you are using Board WebServer, run the Board56WebKitFiles installation program.
It is recommended to upgrade to the new version first the server running BoardMaster and
after upgrade client computers running BoardClient.
338

Release Notes

Note for Board Web Server Administrators


When installing BoardMaster version 5.6 on a server where a prior version was installed, the
new Theme option automatically sets itself to HTML, which makes BoardMaster HTTP
service emulate as prior versions. The Theme setting is located on BoardMaster's WEB
configuration tab.
In order to use the new 5.6 Web objects and features, change the Theme setting to any
value other than HTML. Running old Board Web Queries with the new Theme may modify
the HTML code and alter the positioning of objects. It is recommended testing old Web
Queries in a test environment before switching the live server settings to the new Themes.

Notes
It is required to update all PC running Board simultaneously: BoardClient version 5.6
cannot connect to prior versions of BoardMaster and vice-versa the BoardMaster
version 5.6 doesn't accept connections from earlier versions of the BoardClient.
Board applications (databases and Capsules) created with prior releases (5.x) are fully
compatible with the current upgrade and do not require any migration or other change.
When upgrading a PC or a server from any earlier version you must not un-install the Board
license. Installed licenses are fully compatible with the current 5.6 release therefore after
running the BoardClient and BoardServer installation programs you can start using version
5.6 immediately.
It is possible to run the installation procedures as a background process that doesn't require
any user interaction (this technique is referred to as "silent mode" install). Refer to the
following knowledge-base article for details: How to run Board Setup in silent mode.

BoardClient version 5.6 new features


DataView Dynamic format
Allows to define formatting options on DataView rows. The format is linked to the entity member. Once
a format is defined, it is always applied to the entity member on which it has been defined even in
case the number of rows of the report changes.
To configure a Dynamic format
Open an existing DataView or create a new report using the DataView and execute it,
then open the Layout, go to the Format tab and select Dynamic and click the Designer button
as shown

339

Board 6.1 Manual

In the Designer environment, click on a row header to highlight it, then use the toolbar at the
top to select the desired font, color and cells border style,

When finished, press the OK button to save your work.


Then press the OK button of the Layout to re-run the report with the newly defined format.

Remarks
Font styles and color are defined per row, therefore applied to all columns of the report.
It is possible to select several rows then apply the same format to all: hold the shift key down
to select a range of contiguous rows or hold the Ctrl key down to select non contiguous row,
then define the format options (font, color and borders).

340

Release Notes
If the Layout definition contains more than one entity By Row, then it is possible to define the
format only for the most indented entity. When opening the Designer environment for such
reports notice that only the most detailed entity of the Layout is retained.
This feature is not compatible with the Layout options Indentation and Collapse.
Applying a format to multiple rows
It is possible to select several rows then apply the same format to all:
hold the shift key down to select a range of contiguous rows
or hold the Ctrl key down to select non contiguous rows; the selected rows are highlighted,
then define the format options (font, color and borders) through the top toolbar.
Another method for applying the same format to multiple rows consists in defining the desired format
for one row, then selecting the other rows to format and clicking the Apply button located in the top
toolbar (see image below).

Copying format from one DataView to another


It is possible to reuse the format options defined for one DataView onto another DataView having the
entity in rows:
Run the formatted DataView
Then run DataView that needs to be formatted - note that it may be in a different screen or
Capsule - ,
Open its Layout,
Go to the Dynamic Format Designer and click the Last Template button as shown in the
following picture

DataView Header
Allows to add a header row to a report built using the DataView object. The header can contain an
image file (a logo) and some text, including some computed text such as the current date and time,
the name of the Board database and Capsule. This feature has been designed to improve the
reporting capabilities to meet statutory reporting requirements.
Example of a DataView report with a header

341

Board 6.1 Manual

How to add a header


To add a header to a DataView report,
open the Layout and go to the Header tab,
click the Enable checkbox as shown,

The header is always made of two cells, the first cell which may contain either some text or an
image (usually the company logo or brand logo) and the second cell which may contain text
only.
Type the text in the desired text areas: the First Cell Text area and/or the Second Cell Text
area. Multi-line text is supported.
To include an image into the first cell, click the Picture button and select the desired image file.

342

Release Notes

The following functions can be used in within the text:


@date
returns the current system date (from the clock of the computer running
BoardClient)
@time
returns the current system time (from the clock of the computer running
BoardClient)
@datetime
@user

returns the current system date and time

returns the name of the Board user (the user account logged-on BoardClient).

@screen

returns the current Capsule's screen name.

@capsule
@database

returns the current Capsule's name.


returns the current Board database name.

Set the text font style, color and background color and alignment

Set the header cells border as desired,

343

Board 6.1 Manual

Cockpits enhanced
New styles and options designed to support creating dashboards. You can now choose the style of
your cockpit object from a gallery of different angular gauges as well as some vertical and horizontal
indicators. For any of the available indicators it is also possible to set the color sequence to redyellow-green or reverse it to green-yellow-red.
To select the cockpit style,
Open the Layout of a cockpit object, go to the Graph tab
Then select the style from the Appearance drop-down list and choose the orientation as
desired

The different cockpit styles are illustrated hereafter

Default appearance. The name of the


entity member referring to the object is
displayed under the gauge.

Angular 1

Angular 2

344

Release Notes

Angular 3

Angular 4

Angular 5
This is the style of prior versions.

Angular Mid Size

Angular Small Size


This style doesn't display the entity member
name. Place the mouse over the gauge to
view the entity member name to which the
indicator refers.

Horizontal 1

Horizontal 2

Vertical

Vertical NoLabel
This style doesn't display the entity member
name.

345

Board 6.1 Manual

Vertical Small NoLabel.


This style doesn't display the entity member
name.

Notes, applying to any of the above Cockpit styles:


The red to green sequence can be reversed by switching the Left-to-Right option to Rightto-Left.
Placing the mouse over the object displays a tool-tip with the name of the entity member to
which the object refers and the numerical value of the indicator.

Multi-language Database capabilities


This feature is addressed to those needing to deploy localized Board applications internationally. The
Board DD Localizer translates a Board Database data dictionary into several languages: for each
InfoCube and Entity of the database it is possible to define translations in different languages. The
Board users can then select their preferred language and work in the Capsules environment viewing
the InfoCube names and Entities names in the preferred language.
How to localize a Board Database data dictionary
To define the translations for a Board database,
Open the Board database and select the DD Localizer icon from the Database icons list, as
shown.

346

Release Notes
The translator environment opens. Type a language name or identifier in the top left table
which is titled Languages, as in the following example

For each language identifier defined, a new column will appear in the main translation table.
The column heading displays the language identifier to which it refers.
The first column of the main translation table contains the complete list of InfoCubes and
Entities of the Board database. InfoCubes names are highlighted with a yellow background
while entities are displayed on a grey background. Type the desired translation in the
corresponding cell as shown in the following example,

Note that it is not necessary to translate all terms in a given language. If the name of an
InfoCube or Entity is not translated then the default name is used.
When the translation is completed for all desired languages, click the OK button to save your
work.
Configuring the language for a user
To set the language for a user,
Open the BoardClient program and go to the Setup window.

347

Board 6.1 Manual

In the Data Dictionary Language ID field type the language identifier which has been defined
in the translation environment.

Click the OK button to save the setting.

Notes
When setting a language for the first time or when changing a configuration you may need to
close and restart the BoardClient program to make changes effective.
The translation of InfoCubes and Entities applies to the Capsule environment only. Whenever
a database design function is accessed (such as Entities definition, or InfoCubes definition)
the language setting is ignored and the actual name of the InfoCubes and Entities is
displayed. This feature is designed to support end-users working in the Capsules
environment, not for Board developers needing to frequently change context between the
Database and the Capsule environments.

Capsule Themes

This feature allows to set the style for all buttons (Button theme) and for all DataView objects
(DataView theme) of a given Capsule. Three Button themes and three DataView themes exist.
To select a theme, open the Capsule's Screen property window.

348

Release Notes

Button Themes
The Button themes are Classic, Silver and Office. The Silver and Office themes add a shaded effect to
the buttons and make the button change color when the mouse is placed over it. Note that choosing
the Silver or Office themes will affect all buttons of the Capsule and the new color prevails over the
button's color property.
Tip: the Silver and Office themes are best combined with setting the screen lines width to zero,
disabling the Show Lines property and setting the buttons BevelWidth property to zero.
DataView Themes
The DataView object themes are Grey, Sand and Blue. The theme settings apply to all Capsule
screens. The Shadowed Labels check-box option allows to set the colouring of the first column of the
DataView - i.e. the column holding the entities.
Example of a DataView using the Grey theme:

349

Board 6.1 Manual

Example of a DataView using the Sand theme:

Example of a DataView using the Blue theme:

350

Release Notes

Improved performance for large reports


An new optimized technique for executing reports having two large independent entities by row (for
example Customer and Product, each having several thousands members) has produced a
significant performance gain which can reduce response times from several minutes to a few seconds
only.
The optimization has not only reduced response time but has also significantly reduced the amount of
memory (RAM) needed by the BoardServer program to execute such reports and the amount of
memory needed by the BoardClient program to display the report.
This new technique is not applicable to DataView reports having data-entry enabled, for these reports
performance is unchanged to prior versions.

BoardClient 5.6 - Other changes


Drill-down
The Drill-down window doesn't display the complete list of entities but only those that can be selected
for drill-down, in other words only entities which are dimensions of the InfoCubes used in the report.
DataView Print Preview
The Print Preview function is now available on the DataView object. Drag and drop the printer icon on
the DataView report then click the Preview button.

351

Board 6.1 Manual

Export to MS-Excel
The Export to Microsoft Excel feature (pressing the F7 function key) has been modified: when opening
an Excel file created from an export from Board, the first Sheet of the workbook (Sheet1) is now
displayed instead of the last Sheet of the workbook.
Modifying the Max Item Number of an Entity
It is now possible to modify the Max. Item Number of an entity without having to clear its content as
long as there are no InfoCube versions structured by that entity which contain data. When there is at
least one InfoCube version structured by an entity and containing data, a red flag appears in the
checkbox column marked with an asterisk. Therefore it is possible to modify the Max Item Number of
entities for which the flag is not present.
Considering the example hereunder, it is possible to change the Max Item Number of the entity City
but not of entities Customer or State.

BoardMaster AutoResume option


The watchdog service of the BoardMaster program (refer to BoardMaster configuration / Options tab
for details) that monitors the BoardServer processes now automatically kills then immediately restores
the BoardServer processes which are detected as "Not Responding". To enable this feature tick the
AutoResume Enable check box found on the BoardMaster Options tab.
Optimizing the HTTP service process threads
It is now possible to set the number of process threads of the BoardMaster HTTP service. In prior
versions, process threads were created dynamically for each new logged-on user. At the end of the
session the thread was destroyed. Now, an initial number of process threads can be allocated
therefore the time required to create a new thread (and to destroy it later) is saved. At the end of a
session the allocated thread is released and made available for reuse. Note that the number of initial

352

Release Notes
threads is not a limit, if all threads are allocated and an additional one is needed then it is dynamically
created (and will be destroyed when released).
This optimization can be significant for Board Web installations where the number of simultaneous
users is high (on average or during utilization peaks). It improves the server's performance and the
degree of parallelism it can handle.
The number of process threads is set through the MaxThreads parameter found on the BoardMaster
WEB configuration tab.

A value ranging from 25 to 50 may be suitable for small to medium installations with a number of
named accounts of a few hundreds. For lager installations with peaks of hundreds of simultaneous
users, you may increase the threads number to 200, 400 or more. However, setting a too high number
will deteriorate performance and slow down the start-up of the BoardMaster HTTP service.
Finding the optimal configuration requires an empirical approach since this type of behaviour is largely
dictated by the hardware characteristics. Multi-processor servers and CPUs with Dual-core technology
are designed for managing a high processes parallelism and can therefore handle a higher number of
process threads compared to servers with a single processor.

Board Web Server version 5.6 new features


The Web Menu Designer
The Web Menu provides the navigation to the Board Web users. It contains links to the various
analysis and Board Web Server pages and features that the end user is authorized to access. The
Menu Designer environment allows to visually create fully customized menus. Menus can be defined
at user group level, per single user account.
The menu is a Java-Script object but through the Menu Designer you can quickly configure menus
without knowing any Java-Script and without writing any code. Through the Menu Designer
environment you can define which menu options are visible to a given user, link the menu options to
Board analysis (a Board Server Page) as well as customize the menu layout to horizontal, vertical or
pop-up, define the menu fonts, the colors and icons.

353

Board 6.1 Manual


Example of a horizontal menu

Adding a Web menu


To set up
the default menu, click the Default Menu icon located in the Security tab of the BoardMaster
program.

a user's menu or a user group menu, click on the Web Menu button found on the user
account row,

An arrow icon on the Web Menu button indicates that a personalized menu exists for that account.
The Web Menu Designer environment opens (see below).
354

Release Notes

Creating the Web Menu


To create a Web menu,
Open the Web Menu Designer,
key-in the menu items in the Title column

Define the menu level: press the Level Down button to indent an item (or press Level Up to
remove the indentation),

If desired you may click the Preview tab to have an instant preview of the menu, then click
the Designer tab to switch back to the design environment,

355

Board 6.1 Manual

To associate an action to a menu item, select it then choose one the three available action
types,

File

Runs a Board Web Server page (BSP) or links to an HTML or ASP


page.
Select a Board Web Server page file (bsp or txt file containing a Board
query script), or a HTML file or an ASP file. The selected file must be
within the BoardPub\RootWeb folder.

Folder

Dynamic folder: it is a folder which automatically links all BSP, HTML or


ASP pages contained in it.
When a new BSP or HTML page is created in the folder, it becomes
available as a new menu option the next time the user logs-on.

Native
Function

356

Runs the following standard functions:

Select

Opens the Select window, then rerun the last


Board query based on the newly selected items.

Download

Allows to download the data from the last Board


query to a MS-Excel file.

Refresh

Re-runs the last Board Web Server page.

Query
Builder

Opens the query builder page for creating a new


Board query.

Save as..

Allows to save the last run Board query.

Edit

Displays the Board script of the last run Board


query (or Board Web Server page).

Print

Prints the current Board Web Server page or the


page in the main frame.

Briefing

Opens the Briefing log-on page for accessing a


Board Briefing collaboration session.

Release Notes

Home

Link to the home page of the Board Quick site:


opens the Index.html page found in
BoardPub\Root_Web

Note that you must first run a Board Web Server page before being
able to access the above Board functions - except for Home and
Briefing.
You may customize the menu icon by selecting a picture file from the Icon field. Note that
the
picture
file
must
be
located
in
the
directory
\BoardPub\Root_Web\_Web_Sys\MenuDat\Images.
You may add a help text which will be displayed when the user places the mouse over the
menu option by typing it into the ToolTip field.
Click the Save button to save the menu.

Notes
The menu definition is saved in a file having the user's account name (or user group) and
MNU extension in the directory \BoardPub\Root_WEB\_Websys\MenuDat . For example
the Web menu for the user account Ronald is a file named Ronald.mnu . To back-up menu
definitions
save
all
the
files
with
MNU
extension
found
in
the
\BoardPub\Root_WEB\_Websys\MenuDat directory.
If you rename a user account or a user group, you should rename the corresponding menu
file accordingly.
Customizing the Web Menu
The Menu properties

Use the options located in the top part of the Menu Designer to customize the menu properties. Click
on the Preview tab to view the effects on the menu as you change its properties..

Mode

Sets the menu type to one of four options:


Horizontal creates a horizontal menu
Vertical creates a vertical menu
PopUp [OnClick] creates a pop-up menu which expands
when the user clicks on the menu icon.
PopUp [MouseOver] creates a pop-up menu which
expands when the user places the mouse over the menu
icon.
Note! After changing the menu orientation or type, use the X
Offset and Y Offset fields to adjust the menu position.
357

Board 6.1 Manual

Menu Icon

Defines the default icon for menu folders.

Page Icon

Defines the default icon for menu pages (leaves).

Item ForeColor, BackColor

Sets the text font color and background color.

Highlight
BackColor

Sets the text font color and background color applied when
the mouse is placed over the item.

ForeColor,

Border

Sets the menu border.

Font Size

Sets the text font size.

Icon Size

Sets the menu icons size.

Spacing

Sets the spacing between two contiguous menu items.

X Offset, Y Offset

Sets the position of the menu.

Copying a Menu
When creating a new menu or editing an existing one, it is possible to copy the menu definition from a
previously defined one,
open the Menu Designer
click the Copy From icon and select the menu name to copy settings from.
apply the desired changes then click the Save button.
Since the menu definition is saved in a file having the user's account name and MNU extension in the
directory \BoardPub\Root_WEB\_Websys\MenuDat, you may also copy a menu by copying the
MNU file. For example, if you wish to copy the menu of the user Robert and apply it to the user Hellen,
simply copy the file Robert.mnu into Hellen.mnu using Windows Explorer.

Web Button Themes


The style of the button objects which can be included into Board Web Server Pages can be set by
selecting one of the available the Themes from the BoardMaster WEB configuration tab (see image
below). It is possible to change the Theme while the BoardMaster HTTP service is running. The theme
setting applies to all Board Web Server Pages.

358

Release Notes

The available options are


Aqua

Rounded button with a shaded effect. The button changes


color when pressed.

XP

This style changes the button color when the mouse is placed
over it.

Classic

This button style is the only type for which it is possible to


define the height. For any other button style only the button
width can be defined in the Board Web Server Page.

HTML

This option makes the BoardMaster HTTP service emulate


the behaviour of prior versions, reports are rendered using a
standard HTML table instead of the new Supertable object.
Refer to the Upgrade Note to administrators for details.

Board Web Server Pages


About Board Web Server Pages
A Board Web Server Page is a HTML page produced on the fly by a BoardServer and containing
Board analysis. A Board Web Server Page (BSP) is the equivalent concept of a Capsule screen: it is a
combination of tables, charts, gauges, images and buttons that link to other pages or that trigger
Board procedures.
From the Capsule designer environment it is possible to create Capsule screens and procedures and
then translate them into a Board Web Server Page definition. Existing Capsules can be translated to
an equivalent Board Web Server Page, however some limitations apply. Details are provided in
following paragraphs of the present manual.
A Board Web Server Page definition is a set of Board script commands stored in a text file with
extension TXT or BSP. Version 5.6 extends the Board Web Queries script language with new
359

Board 6.1 Manual


commands and options, however it is not necessary to learn this language as the Board script is
automatically generated from the Capsules design environment through a single key stroke.

Transposing Capsules to Board Web Server Pages


How to transpose Capsule screen to a Board Web Server Page and publish it
Open the desired Capsule screen then press the F8 function key.
The Web Replicator window opens. Refer to The Web Replicator (hereafter) for details on
using the Web Replicator.
Select the desired options then press the OK button.
The Web Replicator generates the Board Web Server page definition in the chosen target
directory. The Board Web Server page definition is a set of different files having the name of
the Capsule screen and different extensions. The main definition file of the Board Web Server
Page is a text file named ScreenName.bsp which contains the Board script commands.
The Notepad text editor program automatically opens the BSP file to allow amending the
Board script, if desired.
To make a Board Web Server Page available to Board Web users, open the BoardMaster
program and add to the user's Web Menu a new menu option that links to the
ScreenName.bsp file. Refer to Creating the Web Menu for details on using the Web Menu
Designer.
The Web Replicator
The Web Replicator is a function that analyses a Capsule screen and translates it into a Board Web
Server Page. The Web Replicator can translate a single Capsule screen or all screens of a Capsule.
When it is launched, it analyses the Capsule screen, and
translates the entities set in the Dynabar into equivalent a HTML drop-down lists.
translates the DataView objects into a corresponding HTML table: the Supertable object.
translates the Graph objects into JPG images - dynamically created when the report is run.
translates the Picture objects into JPG images.
translates the Button objects into an equivalent HTML button. Note that only buttons having an
associated action (either a link to another screen or a link to a Procedure) are considered.
subdivides the FlowChart objects into different parts
the static part which are the images and drawings are translated into a JPG image
embedded DataViews, Graphs and Pictures are translated as previously described
the click-able areas having the Shape property "Button" and having an associated
action (link to another screen or link to a procedure) are translated into buttons.
FlowChart areas that are linked to an InfoCube value (through the area property
"Show Value") are translated into single-cell tables that supports color-coding. This
feature effectively creates the equivalent of the Alert object.
To run the Web Replicator, open a Capsule then press the F8 function key of the keyboard. The
following window opens.

360

Release Notes

The Web Replicator features and options are


Screen

Picture size

Position

Current

Translates the current Capsule screen only.

All

Translates all screens of the current Capsule.

As is

Translates images present on the Capsule screen into JPG


images in their original natural size.

Resize

Translates images present on the Capsule screen into JPG


images preserving the size of the object which is in the
Capsule screen. This option reproduces the Capsule screen
more accurately but may stretch the JPG image and therefore
the quality of the image may deteriorate.

Percent

Defines the objects positions relatively, as a percentage of the


HTML page width and height. The object position is given by
the position of the object's top left corner.
Example of a relative position: Table at{10%;50%}

Pixel

Defines the objects positions absolutely, through


coordinates in pixels of the object's top left corner.

the

Example of an absolute position: Table at{10px;50px}


Tip! In order to build Web pages that appear identical
regardless of the screen resolution or of the Internet browser
size of the user, select Pixel both for the Position and Size
options.
Size

Percent

Defines the objects size relatively, as a percentage of the


HTML page width and height.
Example of a relative size: Table at{10%;50%;90%50%}
The first two values in the at command are defining the
position, the last two are the width then the height.

Pixel

Defines the absolute width and height (in pixels) of objects in


361

Board 6.1 Manual


the HTML page.
Example
of
an
absolute
at{10px;50px;600px;800px}

size:

Table

The first two values in the at command are defining the


position, the last two are the width then the height.
The Target field sets the output directory where the Board
Web Server Page definition files are created.

Target

Select one of the available options or type the desired output


directory.
Note that in order to publish a Board Web Server Page (and
for example add it to a user's Web Menu), all the definition
files must be placed under the Board Web site's root directory
\BoardPub\Root_Web. This can be achieved by defining the
target directory to be the \BoardPub\Root_Web directory of
your Board server (i.e. the Base Path of the BoardMaster's
WEB service); in this case the Web Replicator creates the files
in a directory that is ready for publishing however this requires
that the BoardClient is either executed from the Board server
itself or that is in the same local area network (LAN).
Background
picture
Dynabar
options

Allows to select a picture file to use as the background of the


HTML page. The Repeated option fills-up the HTML page
background with the selected image.
Autorefresh

When this option is enabled, Board Web Server Pages are


refreshed immediately as the end user selects an item from
one of the entities in the Dynabar (or its HTML equivalent).
If this option is not enabled then the user can make a selection
on more than one entity in the Dynabar and then refresh the
page by clicking the Refresh button. For Board Web Server
pages having several entities in the Dynabar, it may be more
convenient to disable this option and let the user select all
desired items before running the reports.

First Item
as default

When this option is enabled the entities in the Dynabar will


default to the first entity item in the list.

More
options

Show Print
icon

Enabling this option adds a printer icon at the bottom of the


Supertable objects which allows to print it.

Drill-Down
Path

[Entities list]

Select the entities which should be made available for drillingdown on the Supertable objects of the Board Web Server
Page. Note that the drill-down list of entities is applied to all
Supertables present on the BSP page (i.e. to all DataViews
present on the Capsule screen).

Insight
When the Web replicator is launched,
it creates in the target folder a sub-directory using the Capsule name to store the page
definition files
it creates a text file named ScreenName.bsp to store the Board script commands that
will be generated
it analyses the Capsule screen, identifies the objects which are supported by the Web
Server environment and translates them by creating
some script commands which are inserted into the bsp file,
362

Release Notes

some images, which are JPG files


some chart template files (vtc extension) which define the charts type and styles.
All files resulting from the translation of a screen are named using the screen title, optionally
followed by a counter and then the file type extension.
Note that if the Capsule screen contains an unsupported object then the object is ignored (see
the list of BSP Unsupported Objects).

See also the Guidelines for developing BSP pages and Supported Objects and Features.

Guidelines for developing Board Server Pages


This is paragraph is particularly important for those who are familiar with the Capsules environment
but new to the Web.
BSP pages can be created by writing Board script commands in a text file or by creating a Capsule
and using the Web Replicator feature which automatically generates the script commands. The
Capsule designer can therefore be viewed as the development environment for both for Capsules and
for BSP pages. However it is important to make some considerations regarding the different
characteristics of the two environments.
Performance
Board Server Pages (BSP) are rendered using HTML. Capsules work using Board's native ROAR
protocol and format which is extremely more compressed than HTML therefore the network traffic
generated by a report in the Capsule environment is lower than its equivalent HTML page generated
by executing the BSP page. This implies that a Capsule can handle with better performance much
larger reports (for example DataViews with thousands of rows) and can contain in a single screen
more objects than a BSP page. As a consequence, when you are creating a Capsule screen for the
purpose of generating a BSP page you should limit the size of the reports and the number of objects
so that the HTML page remains within reasonable size.
Functionality
The Capsules and Web environments have come much closer, a large proportion of the Board
features are available in both environments however some differences exist, not all Capsule objects
and features are supported in the Web environment, therefore
when you are creating a Capsule for the purpose of generating a BSP page only use the
Toolbox objects that are supported in the Web environment, which are Button, Picture,
DataView, Graph, DynaWrite, FlowChart and Procedures (a subset of actions is supported).
Refer to Supported objects and features for more details.
formerly existing Capsules, originally conceived and created to be used in the BoardClient
environment will need to be reviewed before translating them to BSP pages. The review
should cover a functional check (verify that the features and objects are all supported) and a
performance check (verify that the HTML pages are of reasonable size).

Supported objects and features


DataView
The DataView object is translated into a set of Board script commands that correspond to the Layout
definition. When the report is executed the data is extracted and returned in the HTML page into the
Supertable object. Virtually all features of the DataView Layout are supported and translated into a
Board script option including Filters, Cycle and Period Offset, Column and Row Totals, as well as the
new DataView Header feature. The DataView features that are not supported are the Dynamic and
Static Format, the font color property as well as the formatting that can be defined on individual

363

Board 6.1 Manual


columns. The font type, color and size can be defined in the cascading style sheet file
BoardStyle.css which is found in the BoardPub\Root_Web directory.
A Supertable is the Board Web Server Page equivalent of the Capsule DataView object.
Example of a Supertable

The Supertable object supports


Scroll-able rows and columns while the first column (containing the entities by row)
and the first row (containing the entities by column) remain frozen.
Column sorting: click on the column header once to so sort in ascending order and
click a second time to sort in descending order.
Column resizing
Data-entry, including logical data-entry (DS&S)
Images in cells (using the Alert/Gauge feature in a Layout) including animated GIF
images.
Drill-down or rows
Printing: an ad-hoc print function allows to print the Supertable
Double-byte characters
Cascading style sheet for defining fonts and colors. To customize the appearance of
the Supertable you can edit the cascading style sheet file called BoardCSS.css
(located in the \BoardPub\Root_Web directory). The classes relating to the
Supertable object are documented within the CSS file and are all grouped in a section
named /*Super table styles .
Insight
The Board script command for the DataView is
TABLE colwidth=[first column width in pixels] fontname="font name"
fontsize=[size] TopTitle{"..picture file..";"header text";size}
at{..position and size..}
...
byrow Entity
bycol Entity
show InfoCube
...
end TABLE
Note that the parameters within the TABLE statement are optional.
364

Release Notes

Example of a Board script


TABLE at{32px;107px;782px;446px}
byrow Division, City
bycol Year, Quarter
show Sales
show Vertical%
end TABLE
Graph
The Graph object is translated into a Layout definition (that defines data in the chart) and a chart
template which contains all the chart format definitions (chart type, style, colors, fonts and so on).
When a BSP page containing a chart is executed, the BoardServer program generates the chart as a
JPG image and includes it in the HTML page.
The chart template automatically generated by the Web Translator and saved into a file with extension
VTC. The script command that corresponds to the graph definition contains a reference to the VTC
file.

Insight
The Board script command for charts is
CHART using "..\Chart_Template" at{..position and size..}
bycol Entity
show InfoCube
...
end CHART
Example
CHART using "MyCapsule\Chart_Template" at{32px;107px;782px;446px}
byrow Division
bycol Year
show Sales
end CHART
Picture
The Picture object is translated into a JPG file which is the original embedded picture converted into
JPG format.

Insight
The Board script command syntax for pictures is
Picture File="..filename.." at{..position and size..}
Example
Picture file="MyCapsule\MainMenu\Logo_P01.jpg" at{36px;184px}
DynaWrite
The DynaWrite object is converted to an unformatted text area in the HTML page.

Insight
The Board script command syntax for the DynaWrite is
Textarea="..text.." at{..position and size..}
Example
Textarea="Hello world" at{10px;60px;100%}
365

Board 6.1 Manual

FlowChart
When converting a FlowChart object from a Capsule screen into a BSP page it is subdivided into
different parts:
The drawings (areas of different shape, text, arrows and pictures) are translated into a JPG
image using the technique describes for the Picture object.
The embedded DataViews, Graphs and Pictures objects are translated as described above.
The click-able areas for which the Shape property is set to "Button" and that are associated to
an action (a link to another screen or a link to a procedure) are translated into buttons using
the technique described for the Button object.
FlowChart areas that are linked to an InfoCube value (through the area property "Show
Value") are translated into single-cell tables that supports color-coding. This feature effectively
creates the equivalent of the Alert object.
The FlowChart object can therefore be used to create
a drawing (the flowchart) with embedded buttons that link to other BSP pages or that launch
procedures
the equivalent of a Capsule Alert object as in the example hereafter. To do so, create a
FlowChart, define one or more Layouts in the FlowChart then add boxes to the flowchart and
link them to the desired Layout column using the "Show Value" property of the FlowChart
boxes.

Insight
The Board script command for single-cell table is
ALERT
show
InfoCube,
red[value]
green[value]
at{..position..}
...
end ALERT
366

block

alert

Release Notes

Example
ALERT
show
Sales,
RefTo(Sate=FL)
at{425px;327px;36px;18px}
show
Sales,
RefTo(State=CA)
at{29px;201px;36px;18px}
....
end ALERT

red20

green20

block

Square

red20

green20

block

Square

Button
The Capsule Buttons that are supported in the Web environment can
link to other Capsule screens through the Next Screen property
or launch one Board Procedure.
The style of buttons in the BSP page is managed from the BoardMaster, refer to Web Button Themes
for details. The Capsule button color, font, tool tip and the Options properties (the Confirmation
message, password, comment, auto-go) are not supported and are ignored by the Web Translator that
generates the BSP page. The buttons in the BSP page can launch one Board Procedure only,
therefore when creating a Capsule for the Web environment, link the buttons to one (and one only)
Board procedure or to another screen through the Next Screen property.

Insight
The Board script command syntax for Buttons is
button
caption="..label.."
at{..position and size..}

action="..screen

or

procedure

name"

Example
button caption="Go to Menu" action="MyCapsule\MainMenu" at{400px;160px}

Procedures
The Capsule Procedures can be launched from a button of a BSP page. When translating a screen
that contains a Button which is linked to a Procedure, the Web Translator creates the HTML button
object and links it to the procedure name.
Note that the procedure itself (the actions) is defined in the Capsule, the BSP page only contains a link
to the Capsule and to the Procedure name to run.
Example of a script that launches a procedure
COMMON
dtb delta
cps MyCapsule
end COMMON
Button action="MyProcedure"
After translating a Capsule with a procedure to a BSP, you should not delete, move or rename the
Capsule and you shouldn't rename the Procedure otherwise the BSP page will not be able to run the
procedure. If you need to move the Capsule or rename the Capsule or the Procedure you should
either re-run the Web Translator or amend the BSP script command to reflect the changes.
Note
Not all Board Procedure Actions are supported in the Web environment, only those that are executed
by the BoardServer can be run from a BSP page. The following Procedure Actions are not supported:
Go to screen and Go to Capsule
Reset to screen and Interactive selection
367

Board 6.1 Manual


Print
Refresh Screen and Show Message
Drilling-down from one Board Server Page to another
The Drill-down functionality of the Web environment, has been extended to support drilling-down from
one analysis to another different (though related) analysis.

To drill from one analysis to another,


Using Notepad or another text editor program, open the BSP file of the analysis where the
drill-down option should be added,
add to the Drillby clause the text that the user will view in the drill-down pop-up window,
add a new line immediately after the drillby clause with the same text label followed by the
equal sign and the name of the BSP file of the target analysis.
Board script command syntax
368

Release Notes
Drillby Label
Label = Folder/Analysis
Example, consider the following Board script BSP file
COMMON
dtb Delta
ByPage Division
Drillby Year, Month, Product, Customer
end COMMON
...
to add a drill-down option to the BSP page MyDashboard.bsp, modify the script as follows,
COMMON
dtb Delta
ByPage Division
Drillby Year, Month, Product, Customer, jump to my
Dashboard
jump to my Dashboard= MyDashboard
end COMMON
...

Notes
The drill-down statement of a BSP page may include several links to other existing BSP
pages.
This new syntax replaces the former OnDrillby statement which is now obsolete and is no
longer recognized as a valid command.

Release Notes for version 5.5E


Upgrade instructions
Upgrading from version 5.5x
BoardClient version 5.5x can connect to a server where BoardMaster 5.5E is running
therefore it is possible to upgrade firstly the server where BoardMaster is running then
gradually update all PCs running BoardClient.
Upgrading from version 5.0 (or earlier)
It is required updating all installations simultaneously. A BoardClient version 5.0 must not
connect to BoardMaster version 5.5B4 and vice-versa. Capsules and databases created or
edited with version 5.0 (or earlier) are fully compatible with version 5.5B4 and do not require
any type of conversion or change in order to be used with version 5.5B4.
Note: If you are upgrading from version 5.0, before reading the present release notes, read
the Release notes for version 5.5.
Tip! It is possible to run the installation procedures as a background process that doesn't require any
user interaction (silent installation). Refer to the following knowledge-base article for details: How to
install Board in silent mode

Bug Fixes included in version 5.5E


- Multi-line Dynabar. A malfunction of the Dynabar occurring on screens having several entities in the
Dynabar and provoking an overlap of the Dynabar object onto the workspace area has been resolved.

369

Board 6.1 Manual


- BoardClient User password. A malfunction of the BoardClient program which was occurring when
the user password was not saved in the BoardClient configuration window has been resolved. It is
therefore now possible to save in the BoardClient setup window the default user name only while
leaving the password field blank, in which case the password is prompted at log-on.
- Capsule Folder permissions. A malfunction of the feature allowing to define access privileges to
Capsule folders has been resolved. To set permissions (Allow or Deny access) on Capsule folders you
can use the folder name when it is a subfolder of your Main directory (i.e. the default Board\Capsules
directory), or the folder alias when it is a different folder declared on the BoardServer setup window.
Refer to How to create a User Group for details on Capsule folders permissions, refer to Board Server
configuration for details on defining Capsule Folder aliases.
- Master DataView and Collapse function. A malfunction occurring on DataView reports having the
both the Master and Collapse options enabled has been resolved.
- InfoCube definition and DataReader definition. A malfunction of the InfoCubes copy feature and
the DataReader copy feature through right-click which was allowing to create InfoCubes or
DataReader protocols with duplicate names has been resolved.
- Named Selections. A malfunction of the Select feature which was allowing to access Named
Selections from the database Security window has been resolved.
- Email Broadcast. A malfunction of the Broadcast function which was occurring when the recipient's
email address field was not defined on the last column of the DataView report driving the email
broadcast has been resolved.
- Email Broadcast. A malfunction of the Broadcast function which was occurring when the recipient's
email address field was manually input on a text InfoCube has been resolved.
- DataReader to SAP. An inefficiency of the DataReader occurring when retrieving the fields list of
some large SAP tables has been resolved.
- Procedures execution. A malfunction of the BoardMaster program occurring when two distinct
users ran two Board procedures simultaneously each requiring a high processing time and provoking
a BoardServer to hang has been resolved.
- Yearly Cumulated Value on Fiscal Year. A malfunction of the Yearly Cumulated Value on Fiscal
Year function occurring when applied to InfoCubes having two or more non-sparse dimensions has
been resolved.
- DataView report with Entities in columns. A malfunction occurring on some reports having two
independent entities set by row and having at least one Entity in the report columns has been
resolved.
- Layout with RDB InfoCube and column algorithm. A malfunction occurring on DataView reports
having two independent entities set by row, one or more RDB InfoCubes and one column algorithm
has been resolved.

Release notes for version 5.5B4


Upgrade instructions
Upgrading from version 5.5 from version 5.5B or from version 5.5B3
A BoardClient version 5.5x can connect to a server where BoardMaster 5.5.B4 is running
therefore it is possible to upgrade firstly the server where BoardMaster is running then
gradually update all PCs running BoardClient.
Upgrading from version 5.0 (or earlier)
It is required updating all installations simultaneously. A BoardClient version 5.0 must not
connect to BoardMaster version 5.5B4 and vice-versa. Capsules and databases created or
edited with version 5.0 (or earlier) are fully compatible with version 5.5B4 and do not require
any type of conversion or change in order to be used with version 5.5B4.
Note: If you are upgrading from version 5.0, before reading the present release notes, read
the Release notes for version 5.5.
370

Release Notes

Tip! It is possible to run the installation procedures as a background process that doesn't require any
user interaction (silent installation). Refer to the following knowledge-base article for details: How to
install Board in silent mode

Bug Fixes included in version 5.5B4


- ODBC DataReader, Board version 5.5B. A malfunction of the DataReader which may generate
duplicate codes when loading through ODBC an entity code from a table field which is larger than the
entity being fed has been fixed. For example, a DataReader feeding a 6 characters field into an entity
code which is of 5 characters (or smaller) is potentially able to provoke duplicate codes. Note that this
malfunction is present in version 5.5B only and has been resolved with the release of version 5.5B3.
You should be concerned by this malfunction only if you are using version 5.5B, any earlier or later
version doesn't have this malfunction.
- ODBC DataReader, SQL syntax in FROM clause. A malfunction of the SQL statement generator
found in the ODBC DataReader and the RDB InfoCube definition, which was occurring in some cases
when applying two or more nested formulas and which was provoking an incorrect FROM clause has
been resolved.
- ODBC DataReader, SQL syntax in JOIN clause. A malfunction of the SQL statement generator
found in the ODBC DataReader and the RDB InfoCube definition, which was occurring in some cases
when creating table joins and which was provoking an incorrect JOIN clause has been resolved.
- Capsule folders privileges. A malfunction of the BoardMaster program relative to the user rights on
Capsule folders (i.e. the user's profile option "Allow access to listed folders" and "Deny access to listed
folders") has been resolved. It is now possible to define user privileges on Capsules folders or aliases
which are not subfolders of the Main Capsules folder.
- Child Layout bound to DataView with left aligned totals. A malfunction of the Graph occurring
when the object was bound to a DataView having the row totals aligned to the left and generating an
incorrect title in the chart has been resolved. The same malfunction was also applying to the following
objects GDE, Cockpits, Mapping and Alert in some cases where there was a Master DataView with left
aligned totals on the screen.
- Adding new entity members through STO. A malfunction of the STO object occurring when a user
having a security profile with selection was adding a new item to an entity hierarchically related to the
entity on which the security restriction was defined has been resolved.
- STO Object with 3 or more Layouts. A malfunction of the STO occurring when three or more
Layouts were defined and provoking an incorrect sizing of the second or third Layout pane has been
resolved.
- DataView with Collapse. A malfunction of the DataView object which was preventing some
collapsed lines to correctly expand has been resolved.
- DataFlow involving Date InfoCubes. A malfunction of the DataFlow occurring on calculations
involving InfoCubes of type Date has been resolved.
- DataFlow RAM booster option. A malfunction of the DataFlow RAM booster option which was
occurring when the calculation was involving some InfoCubes more aggregated than the target
InfoCube has been resolved.
- Some errors occurring while printing DataView reports on HP Laser printers on Windows XP Service
Pack 2 have been fixed.

Other changes
SQL statement of the Drill-through is now hidden
The SQL statement generated by the drill-through function is now always hidden while in runtime mode. The SQL statement can be viewed only while in design mode and can be edited
only by a user having a Developer license.

371

Board 6.1 Manual

Release notes for version 5.5B


Upgrade instructions
Upgrading from version 5.0 (or earlier)
It is required to upgrade to version 5.5B all installations simultaneously. A BoardClient version
5.0 must not connect to BoardMaster version 5.5B and vice-versa. Capsules and databases
created or edited with version 5.0 (or earlier) are fully compatible with version 5.5B and do not
require any type of conversion or change in order to be used with version 5.5B.
Note: If you are upgrading from version 5.0, before reading the present release notes, read
the Release notes for version 5.5.
Upgrading from version 5.5
A BoardClient version 5.5 can connect to a server where BoardMaster 5.5.B is running
therefore it is possible to upgrade to version 5.5.B firstly the server where BoardMaster is
running then gradually update all PCs running BoardClient.
Tip!
It is possible to run the installation procedures as a background process that doesn't require
any user interaction (silent installation). Refer to the following knowledge-base article for
details: How to install Board in silent mode

New Features and enhancements


Dynamic and Named Selections
All users can now apply or disable a Dynamic or Named selection to a Capsule screen while in
runtime mode. The restriction that was limiting access to this feature to Capsule design mode
only (therefore to Developers and Power Users only) has been removed.
Dataflow now supports Text InfoCubes and Entites
The target InfoCube of a DataFlow can now be an InfoCube of type Text. It is also now
possible to use Entities/Relationships in the Layout of a DataFlow.
Web Queries now supports changing the query Layout when drilling-down
When drilling down on a WebQuery, it is now possible to obtain different Layouts depending on
the chosen drill-down path. An extension of the query script language allows to define the
query Layout depending on the drill-down entity. The command syntax is
OnDrillBy EntityName
[query script]
The OnDrillBy command can be added to a query script which includes a drill-down path. The
following is a query script example where the columns of the report change from showing
Gross Sales only to showing Gross Sales and Sales Packs when the user drills-down by
Product.
table
dtb Delta
show Gross Sales
372

Release Notes
DrillBy City, Customer, Product
OnDrillBy Product
table
dtb delta
Show Gross Sales
Show Sales Packs
Note that it is possible to specify several OnDrillBy statements in a query script. For example,
a report which displays Gross Sales by Month, can change to Gross Sales and Discount Value
when drilling-down by Customer, and change to Gross Sales and Sales Packs when drillingdown by Product.
OnDrillBy ANY allows to define the drill report structure for all drill-down entities which are not
mentioned in specific OnDrillBy statement.
For example, the following query runs a given report when drilling-down by Product and a
different report when drilling-down by any other entity.
table
dtb Delta
show Gross Sales
DrillBy City, Customer, Product
OnDrillBy Product
table
dtb delta
Show Gross Sales
Show Sales Packs
OnDrillBy ANY
table
dtb delta
Show Gross Sales
Show Budget Dollars
Tip! To test the above query scripts on your Board WebServer installation, install the "Delta"
sample database available in the download area of Board's Web site or on the installation CDRom.
Data-entry on Text InfoCubes
When entering text in a Text InfoCube, pressing the return keyboard key now enters the text,
previously the return key would move the cursor to a new line. This change applies when the
report rows height are at default size (which usually accommodates a single line of text). To
enter multi-line text you should increase the report's rows height to accommodate two or more
lines of text.
This variation applies to the DataView and STO objects.
Tree diagram: improved display of complex trees
In some cases, with hierarchies made of a large number of entities, the "Tree diagram" view
shows entities overlapping when they can't all be fitted onto the screen. Now, by moving the
mouse over an entity it is brought in foreground making it easier to read its name.
Writing of the Web log file can be disabled
It is now possible to disable writing of the client Web log file (located in the folder
c:\BoardPub\Weblog\Client), thus improving performance of Board WebServer during
peaks or when several hundreds of users are simultaneously connected. To disable writing of
the Web Log file, un-tick the checkbox named Web Log File located on the WEB tab of the
BoardMaster program.

373

Board 6.1 Manual


FlowChart: embedded objects can now be maximized
Objects which are embedded onto a FlowChart object can now be maximized using the
Maximize icon located in the bottom toolbar of the Capsule environment.
Find table function in ODBC DataReader protocol definition
The ODBC DataReader protocol definition now has a Find field which allows to quickly scroll
through the list of tables and views of the ODBC data source and find the desired table or view.
As you type the table or view name in the Find field (see picture below), the list automatically
scrolls to the first matching table or view.

DataReader supports yyyy-mm-dd format


The ASCII and ODBC DataReader as well as Drill-through and RDB-InfoCube ODBC protocols
now support importing the Day time entity from a date field in the following format yyyy-mm-dd
or yyyy/mm/dd .

Bug fixes and optimizations


- Drill-through protocols are visible at runtime. The limitation that was preventing the Drill-through
list to be visible at runtime while navigating a Capsule has been removed.
- Save data before changing screen. When a user enters data on a data-entry report data-entry and
then tries to go to a different screen without saving the newly entered data a warning pop-up message
appears and prompts the user to save data.
- Cases of reports and drill-down reports returning a blank screen and occurring after having deleted
some entity occurrences from the database have been resolved.
- RDB InfoCubes structured by Day. A malfunction occurring when entering data on RDB InfoCubes
structured by Day has been resolved.

374

Release Notes
- DataView with data-entry and left aligned totals. A malfunction occurring when entering data on a
drill-down window of a DataView report having the totals left aligned has been resolved.
- WebQuery Select function. A malfunction of the Select statement allowing to specify a range of
dates (for example Select Year= 2000 to 2005) in a Board WebQuery has been resolved.
- Web Queries better support multi-frame pages. Support for multi-frame Web pages with
embedded Board WebQueries has improved: cases of multi-frame pages where the queries result
would occasionally swap position have been resolved.
- Custom Time Entities. A malfunction of version 5.5 which was preventing loading custom time
entities through the DataReader has been resolved.
- Broadcast settings test. The Broadcast.exe program now has a "Test Settings" function which
allows to verify configuration parameters by sending a test e-mail to a given address. The Broadcast
program is installed by the BoardClient setup program and it is usually located in the C:\Board.Sys
folder. To learn more about Board's broadcasting capabilities refer to The Broadcasting function.
- Time Range and weekly InfoCubes. A malfunction occurring when increasing the database time
range on databases having InfoCubes structured by week and using the Board 4.x weeks convention
has been resolved.
- DynaSheet with charts. A malfunction occurring on DynaSheet objects having an embedded chart
and causing the chart to be populated after clicking on the object has been resolved.
- Objects position on Capsule screens. A malfunction that was occasionally provoking an instable
positioning of the objects embedded on Capsule screens has been resolved.
- Cases of database corruption. A malfunction generally occurring after defining a new entity and
provoking a corruption of the database has been resolved.
- ODBC protocols. A malfunction of the query builder provoking a program crash and occurring when
attempting to design an ODBC protocol on a computer having a high resolution wide screen has been
resolved.
- FlowChart procedures list. The list of procedures shown in the Flowchart could sometimes include
some blanks, this malfunction has now been resolved.
- Support for multi-library data sources. The ODBC DataReader and RBD InfoCubes protocols now
have a better support for queries involving multiple libraries (or catalogs).
- Algorithm on Date InfoCubes. A malfunction of a report or DataFlow Layout occurring when
defining a simple algorithm involving a Date InfoCube has been resolved.
- DB2/AS400 erroneous date value. A data conversion error occurring when connecting to a
DB2/AS400 table having a date field with the value 01/01/0001 has been resolved.

375

Board 6.1 Manual


- Folder Object. A malfunction of the Folder object provoking a program crash when attempting to
change the background color while the 3D option was enabled has been resolved.
- ToolBox and FlowChart object. A malfunction of the Capsule design environment provoking the
ToolBox to disappear when moved over an area of the FlowChart object has been resolved.

Release notes for version 5.5


What's new in version 5.5
Orenburg is proud to announce version 5.5 which makes it possible for professionals to choose their
data &rsquor;engine type. Data may now be stored in either the proprietary multi-dimensional
database (Multi-Dimensional Engine) or in relational databases (Relational Engine). The Dual version
combines both Multi-Dimensional and Relational Engines for the highest architectural and application
flexibility.
The release also continues to offer major differences versus traditional Business Intelligence software
applications. The Board M.I.T. 5.5 Relational Engine supports data write-back, allowing the
exploitation of all native simulation functions that have fueled Boards international success as a rapid
application development tool for decision support. For example, a budgeting solution created with the
new version allows storage of the planning data directly inside the relational environment (e.g. ERP,
CRM, companys data-warehouse, etc.).
The new Relational Engine, with its &rsquor;virtual cubes, provides real-time access to data stored in
existing RDBMSs, allowing for the development of new applications within Board (e.g. Business
Activity Monitoring). It further extends Boards ability to handle larger volumes of data, making the
award-winning toolkit approach an even better fit for industries like banking and insurance, known for
massive amounts of information.
Current customers who wish to benefit from the new R-OLAP capabilities must upgrade to the DualEngine version subject to an upgrade fee. Current customers not needing the relational engine
capabilities and who have a software subscription contract can upgrade to version 5.5 and benefit
from new features and enhancements of the M-Engine version.
Board M.I.T. version 5.5 includes a rich list of new features and enhancements bringing significant
improvements to your Board applications.
If you are upgrading from a prior version, read the Upgrade instructions before installing version 5.5.

The database engine licenses: M-Engine, R-Engine and Dual-Engine


The Board database engine can be of three distinct types,
R-Engine, allows to handle InfoCubes which are tables residing into an external relational
database (refer to RDB InfoCubes hereafter).
M-Engine, allows to handle InfoCubes stored into Board's multidimensional database. This is
the Board database engine of prior releases.
Dual-Engine, allows to handle both types of InfoCubes, relational and multidimensional. This
type of engine provides all capabilities of the prior two.
Each engine type has a corresponding license, the R-Engine license the M-Engine license and the
Dual-engine license.

376

Release Notes

Prior releases of Board could only handle multidimensional InfoCubes physically stored into the Board
database. This capability is now referred to as the M-Engine. When upgrading a prior Board
installation to version 5.5 it is immediately enabled as an M-Engine license. An M-Engine installation
can be upgraded to a Dual-Engine in order to be able to handle the relational InfoCubes through a
license upgrade.
All end-user functions and features available in the Capsules environment are delivered by all three
types of engines regardless of the type. All features such as creating any type of Layout, charts, using
data-entry, split & splat and DataFlow procedures are supported on both types of InfoCubes.

RDB InfoCubes
An RDB InfoCube is an InfoCube for which data (the InfoCube cells) is physically stored in a table of a
relational database and not into the Board multidimensional database. The RDB InfoCube definition is
a protocol that maps fields of a relational table to the dimensions and the measure (in most cases a
value filed) of the InfoCube.
Whenever a user views the InfoCube in a report, an ODBC or an OLE DB connection to the external
relational database is established and data is retrieved from the relational table through a SQL
statement.
An RDB InfoCube accesses data from a relational database on the fly when.

In order to create, edit or view an RDB InfoCube it is necessary to have an R-Engine or a DualEngine license.
More details on RDB InfoCubes

Parent-Child databases
This feature allows to navigate from one database (the parent) to another one (the child) that has one
or more entities in common in one of the following two ways:

Drill-down: allows the end user to drill-down from the parent Board database to the child
database.

377

Board 6.1 Manual

Go-to screen: allows the end user to navigate from a screen linked to the parent database
to another screen linked to a child database while preserving the selections made on the
parent database screen.

The purpose of this feature is to allow creating separate Board databases for storing information at
different levels of detail which facilitates database administration, development and maintenance,
however preserving the ability to navigate down and across databases as a unique environment.
Databases can be linked through a 1-to-N hierarchical relationship: a database, the "parent", can
have one or more "children" databases.
More details on Parent-Child databases

Named Selections
A named selection is a selection of entity members saved under a given name. The named selection
can be used in the Capsules environment and applied to analyses or applied in Procedures. For
example you can create a named selection called Summer Promotion Products which is made of
a set of items from the Product entity, then refer to the name Summer Promotion Products
whenever you need to use it in a Capsule screen or in a Procedure.
More details on Named Selection

Dynamic Time Selections


A Dynamic Time Selection is a selection on a time entity (Day, Month, Year) based on the computer's
system date. The dynamic time selection can be used in the Capsules environment and applied to
analyses or applied in Procedures. For example if you apply to a Capsule screen the dynamic time
selection called Current Month, the screen selection on the Month entity automatically adjusts to
the current month.
More details on Dynamic Time selection

The New Text DataReader protocol


The interface of the text file DataReader has been restyled.
More details on New Text DataReader protocol

The New ODBC DataReader protocol


It is now possible to use OLE DB connections to read data from an OLE DB provider.
Data Type conversion formulas are automatically added when required.
More details on New ODBC DataReader protocol

Other changes and enhancements


A significant number of improvements and extensions to existing features has been implemented.
More details on Changes and enhancements

Bug fixes and optimizations


For the list of fixes and optimizations refer to Bug Fixes and optimizations

Upgrading to version 5.5 instructions


378

Release Notes

To upgrade to version 5.5,


download the setup programs from the download area of the web site,
run the BoardClient installation program on the client computers
run the BoardServer installation program on the server.
Note that it is possible to run the installation procedures as a background process that doesn't require
any user interaction (this technique is referred to as in "silent mode"), refer to the following
knowledge-base article for details: How to run Board Setup in silent mode or create merge setup

Notes
It is required to update all Board programs simultaneously: BoardClient
version 5.5 cannot connect to prior versions of BoardMaster and
BoardServer programs and vice-versa the BoardMaster and BoardServer
version 5.5 doesn't accept connections from earlier versions of the
BoardClient program.
Board applications (databases and Capsules) created with prior versions
are fully compatible with the current upgrade and do not require any
migration or other change.
When upgrading a PC or a server from any earlier version you must
un-install the Board license. Licenses are fully compatible with
current 5.5 release therefore after running the BoardClient
BoardServer installation programs you can start using version
immediately.

not
the
and
5.5

Any existing license, created for Board version 5.0 (or earlier
versions) is an M-Engine license. Should you wish to utilize the new
Relational Engine technology, you must upgrade it to a Dual-Engine
license. Contact your Board reseller or distributor for more
information.

The New KeyManager program


The new KeyManager program, version 2, is installed by the installation programs of BoardClient or
BoardServer version 5.5.

New License types


The license types which can be selected from the drop-down list when creating the half-KEY have
changed as follows
Stand Alone / DEVELOPER , is identical to what was formerly named StandAlone / FULL
Stand Alone / POWER USER , is identical to what was formerly named StandAlone / USER
Stand Alone / LITE PLUS , is unchanged
Stand Alone / LITE , is unchanged
MASTER LICENSE, is comprehensive of the former following
CONTEMPORARY USERS, E-SERVER and E-SERVER PLUS.

licenses

CMS-

The following illustration shows the license type drop-down list.

379

Board 6.1 Manual

Important notes
If you are upgrading from Board version 5.0 to version 5.5 you must not un-install your Board license.
The license KEY files created with prior versions of Board are fully compatible with the current 5.5
release therefore after running the BoardClient and BoardServer installation programs you can start
using version 5.5. immediately.
The new MASTER LICENSE (equivalent to the CMS-CONTEMPORARY USERS license) is not tied
to the directory where it has been created but only to the computer on which it is created, as for stand
alone licenses.
The half-KEY files created with KeyManager version 2 are 1,201 bytes in size. The certified KEY files
are 1,600 bytes in size.

Parent-child Databases
About Parent-Child databases
This feature allows to navigate from one database (the parent) to another one (the child) that has one
or more entities in common, in one of the following two ways:

Drill-down: allows the end user to drill-down from a report build on the parent Board
database to the same report but based on the child database.

Go-to screen: allows the end user to navigate from a screen linked to the parent database
to another screen linked to a child database while preserving the selections made on the
parent database screen.

The purpose of this feature is to allow creating separate Board databases for storing information at
different levels of detail which facilitates database administration, development and maintenance,
however preserving the ability to navigate down and across information residing in different
databases as a unique environment.
Databases can be linked through a 1-to-N hierarchical relationship: a database, the "parent", can
have one or more "children" databases.
The child database must have one or more entities in common with its parent database and
optionally some common InfoCubes. A child database can itself be the parent of another database.
Example 1
A typical example is that of an aggregate and a detail database. Consider for example an aggregate
database containing monthly information at Product Group and Sales Rep levels; the hierarchies
are illustrated in the following picture.

380

Release Notes

The child database, more detailed, stores the same information but at daily detail per single SKU and
Point of delivery - where SKU is a the most detailed level of the Product dimension and Point of
delivery is the most detailed level of the Customer dimension.
The following picture shows the hierarchical structures of the child database and highlights the
common entities.

381

Board 6.1 Manual

By defining a child database relationship between the two databases, end users are able to drilldown to the InfoCubes stored in the detail database from a report made on the parent database or to
jump from a Capsule screen linked to the parent database to a screen linked to the child database
while the selection made on entities which are in common is retained across the screens.
Example 2
Another example is that of a corporate-subsidiary structure. Consider a corporation which owns three
companies: a commercial (Company A), a production (Company B) and a services company
(Company C). You need to design a Board application for financial controlling and management
reporting. Each of the subsidiaries has its own internal organization which significantly differs from
the others due to their different natures. For each subsidiary the specific data models (and
subsequent Board databases) needed for controlling differ however at a more aggregate level some
common structures exist. The corporate Board database holds data per Company and Corporate
reporting code level, where Company is an aggregation of profit centers and Corporate
reporting code is an aggregation of the chart of accounts. The structure of the corporation is
illustrated in the following picture.

382

Release Notes

The Board database for each subsidiary holds data a more detail level but can be rolled-up into an
entity which is also part of the corporate Board database. The corporate Board database can be
linked to the three subsidiaries databases thus allowing end users to navigate from the topmost view
down to the detail subsidiaries data.

Setting up a Child-DB relationship


To set up a parent-child link, you must name the child database with the same name of its parent
database plus any two characters. For example, the Board database MyDatabase.bmi is parent of
MyDatabase01.bmi. It is possible to create a multi-level structure where a child database is itself
the parent of another database.
For example:
MyDatabase.bmi is parent of MyDatabase01.bmi and of MyDatabaseDT.bmi.
MyDatabase01.bmi is parent of MyDatabase01AB.bmi
A child database must have at least one entity having the same name and same content of an entity
present in the parent database. To allow drilling-down from a report built on the parent database to
the same report in the child database, the InfoCubes of the parent database must also be present in
the child database. The common InfoCubes must be structured by at least one of the common
entities.

Go to a Child-DB screen
Whenever navigating from one Capsule screen to another screen linked to a child database, the
selections made in the Dynabar and in Select, are retained from the first screen to the next one.
Note that this feature is generally more applicable than the drill-down from a parent to a child
database since it allows to synchronize screens containing reports structured differently, involving
different InfoCubes and only having some entities in common.
This feature is always enabled: whenever navigating from one screen to another, Board verifies if the
target screen is linked to a child database and consequently synchronizes entities selections.
383

Board 6.1 Manual

Drill-down to a child-DB
To drill-down to a child database (Child-DB),

right click on the row to drill from: the drill-down window opens. A drop-down list displaying
the list of linked databases is available in the lower part of the drill-down window. Note that
this selection list-box only appears when Board detects a child database.

select the desired child database: the list of entities from the child database will be shown.

select the entity to drill-down to.

Named Selection
A named selection is a selection of entity members saved under a given name. The named selection
can be used in the Capsules environment and applied to analyses or applied in Procedures. For
example you can create a named selection called Summer Promotion Products which is made of
a set of items from the Product entity, then refer to the name Summer Promotion Products
whenever you need to use it in a Capsule screen or in a Procedure.
Note that named selections are dynamic: if the members set is updated or changed, then the
change will reflect immediately on all Capsule screens and Procedures which refer to that named
selection.
It is possible to define named selections on time entities, for example to define the current month
however you may also use the predefined Dynamic Time selections.
384

Release Notes

How to define a Named Selection


To define a named selection,

switch to design mode, and select the Selections icon from the database design functions
menu as illustrated

type the name of the selection in the first column, then click on the second column to select
the entity on which you want to define the named selection

Click on the Current Selection button to select the desired items then press the OK button
to save your named selection.

The named selection is saved as part of the database.

How to use a Named selection in a Capsule screen


To apply a Named Selection to a Capsule screen,

open the desired Capsule screen then switch to design mode (by pressing the F4 function
key),

click on the Select icon,

click on the Selections button at the bottom as illustrated,

385

Board 6.1 Manual

the list of existing Named Selections and the predefined Dynamic Time Selections
appears,

enable the desired Named Selection by clicking on the corresponding checkbox,

Note that the list of Named Selections (white background) is preceded by the Dynamic
Time Selections.

If you wish to apply the selection immediately, click the button to the right of the checkbox,
otherwise close the select window, in which case the selection will be applied only after the
screen is reloaded or after pressing the F5 function key,

Save the Capsule screen.

How to use a Named Selection in a Procedure


To use a Named Selection in a Procedure,

386

edit the desired Procedure and choose the Select action,

click the Select button then click the Selection button found on the Select window

enable the desired Named Selection by clicking on the corresponding checkbox,

Release Notes

Note that the list of Named Selections (white background) is preceded by the Dynamic
Time Selections.

Save the Capsule.

Dynamic Time Selection


A Dynamic Time Selection is a selection on a time entity (Day, Month, Year) based on the computer's
system date. The dynamic time selection can be used in the Capsules environment and applied to
analyses or applied in Procedures. For example if you apply to a Capsule screen the dynamic time
selection called Current Month, the screen selection on the Month entity automatically adjusts to the
current month.
The following time selections are available:
Current Month

Selects the current month.

Previous Month

Selects the month prior to the current month.

Year to Current
Month

Selects the months ranging from January to the current


month.

Year to Previous
Month

Selects the months ranging from January to the month prior


to the current.

Today

Selects today.

Yesterday

Selects yesterday.

Year to Date

Selects the days from the first of January to the current day.

Year
yesterday

to

Selects the days from the first of January to yesterday.

Note that it is also possible to use Named Selections on time entities to define other types of
selections not included in the above list.

How to use a Dynamic Time Selection in a Capsule screen


To apply a Dynamic Time Selection to a Capsule screen,

open the desired Capsule screen then switch to design mode (by pressing the F4 function
key),

click on the Select icon,

click on the Selections button at the bottom as illustrated,

387

Board 6.1 Manual

the list of existing Named Selections and the predefined Dynamic Time Selections
appears,

enable the desired Dynamic Time Selection by clicking on the corresponding checkbox,

If you wish to apply the selection immediately, click the button to the right of the checkbox,
otherwise close the select window (in this case the selection will be applied only after the
screen is reloaded or after pressing the F5 function key)

Save the Capsule screen.

How to use a Dynamic Time Selection in a Procedure


To use a Dynamic Time Selection in a Procedure,

388

Edit the desired Procedure and choose the Select action,

Click the Select button then click the Selection button found on the Select window

enable the desired Named Selection by clicking on the corresponding checkbox,

Release Notes

Save the Capsule.

The new ASCII DataReader interface


This type of DataReader protocol imports data from fixed width fields text files (of ANSI or Unicode
type).
To create a text file Data Reader protocol,
click the DataReader icon, then click on an empty row in the ASCII tab. The protocol
definition window opens.

Type the protocol name in the Title field.


Type the name of the directory where the source text file is located in the Path field. Note
that the text files are accesses by the BoardServer, therefore the text files must be located in a
directory accessed by computer where the BoardServer is running. For example
c:\Board\Dataset refers to the Board\Dataset directory located on the C drive of the
computer where BoardServer is running.

389

Board 6.1 Manual


Optionally, type the source file name in the Pattern field; note that you can use wildcards
to view all files matching a certain naming pattern. For example type &rdquor;P*.TXT to view
all files starting with P which have TXT as their extension
Press the Refresh file List button then select the desired file from the drop-down list.
Select the entities and InfoCubes to feed: the list window located on the right displays all
entities and InfoCubes of the current Board database.

To select an entity or an InfoCube either click the checkbox or drag and drop it onto the
Main tab as illustrated.

Note that when you select an InfoCube, all entities which are one of the InfoCube's
dimensions are automatically selected. For example, if you select the InfoCube Gross Sales
which is dimensioned by Customer-Product-Month, then the entities Month, Product
code and Customer code are automatically added to your fields selection since they are
necessary in order to load that InfoCube.
For each selected field you must define the starting position and field width field to read
from the file. To do so you may

Key-in values in the Start and Width fields as shown,

or click on starting position in the lower window which displays the text file
record, then highlight the entire field (keep the left mouse button pressed) and
filannyl drag and drop the mouse over to corresponding entity or InfoCube to
feed as illustrated in the following picture

390

Release Notes

The column with a blue background shows a preview of the data from the first
record of the text file. You may scroll records by clicking the arrows at found
in the lower left part of the window,

For each Entity and InfoCube field (except standard time entities), set the Append or
Replace option as desired. Click once on the yellow cell to select the desired option. Refer to
the paragraph Append and Replace options for details.
The Divide by field is optional and only applies to numeric InfoCubes: it divides incoming
data by the specified value. For example, type 1000 to divide values in the source file by 1000.
Note that you can easily define complex transformation formulas using an ETL
protocol.
Press OK to save the DataReader protocol.

Note! The DataReader cannot read text files exceeding 2GB in size. This limit only
applies to text files.

The new ODBC or OLEDB DataReader interface


This type of Data Reader protocol imports data from an ODBC or an OLE DB data source.
To create an ODBC or OLE DB Data Reader protocol, go to the ODBC tab of the Data Reader window
and click on an empty row. The following protocol definition window opens.

391

Board 6.1 Manual

Type the protocol name in the Title field.

Select the entities and InfoCubes to feed: the list window located on the right displays all
entities and InfoCubes of the current Board database.

To select an entity or an InfoCube either click the checkbox or drag and drop it onto the
Main tab as illustrated.

Note that when you select an InfoCube, all entities which are one of the InfoCube's
dimensions are automatically selected. For example, if you select the InfoCube Gross Sales
which is dimensioned by Customer-Product-Month, then the entities Month, Product

392

Release Notes
code and Customer code are automatically added to your fields selection since they are
necessary in order to load that InfoCube.

Select the data source connection: the RDB drop-down list only shows the recently used
ODBC and OLE DB connections.

To select an existing ODBC connection which is not listed in the RDB list, click the
connection icon as illustrated

then select the ODBC Data Source Name (DSN) from the ODBC drop-down list as shown in
the following illustration,

If required, type the user name and password to log on the source relational database in the
corresponding fields.

Select the RDBMS type from RDBMS the drop-down list. If the relation database you are
connecting to is not listed, set the type to General.

Click the Save & Connect button.


For details on how to create and configure a ODBC or OLE DB connections refer to paragraph
Defining an OLE DB or an ODBC connection.

After connecting to the data source name, the tables and views of the relational data
source are listed in the RDB area (see illustration below).

Select the desired table or view: either click on the table check box or click on the
table then drag & drop it onto the white area as illustrated.

393

Board 6.1 Manual

Drag and drop the table fields in the cell next to the entity or InfoCube you want to feed, as
illustrated.

You may double click on the table title bar to view the fields data types and a sample
record. Refer to ODBC DataReader options for details on how to configure the automatic data
type conversion of the table fields to Board's internal data types.

394

Release Notes

Optionally, you can then edit a field and type an expression. You may, for example, wish to
divide or multiply a field. Double-click on the field you want to edit, then, using the commands
and syntax supported by the ODBC driver used, type in the expression.

Note that if you need to define complex transformation formulas you may use the ETL
module.

If you have selected more than one table set the join conditions by dragging and dropping the
fields to be joined. The Join window shows the defined conditions. The join statement
generated is an equal join (natural join). If you need to define a different type of join, for
example an outer join or a left join, you may edit the SQL statement (refer to Editing and
Testing an SQL statement for details).

Note that by changing the Join option, you can alter the syntax used for writing the Join
statement.

To define a Where condition click the Where tab and type the desired condition. Note that you
may drag&drop a field from the selected table onto the text area to avoid retyping.

395

Board 6.1 Manual

For each field (except standard Board Time entities), set the Append/Replace option as
desired. Click on the yellow cell to set the option as desired. Refer to the paragraph Append
and Replace options for details.

Press OK to save the protocol.

Defining an ODBC Data Reader protocol generates an SQL statement. When the protocol is
launched, Board sends the SQL statement to the ODBC or OLE DB provider and waits for the results.
Note that the SQL statement is entirely executed by the ODBC or OLE DB provider therefore the
commands and syntax which can be used in the SQL statement entirely depend on the ODBC or OLE
DB provider used.
It is recommended to test the protocol SQL statement using the Browse function: click the Browse
button as shown is the illustration. The query will be executed on the first 200 rows and the resulting
data is displayed in spreadsheet.

Note that Board is not a SQL query generator, if complex queries are needed it is recommended you
use an ad-hoc query tool to create and test the SQL statement.
396

Release Notes

Defining an OLE DB or an ODBC connection


ODBC and OLE DB connections are connections to external data sources used in DataReader
protocols, Drill-through protocols and relational InfoCubes protocols.
The RDB drop-down list shows the ODBC and OLE DB connections priorly used.

Creating an OLE DB connection

click the connection icon

the following configuration window appears

type the connection name in the Name field then click the OLE-DB Wizard button.

the following window will appear

397

Board 6.1 Manual

Note that the list of OLE DB providers listed will vary depending on your computer's settings.

Select the desired OLE DB provider and follow instructions for configuring the connection.
The configuration parameters and setup steps will vary depending on the chosen OLE DB
provider.

When the configuration is finished, press the OK button. The OLE DB connection wizard will
close and a connection string will automatically appear in the Connect String field as in the
following example.

Optionally, select the RDBMS type. If the relation database you are connecting to is not
listed, set the type to General.

If required, type the connection user name and password to log on the relational database
provider.

Click the Save & Connect button to save the connection definition and connect to the data
source.

Server Side Option: Prompt Complete


When this option is enabled, the ODBC or OLE DB driver will open an interactive pop-up window in
case the connection parameters are insufficient or incorrect however if BoardServer is running as a
Windows system service the prompt window may not be visible therefore this option should be
enabled only when BoardServer is not running as a system service.
398

Release Notes

Creating a new ODBC Data Source


To create a new ODBC connection click Windows Start menu, then select Control Panel,
Administrative tools and finally select the icon Data Sources (ODBC).

The ODBC Data Source Administrator window opens.

Click the Add button and follow the instruction for configuring other required parameters.
After you have created a new ODBC connection, you must close and restart Board in order to view
the newly created ODBC connection in the RDB drop-down list.

ODBC DataReader options


To set the ODBC DataReader options, click the Options tab located in the lower part of the screen.

399

Board 6.1 Manual


The following options are available
Query
time
out

Sets the maximum number of seconds for a query. Typing the value -1 sets the timeout to unlimited.

Join
Syntax

Sets the syntax used for Join conditions. The "Where" option defines the join
conditions using the WHERE clause, the "Join" option uses the INNER JOIN clause.
Note that the result of the query is the same, regardless of the syntax used however if
you need to define an OUTER JOIN (or other type) it is recommended using the Join
option and then changing the INNER JOIN clause only (click the Manual tab to edit
the SQL statement) instead of completely rewriting the statement generated by
Board.

Data
type

By setting this option to Convert the system will automatically apply a transformation
formula whenever the data type and format of the source table fields differs from data
type and format expected by the Board.
This option is applicable only if the RDBMS field of the ODBC or OLE DB connection,
which indicated what is the relational database you are connecting to, has been set to
one of the available options other than General.

Date
Format

This option applies to certain RDBMS types only, it specifies the physical format of a
date field. This option is automatically enabled when applicable.
Set it to
Number, when date fields of the relational database are in the format of a
serial number.
Text, when date fields of the relational database are in text format.

RDB InfoCubes
About RDB InfoCubes
An RDB InfoCube is an InfoCube for which data (the InfoCube cells) is physically stored in a table of
a relational database and not into the Board multidimensional database. The RDB InfoCube definition
is a protocol that maps fields of a relational table to the dimensions and the measure (in most cases
a value filed) of the InfoCube.
Whenever a user views the InfoCube in a report, an ODBC or an OLE DB connection to the external
relational database is established and data is retrieved from the relational table through a SQL
statement.
An RDB InfoCube accesses data from a relational database on the fly when.

400

Release Notes

In order to create, edit or view an RDB InfoCube it is necessary to have an R-Engine or a DualEngine license.

Creating an RDB InfoCube


To create an RDB InfoCube, open the InfoCube window,
Click on an empty row, and type the name of the InfoCube
Select the data type from the drop-down list. Note that MXC data type is not supported for
RDB InfoCubes.
Click the Structure button and select the InfoCubes dimensions. The structure selection
window shows all stand-alone entities and entities at the base of hierarchies.
Define one (or more) InfoCube physical versions. Usually the most detailed version of the
InfoCube is defined in the first column. The most detailed version of the InfoCube is also
called the primary version. To add entities to a version click the version-entity intersection cell.
For example to define a version by Month-Customer-Product, click as illustrated.

Click on the MDB/RDB cube icon at the top as illustrated

Then click the Query Builder icon to access the protocol definition window,

The protocol definition window shows the InfoCube's dimensions and measure that must be
mapped to the relational table. Select the ODBC or OLE DB connection from the RDB dropdown list. The RDB drop-down list only shows the recently used ODBC and OLE DB
connections.
401

Board 6.1 Manual

To select an existing ODBC connection which is not listed in the RDB list, or to create a
new OLE DB connection, click the connection icon as illustrated

then select the ODBC Data Source Name (DSN) from the ODBC drop-down list as shown in
the following illustration,

If required, type the user name and password to log on the source relational database in the
corresponding fields.
Select the RDBMS type from the RDBMS drop-down list. If the relation database you are
connecting to is not listed, set the type to General.
Click the Save & Connect button.
For details on how to create and configure a ODBC or OLE DB connections refer to paragraph
Defining an OLE DB or an ODBC connection.
After connecting to the data source name, the tables and views of the relational data
source are listed in the RDB pane.

You may now do one of the following


select one of the existing tables from the list and map it to the InfoCube
dimensions and measure
refer to Linking an existing table of a relational database to an RDB InfoCube
or create a new table in the relational database for storing the InfoCube data.
402

Release Notes
refer to Creating a new table to store an RDB InfoCube

Linking an existing table of a relational database to an RDB InfoCube


To link a table of a relational database to an RDB InfoCube, create the InfoCube following the
configuration steps described in the prior paragraph Creating an RDB InfoCube, then after having
established the connection to the relational database,
Select the desired table or view: either click on the table check box or click on the
table then drag & drop it onto the white area as illustrated.

Drag and drop the table fields in the cell next to the entity or InfoCube you want to feed, as
illustrated.

403

Board 6.1 Manual

You may double click on the table title bar to view the fields data types and a sample record.
Refer to ODBC DataReader options for details on how to configure the automatic data type
conversion of the table fields to Board's internal data types.

Optionally, you can then edit a field and type an expression. You may, for example, wish to
divide or multiply a field. Double-click on the field you want to edit, then, using the commands
and syntax supported by the ODBC driver used, type in the expression.

If you have selected more than one table, set the join conditions by dragging and dropping the
fields to be joined. The Join window shows the defined conditions. The join statement
generated is an equal join (natural join). If you need to define a different type of join, for
example an outer join or a left join, you may edit the SQL statement (refer to Editing and
Testing an SQL statement for details).

Note that by changing the Join option, you can alter the syntax used for writing the Join
statement.

404

To define a Where condition click the Where tab and type the desired condition. Note that you
may drag & drop a field from the selected table onto the text area to avoid retyping.

Release Notes

It is recommended to test the SQL statement using the Browse feature: click the Browse button as
shown is the illustration. The query will be executed on the first 200 rows and the resulting data is
displayed shown.

WARNING
If you plan to write-back on the RDB InfoCube, through manual data entry or
through Dataflow Procedures, refer to the section RDB InfoCube setup options
to understand how the table update methodologies work and choose the correct
record update strategy.

Creating a new table to store an RDB InfoCube


405

Board 6.1 Manual


To create a new table for storing an RDB InfoCube, create the InfoCube following the
configuration steps described in the prior paragraph Creating an RDB InfoCube, then after having
established the connection to the relational database,
Click the More folder then click the Create Table button as shown

A new table having all dimension fields of the InfoCube and a value field is created.
The primary key of the table is the combination of all dimension fields and one index is created on
each dimension field of the table.
To allow Board creating a table in the source relational database system, the ODBC or OLE DB
connection utilized must have sufficient privileges to do so.
Optionally, and only if the RDB InfoCube will be utilized for data-entry or for DataFlow
calculations, you may add up to three additional fields as follows:
User_ID

Writes the user ID of the Board user that has created or modified the
table record.

Date_Created

Writes the date and time (time stamp) of when the record is created.

Date_Modified

Writes the date and time (time stamp) of when the last record update.

Note that these additional fields are not part of the InfoCube dimensions and are primarily meant
for auditing and monitoring purposes.

Additional RDB InfoCube setup options


Summarizing records
If the relational table contains data at a more detailed level than the InfoCube, it is advisable to let the
RDBMS summarize the records up to the same aggregation level of the InfoCube structure. Generally
this will improve response times on the RDB InfoCube since part of the aggregation work is performed
by the relational database engine.
To do so, enable the Sum option by clicking on check box found on the row corresponding to the
InfoCube value field as in the following illustration.

406

Release Notes
By enabling this option, Board will change the SQL statement adding a SUM operator on the value
field and a GROUP BY clause the dimension fields as in the following example:
SELECT ...., SUM(OrderDetails.Quantity) FROM ... GROUP BY DeliveryDate,
CustomerID
To optimize performance of the RDBMS make sure that the dimension fields of the table are indexed.
Referring to the above example, the fields DeliveryDate and Customer should be indexed.
Optimizing the SQL statement: setting the WHERE conditions rules
When an RDB InfoCube is used in a report, in order to retrieve data from the relational table Board
generates an SQL statement with a WHERE condition that limits the table records accordingly to the
selected entity members. For example if the user makes a selection on the entity Month, then a
WHERE condition on the field corresponding to the date dimension is dynamically added to the SQL
statement. The way the WHERE conditions are written affects the response time of the SQL queries.
There are two parameters that allow to tune the efficiency of the SQL queries generated by Board.
In some cases the selection made on entity members may determine a WHERE condition with a very
high number of items. Suppose the user sets a selection on an entity located in the upper levels of a
hierarchy, for example Region=North America, then this selection will propagate down to the
CustomerID entity and embrace a very large number of customers, for example several thousands.
An SQL statement with a WHERE condition that looks up thousands of codes can be inefficient and
may easily exceed the maximum command length supported by the ODBC or OLE DB provider driver
you are using.
The parameter Where IN( ) Buffer size defines the maximum number of items that are added to
a WHERE condition of a single SQL command. When this threshold is exceeded, instead of running a
single SQL command with a very large WHERE clause, Board runs multiple SQL commands each
with subset of conditions; the results of the SQL queries are then merged by the BoardServer engine
and aggregated to the required view.

The IN( ) option (see illustration below) allows to completely disable the feature that dynamically adds
the WHERE conditions to the SQL statements. This option should be enabled only on the entities that
have a small number of occurrences or entities on which the number of selected members is always
high in percentage (for example if 70% or more of the total number occurrences are always embraced
by the user's selection).

RDB InfoCube write-back : choosing the Record Update Method


The data of an RDB InfoCube is stored in a table of a relational database therefore if a user enters
data into an RDB InfoCube Board updates the table linked to the RDB InfoCube. There are two
different methodologies for updating the table.

407

Board 6.1 Manual

Clear/Update

This option is suitable when the relational table contains other fields than those
which are mapped to the dimensions and the measure of the RDB InfoCube.
When this option is chosen,
when data is saved to a cell of the InfoCube corresponding to an existing
record then the record is updated through an UPDATE.
when data is saved to a cell of the InfoCube which does not correspond to
any existing record then a new record is added to the table through an
INSERT command.
when an existing cell of the InfoCube is cleared (or set to zero), the
corresponding record is updated by setting the value field to zero.
Note that using this method, Board either adds new records or alters existing
ones, it never removes records from the relational table, therefore preserving the
status of other fields.

Delete/Insert

This option is to be preferred when the relational table exactly matches the
structure of the RDB InfoCube: each field of the relational table is mapped to a
dimension of the InfoCube or to the InfoCube measure, and the table primary key
is the set of fields which are mapped to the InfoCube dimensions.
When this option is chosen,
when data is saved to a cell of the InfoCube corresponding to an existing
record then the record is updated through an UPDATE.
when data is saved to a cell of the InfoCube which does not correspond to
any existing record then a new record is added to the table through an
INSERT command.
when an existing cell of the InfoCube is cleared (or set to zero), the
corresponding record is deleted from the table.

To set the Record Update Method, click the Options tab then select the desired option.

Other options
Details about the following other options: Query time-out, Data Type, Join syntax and Date
Format,
are documented in the ODBC DataReader options section.

Other changes and enhancements included in version 5.5


Dynabar previous/next arrows
By placing the mouse over an entity located in the Dynabar, an icon made of a Previous and Next
arrows automatically appears, allowing to scroll to the previous or next occurrence as illustrated,
408

Release Notes

Dynabar Period Options


If a time entity is set in the Dynabar it is possible to define which is the default occurrence which
should be selected when the user opens the screen. Select one of the following options
Current Period
defaults to the current period. For example if the Month entity is
set in the Dynabar, then the current month will be selected by default. If the Day entity is
set in the Dynabar then this option will select the current day.
Previous Period defaults to the previous period, for example considering the Month
entity, that is the month prior to the current.
Last period

defaults to the last period of the selected range.

To access the Dynabar Period Option configuration, right click on the Dynabar.

Default Drill-through path


The drill-through path can now be stored as a default drill path. Right click on a DataView report,
sequentially select one or several drill-down and drill-through choices in a cascade, then save the
Capsule screen to store this sequence. When a user then clicks on a DataView row heading (or
double clicks on a cell) using the left button of the mouse, the default drill-down and drill-through path
is executed.

Forecast function
When using the Forecast function in a Layout, it is now possible to exclude from the historical base
used to calculate the forecast figures, the current period data. This is particularly useful when
applying the Forecast function to an InfoCube structured by Month which is loaded with data on a
daily basis and therefore the current month is generally not statistically significant as it only contains
partial data (i.e. data from the first day of the month up to the current day).

409

Board 6.1 Manual


To ignore the current period from the historical data used to calculate the statistical function, enable
the Ignore Current Period check box as illustrated hereafter.

Message Box in Procedures


Using the message box action found in the Procedures environment you can now create interactive
messages prompting the a Yes or a No as in the following example,

If the user clicks Yes, the procedure continues running (the next action is executed), if the user clicks
the No button the procedure terminates.
To create a Yes/No pop-up message, enable the Yes/No check box found in the configuration panel
of the Show Message action as illustrated.

DataView export to file options


It is now possible to save the data of a DataView report to a file in one of the following formats:
410

Release Notes
Microsoft(r) Excel
HTML format
XML format
Text file with character delimited fields
Text file with tab separated fields
To save a DataView report to a file,
- drag & drop the printer icon from the bottom toolbar onto the DataView,
- click the File tab and select the desired file format as shown

Note that the Microsoft (r) Excel format supports up to 36 thousands rows only therefore if you select
this option make sure that the DataView doesn't exceed this limit. Other formats do not have this size
limit.
When selecting the character delimited fields format it is possible to define the separator character.

Drill-triggered Procedures
It is now possible to trigger a procedure by clicking on a the row heading of a DataView report or
double clicking on a cell (in a similar way to the drill-down), the procedure is executed with a
selection on the entity member on which the user clicked.
This new feature is useful when, in a Board application, you want to let the user choose a Board
Procedure from a list and run it on range of cells. Let's consider for example a Board application that
performs a cost allocation: the Expenses InfoCube holds monthly costs from the accounting system;
the user should allocate these costs to the various Cost Centres applying different allocation criteria.
Each allocation criteria corresponds to a different Board Procedure. The user wants to be able to
freely select the allocation criterion for a given expense depending on the expense nature and other
considerations.
In the following illustration a DataView object shows the Expenses InfoCube (first column) and the
Allocated Expenses InfoCube (detailed by Division) which is the result of the allocation process. By
clicking on a row header the user is shown a list of procedures and can choose which one to run for
that particular expense only.

411

Board 6.1 Manual

To configure a list of drill-triggered procedures on a DataView report,


create the desired Board Procedures and the DataView report,
while in design mode, right-click on the row header: the drill-down and drill-through window
will open with an additional Procedures tab as in the following illustration

highlight the procedures that the user may choose to run. Note that if you select one
procedure only, it will be executed immediately when the user clicks on the row header.

Note that when the user triggers a procedure by clicking on a row (or by double clicking on a cell)
the procedure is started as if the user made an selection (through the Select function) on the entity
member which is by row.

Selections propagating through a sparse structure


When making a selection using the Select function it is possible to propagate it to other entities
through the existing sparse structures. If EntityA and EntityB are two independent entities part of a
sparse structure then it is possible to select some items of EntityA and obtain the items of EntityB
which are associated in the sparse structre with the selected EntityA items.

412

Release Notes
For example, consider a Board database with a Customer hierarchy, a Product hierarchy and some
InfoCubes having a sparse structure Customer-Product. After having selected one or more
Customers, it is possible to use the Customer-Product sparse structure to propagate the selection to
the Product entity.
To enable a selection to propagate through a sparse structure, open the Select function and click on
the Sparsity icon located in the lower right corner.

The list of existing sparse structures is displayed. Click the checkbox of the sparse structures that
should be enabled for the selection propagation.

Then select one or more items of an entity part of the chosen sparse structure, the selection is
propagated to other entities part of that structure.

413

Board 6.1 Manual

Capsule Protection Password


It is now possible to protect a Capsule through two levels of security passwords. A Designer
password (identical to the former type of protection) and a User password which only allows to
change and save the screen Select and Layout of the reports.
The User password does not allow
to view or change existing Procedures
enter into design mode and add or remove objects from the screen.
To protect a Capsule,
switch to design mode and click open the screen properties window,
Click on the Capsule Locking icon as illustrated,

414

Release Notes

Type the Capsule Designer password then to define a User password, type user=
[password] as in the following example,

In the above example the Designer password is HGDTS and the User password is ABC.

Note that the password protection applies to the entire Capsule and not a single screen.

Bug fixes and optimizations included in version 5.5


- DB-Verify function: opening the DataReader immediately after running a DB-Verify function could in
some cases show an empty list.
- Database corruption: causes of database corruption occurring when creating a new entity have
been removed.
- InfoCubes definition: it is now possible to alter the structure of an existing InfoCube without
affecting existing versions: in the InfoCube definition window, click the Structure button and add one
or more dimensions to the InfoCube then define an additional version using the newly added
dimensions.
- Procedures and Select: some cases of Procedures for which the last Select action was ignored at
the termination of the process have been resolved. Note that whenever a procedure invokes a

415

Board 6.1 Manual


DataReader action, all selections are reset as if a "Reset to All" action was invoked immediately after
the DataReader action, this is a by design behaviour.
- Reports with Entities in columns and Filters or Sorting: a malfunction provoking an error on
Layouts having an Entity used into a column and having a Filter or Sorting condition has been fixed.
- STO object and long entities: the STO object now better accommodates entities having long code
and description fields by automatically adjusting the size and position of the buttons and of the input
fields.
- Modifying a stand alone entity with the STO: a malfunction of the STO object occurring when
trying to edit the description field of a stand alone entity has been fixed.
- Gauges and pictures files: the content of the \Board\Pictures\ directory is now transferred only
when needed, as a result the time required to establish the connection to a BoardMaster may
significantly improve in cases where this directory contains a large number of files.
- BoardServer not closing: when running BoardClient and BoardServer in a stand alone
environment, the BoardServer would not automatically close when shutting down the BoardClient
program if the last connection was made to a remote BoardMaster.
- Layout using calculations on date InfoCubes: an error occurring on reports having a Layout with
an aggregated view on date InfoCubes and a calculated field has been fixed.
- WebServer: entity with ampersand set ByPage: a malfunction of web queries occurring when an
entity set by contained the ampersand character has been fixed.
- Folder object improved: the Folder object has been improved, it now provides more style options
and it the flickering effect occurring when changing tab is now fixed.
- DataReader with ETL discarding NULL records: when running a DataReader protocol with an
ETL rule, records with NULL values were discarded. The behaviour of the DataReader with an ETL
rule is now consistent with DataReaders without ETL rules, NULL values are translated into the "_
Not Available" occurrence when loaded into an entity code.
- DataView column headers: while in RunTime mode the column headers (letters from "a" to "z") of
the DataView object are now not visible.
- Layout with "Align Vertically" option and with Gauges: a malfunction occurring on DataView
reports configured with a Layout using the "Align vertically" option in combination with Gauges,
Pictures or Entities in columns has been removed.

Release notes for Board version 5.0.C3


New Features and changes
SceenList

416

Release Notes
The Capsule screens list window appearing when clicking the Menu icon has been resized and
now displays a larger number of screens as illustrated in the following example.

Capsule Tree navigator


It is now possible, while a Capsule is open, to right click on the opened Capsule name from the
Tree navigator and jump to another screen. This feature present in version 5.0.B, had been
temporarily disabled in version 5.0.C for technical and has now been reintroduced.

Drill-Through

417

Board 6.1 Manual


The result of a drill-though can now return more than 65000 rows. If the result of a drill-through
returns more than 65000 rows then multiple worksheets are used to hold the rows in excess.

Fixes and optimizations


- Folder object. A malfunction of the Folder object causing the loss of the embedded objects or
causing additional tabs to appear has been removed.
- Board Help setup. A malfunction of Board's online help installation program has been removed.
- Alert with Gauges. A malfunction of the Alert function occurring when using the Gauges option has
been removed.
- dB Verify. A malfunction occurring when running the dB Verify function on large databases using a
desktop architecture (i.e. BoardClient connecting to BoardServer) has been fixed.
- DataReader / Replace option. A malfunction of the Replace option occurring on InfoCubes having
some versions exceeding 2Gbytes in size has been fixed. The malfunction provoked the following
error message "Bad file name or number".
- Procedures / Print Action. A malfunction of the Print action with the ByPage option enabled,
occurring when printing a DataView or DynaSheet object from a screen having two related entities in
the Dynabar has been fixed.
- FlowChart object. A malfunction of the FlowChart object causing the password option of the
Action property to fail has been fixed.
- STO object. A malfunction of the STO object which prevented renaming an existing entity member
has been fixed.
- Dynabar object. A malfunction causing a system crash occurring after doing a right-click then a
drag&drop of an entity into the trash bin has been fixed.
- Procedures. A malfunction of Procedures having a DataReader followed by a Goto screen action
and causing an error in the database cache has been removed.

Release notes for Board version 5.0.C


Warnings
BoardMaster version 5.0.C accepts connections from BoardClient of the same version only. It is
not possible to connect to BoardMaster v.5.0.C using BoardClient of a prior version therefore
you should upgrade all client computers running BoardClient and last upgrade the BoardMaster
program on the server.
This version includes an upgrade of the FlowChart object therefore it is not backward
compatible: Capsule screens with the FlowChart object created or saved with version 5.0.C
cannot be viewed with earlier versions.

New Features
Online Help
Pressing the F1 function key now invokes the Board Help. The Board Help must be installed by
running the Board Help setup program available in the download area.
Folder object
The appearance of the Folder object can now be customised. It is possible select different
shapes and colors. The new configuration settings are illustrated hereafter,

418

Release Notes

For details, refer to paragraph Creating a folder of the online Help.


BoardMaster Options tab
The options Tab contains a log windows used for troubleshooting and some self-recovery
parameters.
The BoardMaster AutoResume feature allows the system to identify and fix cases of
processes which are not responding correctly to the BoardMaster. This feature allows you to
eliminate or reduce BoardMaster service down-time. The AutoResume feature is a watchdog
that monitors the BoardServers activity. When a BoardServer doesn't respond in a timely
fashion, the BoardMaster kills the dummy process and restores a fresh BoardServer process.
The CMS Log window (click the check box to start logging) traces all TCP socket activity going
on between the BoardClient<>BoardMaster and between BoardMaster<>BoardServer. This
function can be used to troubleshoot systems experiencing connection problems.

Refer to the online help for more details on the self-recovery parameters, click Options tab.

Fixes and optimizations


- DataView slow printing issue. Causes of DataView reports that would print slowly have been fixed.
- DataView - Filters. A malfunction of reports having three or more entities set ByRow and using
Filters has been fixed.
- DataView - Collapse and ColorCoding. The red/green alerts appearing on DataView reports using
the Collapse and ColorCoding functions is now shown in the row header column and the font used for
the collapsed rows is the default font resulting in a significantly narrower column than previously.
419

Board 6.1 Manual


- Summarisation of date InfoCubes. An aggregated view of a Date InfoCube now returns the date
range "from .. to.." using the highest and lowest underlying values.
- DataEntry - date InfoCubes . A malfunction occurring when entering value on a date InfoCube has
been fixed.
- Zip File Read Error. Some cases of errors generating the error message "Zip File Read Error" have
been fixed.
- Error record. Some cases occurring at the BoardClient start-up and generating the error message
"Error record" have been fixed.
- User already logged-on . Some cases generating the erroneous warning message "User already
logged-on" and occurring randomly when saving or creating a capsule have been fixed.
- Goto Action. It is now possible to set more than one GoTo action in a procedure. The GoTo action
can now point to a line following to the one where it is defined (a forward GoTo ). If two GoTo a prior
line actions (back GoTo ) are included in a procedure, a forward GoTo action must be set between
them.
- BoardWeb - Drill-Through . A malfunction of the Drill-Through function used from a BoardWeb
Query, causing it to return one line lesser than correct has been fixed.
- BoardWeb - Data-entry of decimal values. BoardWeb Server now supports data-entry of decimal
values using the comma as decimal separator. The decimal separator must be set on the computer
running BoardMaster and BoardServer. H
- BoardWeb - ReferTo. A malfunction of the ReferTo function occurring in BoardWeb Queries having
more than one comulmn using the ReferTo function has been fixed.
- BoardWeb - Parenthesis character. A malfunction occurring when the closed parenthesis character
" ) " was used in the heading of a column has been fixed.
- BoardWeb - QueryBuilder. Some cases of errors occurring when selecting a procedure from the
Procedures list field have been fixed.
- BoardWeb - QueryBuilder. Some cases of errors occurring when selecting a chart template while
configuring a chart have been fixed.
- Procedures. A malfunction occurring when saving that Capsule and that could provoke the loss of
procedures has been fixed.
- Next Screen list. The screens list shown in the drop-down list boxes used to configure the
NextScreen action is now alphabetically sorted.
- Capsule. A malfunction causing two or more objects having a Layout (for example DataView, Alert,
Mapping objects and also DataFlow actions of a procedure) to be linked to the same Layout
configuration has been fixed.
- DataReader. A malfunction occurring when defining a new DataReader protocol and that could
provoke the loss of newly created protocol has been fixed.
- FowChart copy. Copying a Capsule screen containing a FlowChart object now also copies the
Layouts defined on the object.
- FlowChart object. When clicking on an active FlowChart area, linked to an action, the mouse
pointer icon would sometimes change to a "forbidden" icon. This behaviour has now been removed.
- Folder object. A malfunction of the Capsule Folder object causing embedded objects to swap
position has been fixed.
- Folder object. A malfunction of the Capsule Folder object potentially causing a system crash has
been fixed.
- Speed Test . The SpeedTest function has been re-tuned and enriched with a more sophisticated
diagnosis of the client's RAM performance and of the network transfer performance between the
BoardMaster and the BoardClient.

420

Index
0

20date%20Sales .............................................. 267

02 of 04 ...............................................................66

20to .................................................................. 267

24

10

considering ..................................................... 88

deleting ............................................................79

24x500x1000 ..................................................... 88

TOTAL cell ....................................................262

2D............................................................. 188, 279

10 Lite .................................................................34

including ....................................................... 188

10 User ...............................................................49

2GB .......................................................... 106, 392

100
meaning ........................................................153
10px;60px .........................................................366

exceeding ............................................. 106, 392


3
3D............................................. 153, 180, 188, 211

100,000

Creates ......................................................... 211

max item number value ...................................76

3D option .......................................................... 375

1000 dec ...........................................................275

3D Scatter ........................................................ 188

1003x ................................................................336

3D XYZ ............................................................ 188

1024x768 ....................................................19, 307

12 User ...............................................................49

32px;107px;782px............................................ 366

15

4A01 40 ............................................................ 327

default ...........................................................219

4A01 40 01 01.................................................. 327

400px ................................................................366

4A01 40 01 02.................................................. 327

36px ..................................................................366

4A01 40 01 03.................................................. 327

29px;201px;36px ..............................................366

4A01 40 01 04.................................................. 327

425px;327px;36px ............................................366

4A01 40 02....................................................... 327

1GB .....................................................................22

5.5 instructions ................................................. 382

20
exceeding ......................................................311
20 Lite .................................................................49
200
number ..........................................................354
2000
selects January .............................................275
2002.2006
shift ..................................................................64
2004
maintitle Monthly Sales .................................281
Q1....................................................................65
Q2....................................................................65

5.5B3 ................................................................ 373


5.6
instructions#Upgrading_to_5_6___Note_to_Bo
ard_Web_Server_administrators ................. 340
5.x ............................................................ 309, 340
500
value ............................................................. 136
10px ................................................................. 363
5-pCon.length .................................................. 285
5x6000 ............................................................... 76
6
6.0 instructions ................................................. 309
6.0A .................................................................. 307
6.1 instructions ................................................. 289
421

Board 6.1 Manual


65
sequence.......................................................283

Access button .................................................... 33


Accessing....................................... 60, 73, 86, 246

database design functions ............................. 60

10px;50px;600px ..............................................363

Query Builder ............................................... 246

800x600 ..............................................................19

Account .................................................... 302, 305


Mr ................................................................. 302

A
A rapid application ............................................379

Accounts summary ............................................ 34

A value ..............................................................225

Acme .................................................................. 63

A value on the Budget vs Actual.......................225

Across button ................................................... 107

A& .....................................................................163

Across option ................................................... 107

A&b ...................................................................163

Act .................................................................... 300

A*b ............................................................163, 232

Action Infocube Xtract ...................................... 289

A/b.............................................................163, 225

Action replaces ................................................ 230

A/dt....................................................................163

Action terminates ............................................. 229

A/gt....................................................................163

Actions2, 50, 53, 54, 86, 95, 104, 117,


131, 133, 148, 180, 181, 182, 209,
227, 228, 229, 230, 234, 235, 238,
285, 289, 297, 308, 320, 324, 326,
336, 356, 363, 366, 387, 390, 414,
424

A/rt ....................................................................163
A1......................................................................308
A2......................................................................308

124,
210,
239,
332,
421,

127,
213,
271,
333,
422,

A3......................................................................308

Moving .......................................................... 228

A31....................................................................308

Actions allowing ............................................... 227

A32....................................................................308

Activate .............................................................. 23

A-b ................................................... 163, 269, 275

CMS ............................................................... 23

ABC...................................................................414

Activate checkbox .............................................. 40

Able to ...............................................................379

Enable ............................................................ 40

About50, 91, 152, 158, 224, 227, 238, 241, 272,


311, 324, 362, 375, 383, 405, 411

Active checkbox ................................................. 23

Broadcasting function ...................................238


Layout ...........................................................158
About Board Web Queries ................................241
About Board Web Server ..........................241, 362
About CSS ........................................................272
About InfoCubes .................................................91
About Parent .....................................................383
About procedures .............................................227
About RDB InfoCubes ......................................405
About screens ...................................................152
ABS ...................................................................163
Absolute Offset .................................................232
Absolute Offset option ......................................232
Access ................................. 28, 71, 72, 73, 85, 86
Web .................................................................28
422

Active Directory ................................................ 300


Active Users window .......................................... 34
AD ............................................................ 299, 300
AD authentication..................................... 289, 299
AD Domain....................................................... 300
AD server ......................................................... 300
Add ................................................................... 311
Current ......................................................... 311
FlowChart ..................................................... 311
footer ............................................................ 311
Add button........................................................ 401
Add New Tree .................................................... 99
Added to ............................................................. 16
Adding ........ 95, 140, 216, 247, 274, 324, 336, 411
BoardStyle .................................................... 336

Index
City ................................................................216
Dynabar .........................................................324
entity members..............................................140
JavaScript .....................................................274
JavaScript functions ......................................274
new version .....................................................95
State ..............................................................216
WHERE .........................................................411
Additional ..........................................................411
Address ...............................................................92
Admin ................................................................121
Administrative ...................................................401
Administrator's ............................................52, 125
Administrator's Board .......................................242
Administrator's PC ..............................................59
Advanced ..................................................232, 251
Adventure Works ..............................................289
Alert131, 158, 162, 173, 176, 196, 199, 200, 201,
202, 203, 204, 210, 211, 251, 272, 297, 324,
336, 363, 366, 373, 422, 424

138, 139, 141,142, 143, 144, 149,


153, 156, 158, 162, 163, 167, 173,
179, 186, 190, 215, 216, 224, 225,
231, 232, 235, 238, 244, 247, 251,
264, 265, 267, 269, 272, 274, 279,
302, 305, 307, 308, 309, 311, 315,
329, 332, 335, 336, 340, 341, 349,
356, 362, 363, 366, 372, 373, 375,
387, 392, 395, 405, 411, 421, 424

150,
176,
229,
260,
283,
326,
352,
379,

152,
178,
230,
262,
289,
327,
354,
382,

BoardClient version 6.1 ................................ 289


defaults ......................................................... 251
Deleting .......................................................... 80
All BOARD ......................................................... 25
All Board programs .............................................. 7
All BoardClient ................................. 308, 311, 315
All BoardServers .................................... 16, 53, 62
All childparent relationships ....................... 73, 86
All Customers................................................... 138
San Diego..................................................... 138
All DataViews ................................................... 363
All entity members ............................................. 80
Deleting .......................................................... 80

Creating .........................................................202

All existing ................................ 29, 73, 80, 86, 139

Using .............................................................203

All existing childparent relationship.................. 70

Alert assume .....................................................173

All HTML pages ................................................. 25

Alert Information ...............................................203

All HTTP server.................................................. 40

Alert object ............... 201, 202, 203, 204, 363, 366

All incoming...................................................... 104

Alert objects having ..........................................203

ALL option ........................................................ 143

Alert tab ................................... 173, 199, 202, 251

All orphan items ........................................... 73, 86

Alert Value ........................................................251

All PC ............................................................... 340

Alerts appearing on DataView reports using ....424

All PCs ............................................................. 309

Alias ....................................................................36

All PCs running BoardClient335, 336, 372, 373,


375

Aligment ............................................................213
Use ................................................................213
Align ............................................. 95, 96, 264, 421
Use ..................................................................95
Align Vertically ..................................................421
Aligning ...............................................................96
Aligning InfoCube versions .........................96, 231
Alignment ..........................................................180
All1, 2, 5, 7, 9, 12, 13, 15, 16, 25, 28, 29, 32, 35,
39, 40, 43, 50, 53, 54, 59, 60, 62, 63, 64, 68,
70, 73, 74, 77, 78, 79, 80, 83, 86, 87, 88, 89,
90, 92, 93, 96, 97, 99, 100, 102, 104, 105, 106,
108, 112, 121, 122, 129, 130, 131, 133, 134,

All Products ...................................................... 232


Month ........................................................... 232
All refer ......................................................... 74, 87
UID ................................................................. 87
All TCP ....................................................... 35, 424
All Trees ..................................................... 97, 100
All use ................................................................ 77
entity's UID ..................................................... 77
All values .......................................................... 262
Allocated Expenses InfoCube.......................... 414
Allow Access ...................................................... 29
423

Board 6.1 Manual


Listed Folders..................................................29

Trend ............................................................ 275

Allow Access checkbox ......................................29

Year .............................................................. 112

Enable .............................................................29

Yearly Cumulated Value .............................. 275

Allow Changes ............. 29, 85, 167, 224, 225, 251

Yearly Moving Average ................................ 275

Allow Upload option ..........................................250

Yearly Moving Total Value ........................... 275

Allows ........................ 23, 229, 281, 282, 356, 373

Approach .............. 59, 97, 123, 148, 149, 354, 379

BoardClient .....................................................23

database design ............................................. 59

AllRows .............................................................279

April 2004 ......................................................... 142

Alone .....................................................7, 189, 194

select February............................................. 142

Analytical ......................................................71, 85

select January .............................................. 142

Analytical mode ............................... 71, 73, 85, 86

Architecture6, 7, 9, 11, 12, 43, 44, 51, 59, 127,


242, 422

AND ................................. 163, 178, 216, 251, 275


And beverages....................................................88
And contains .....................................................230
button ............................................................230
And customers ....................................................88
AND/OR ............................................................275
Angular Mid Size...............................................347
Angular Small Size ...........................................347
ANSI..........................................................106, 392
Aonther entity......................................................93
App......................................................................29
Appearance176, 180, 184, 272, 332, 347, 366,
424
Append104, 105, 106, 108, 297, 299, 336, 392,
395
Append Mode ...................................................299
Appendix ...........................................................163
Apply button ......................................................190
Applying ... 112, 190, 225, 251, 275, 322, 341, 414
Budget ...........................................................322
clicking ..........................................................341
Detail By ........................................................275
fonts by ..........................................................275
Forecast ................................................275, 414
Last Value .....................................................275
Month ............................................................112
Previous ........................................................251
Previous Period .............................................275
Previous Year................................................275
the inverse.....................................................225
424

Choosing .......................................................... 7
Architecture allows ............................................... 7
Architecture requires ............................................ 7
Board license of................................................ 7
Architecture uses ................................................. 7
server's ............................................................. 7
Area ......................................... 188, 202, 203, 279
Area & Value .................................................... 202
Area Manager .................................................. 289
linked ............................................................ 289
Area Manager entities ................................ 81, 289
Area Manager entity item ................................. 289
Area option............................................... 201, 203
AREAMGR ....................................................... 289
Args .................................................................. 285
String ............................................................ 285
ARIMA .............................................................. 168
Arkills ............................................................... 305
AS400 erroneous ............................................. 375
AS400 table ..................................................... 375
ASCII ................................ 106, 235, 283, 375, 392
number ......................................................... 283
ASCII file .......................................................... 112
AsDate ............................................................. 275
Ask ................................................................. 8, 19
Ask Password .................................................... 40
ASP .................................................................. 241
ASP file ............................................................ 356
ASP page ................................. 244, 283, 285, 356

Index
AsPicture ..........................................................275

Available also ................................................... 333

Assigments .......................................................300

Axes87, 158, 170, 176, 179, 189, 194, 195, 196,


199, 200, 202, 203, 241, 247, 251, 259, 264,
289

Assign License....................................................34
Assigning ................... 34, 70, 73, 83, 86, 127, 215
CustomerCity ................................................83
Product Group ...............................................215
refer ...........................................................73, 86
relationship ..........................................73, 83, 86
relationships ....................................................70
security profile ...............................................127
AsText ...............................................................275
At any ................................................................224
Attendee button ................................................135
Attending ...........................................................135
Briefing ..........................................................135
August 2003......................................................168
July 2004 .......................................................168
August 2004......................................................168
Authentication and ............................................299
Authentication as ..............................................299
BoardMaster performs ..................................299
Authentication successful .................................299
Authorized ...........................................................34
Authorized Visitor..........................................29, 34
Auto...................................................................148
enable ...........................................................148
Auto num ............................................................54
Autofit ................................................................336
AutoGo ..............................................................182
AutoGo option ...................................................182
button having.................................................182
Automatic roll-up rule ................................308, 327
Autorefresh ...............................................251, 363
Autorefresh option ............................................259
AutoResume .......................................................35
AutoResume Enable .........................................354
AutoResume feature ...................................35, 424
Autosize ............................................................315
enable ...........................................................315
Autosize function ..............................................315

Setting .......................................................... 176


Axes By Column .............................................. 189
Axis .......................................................... 190, 289
B
B.Prev.version.................................................... 66
B4 ..................................................................... 373
Back ................................................................. 180
Back button ...................................................... 261
Backcolor ................................. 153, 251, 280, 356
BackColor button ............................................. 186
Background picture .. 195, 198, 201, 202, 204, 363
Setting .................................. 195, 198, 201, 204
Backup copy .............................................. 62, 127
Making ............................................................ 62
Bad file name ................................................... 422
Balance Sheet.................................................. 327
BardMaster ........................................................ 22
Barkills ..................................................... 302, 305
Barkills@mycompany.com .............................. 305
Bars are ........................................................... 193
Base Path ............................................ 25, 40, 363
BoardMaster's WEB ..................................... 363
Based On ......................................................... 232
Based On action .............................................. 326
Based on Cube ................................................ 326
Basic concepts74, 81, 87, 102, 116, 118, 121, 125
Batch options ................................................... 271
Batch Reader ..................... 61, 115, 116, 227, 235
use ................................................................ 115
Batch Reader basic concepts .......................... 116
Batch Reader function ............................. 102, 115
Batch Reader procedure .......... 116, 117, 118, 235
Creating ........................................................ 116
Deleting ........................................................ 118
Running ........................................................ 117
Batch Reader window ...................... 116, 117, 118
BatchReader .................................................... 148

Autosize icon ....................................................315


425

Board 6.1 Manual


refer ...............................................................148
BatchReaderName ...........................................117
BBYY ................................................................103
BBYYYY ...........................................................103
BdB .....................................................................54
BdB name ...........................................................54
Behaviour ................. 299, 332, 354, 362, 421, 424
DataReader ...................................................421
Beloging ..............................................................54
BevelWidth ........................................................180
Bi 15
Bimonth .......................................................65, 103
Using ...............................................................65
Bitmap .......................................................163, 234
Bitmap file .........................................................335
Blank DataView ................................................311
Blank FlowChart ...............................................311
Blank Graph ......................................................311
BLOB ........................................................318, 320
view ...............................................................318
BLOB InfoCube use ..........................................320
InfoCube Clear action ...................................320
BLOB InfoCubes .......................................308, 320
BLOB InfoCubes extends .................................320
BLOB Viewer ....................................................320
Block122, 136, 162, 166, 168, 170, 173, 176, 208,
211, 213, 216, 237, 251, 272, 275, 297, 322,
366

386, 387, 392, 395, 401, 404, 405, 407, 411,


414, 421, 422, 424
Creating ........................................................ 268
Dataset refers to ................................... 106, 392
ID .................................................................. 411
include .......................................................... 244
uninstall .......................................................... 49
Board accounts ................................................ 299
Board application ............................................. 414
for example................................................... 414
Board BatchReader ......................................... 148
Board Capsules2, 29, 36, 116, 129, 264, 311,
315, 333, 372
Board Client installation ..................................... 19
Board counts ...................................................... 93
entity ............................................................... 93
Board creating.................. 74, 77, 79, 87, 237, 411
table .............................................................. 411
BOARD Database ........................................ 25, 54
Board database MyDatabase .......................... 386
Board Databases2, 4, 7, 9, 12, 13, 16, 17, 25, 29,
36, 43, 53, 55, 59, 64, 66, 68, 81, 90, 102, 105,
106, 107, 112, 118, 129, 146, 152, 158, 168,
227, 241, 242, 243, 261, 269, 275, 289, 309,
311, 315, 320, 339, 344, 349, 379, 383, 386,
392, 395, 414
Board Datareader ............................................ 289
Board DD Localizer .......................................... 349
Board detects ................................................... 387
Board Full license ........................................ 59, 60

Blue ...................................................................352

Board generates .............................................. 411

Bmd.....................................................................59

Board Help ............................................... 422, 424

Bmi ....................................... 62, 63, 127, 289, 386

Board LDAP configuration ............................... 302

BMP ......................................... 163, 183, 207, 335

BOARD License ................................................. 45

Board1, 2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 17,


19, 22, 23, 25, 29, 36, 39, 40, 43, 44, 45, 46,
48, 49, 50, 52, 53, 54, 55, 59, 60, 62, 63, 64,
66, 68, 70, 74, 76, 77, 79, 81, 87, 88, 90, 93,
102, 103, 104, 105, 106, 107, 108, 111, 112,
116, 117, 118, 129, 130, 133, 136, 138, 146,
147, 148, 149, 150, 152, 158, 163, 167, 168,
173, 186, 192, 207, 208, 216, 222, 227, 232,
234, 235, 237, 241, 242, 243, 244, 246, 247,
250, 251, 261, 264, 265, 267, 268, 269, 271,
272, 274, 275, 280, 281, 282, 283, 285, 289,
297, 299, 302, 308, 309, 311, 315, 320, 332,
333, 335, 336, 339, 340, 344, 349, 354, 356,
362, 363, 366, 372, 373, 375, 379, 382, 383,

Board license of ................................................... 7

426

architecture requires ........................................ 7


Board Location ............................................. 19, 36
Board Management Intelligence Toolkit .............. 2
Board provides ................................................. 227
BOARD Queries............................................... 280
BOARD Query file ............................................ 280
Board Quick Site features ................................ 244
Board reseller................................................... 382

Index
Board sends..............................................108, 395

Board_Style ..................................................... 272

Board Server configuration .................................36

Board_Style.css ............................................... 272

Board Single Sign .............................................282

Board_Style.css This file ................................. 272

Board StandAlone...............................................39

Boards collaboration functions ........................ 133

Board StandAlone license file .............................19

Board56WebKitFiles installation ...................... 340

Board Toolkit.........................................................2

BoardClient7, 8, 9, 13, 16, 17, 19, 23, 29, 34, 35,


36, 39, 40, 43, 44, 45, 48, 51, 53, 59, 116, 117,
133, 135, 148, 157, 241, 244, 265, 289, 297,
302, 307, 308, 309, 310, 311, 315, 320, 333,
335, 336, 340, 344, 349, 354, 363, 372, 375,
382, 421, 422, 424

Board updates ..................................................411


table ..............................................................411
Board uses ................................................112, 272
Board Web7, 8, 25, 44, 46, 49, 50, 55, 74, 77, 79,
87, 192, 241, 242, 244, 246, 247, 250, 251,
264, 265, 267, 268, 269, 271, 272, 274, 280,
281, 282, 297, 335, 336, 339, 340, 354, 356,
362, 363, 366, 375
Board web functions .........................................267
Board Web queries55, 74, 77, 79, 87, 192, 241,
242, 244, 246, 247, 250, 264, 265, 267, 268,
271, 272, 274, 280, 281, 282, 340
Saving ...........................................................250
Board web queries Style Sheet ........................272
Board Web queries use ................... 74, 77, 79, 87
Board Web query HTML ...........................281, 282
Board Web query pages ...................................272
style definitions..............................................272
Board Web query script ....................................264
Generating ....................................................264
BOARD Web Query using ................................268
Creating .........................................................268
Board Web root directory ..................................241
Board Web Script......................................251, 269
Board Web Server pages#The_Web_Replicator
......................................................................363
Board Web Single Sign...............................25, 282
Board WebQueries ...........................................375
Board WebQuery ..............................................375
Board WebServer282, 283, 285, 289, 309, 340,
375

allowing .......................................................... 23
Cases ........................................................... 335
causing ......................................................... 333
clicking .......................................................... 7, 8
closing ............................................................ 53
configuring ................................................ 36, 40
deploy ........................................................... 309
installing ................................................... 19, 43
number ........................................................... 16
provoking ...................................................... 307
restart ........................................................... 349
run ................................................................ 133
upgrade ................................................ 289, 309
used .................................................................. 7
BoardClient 5.6 ................................................ 354
BoardClient computers ........................................ 9
BoardClient configuration .................................. 23
BoardClient configuration window ........... 297, 372
BoardClient environment ......................... 333, 366
BoardClient F7 function ................................... 333
BoardClient icon................................... 7, 8, 39, 40
clicking .......................................................... 7, 8
BoardClient installation ........ 8, 289, 309, 340, 382
BoardClient on c .......................................... 39, 40
BoardClient User.............................................. 372

Redirect .........................................................285

BoardClient version 5.0 ................... 372, 373, 375

SSO ...............................................................283

BoardClient version 5.5 ................... 336, 375, 382

Board WebServer application ...........................282

BoardClient version 5.5x .......................... 372, 373

Board WebServer installation ...........................375

BoardClient version 5.6 ................... 336, 339, 340

Board WebServer pages ..................................282

BoardClient version 6.1 ................................... 289

Board/Database ............................... 25, 36, 62, 63

all .................................................................. 289

427

Board 6.1 Manual


BoardClient.exe Main .......................................148

BoardMaster program starts .............................. 23

BoardClients .........................................23, 59, 307

BoardMaster program uses ............................. 300

BoardClient's workspace ..................................324

Windows API ................................................ 300

BoardClientSetup..........................................39, 40

BoardMaster provides ...................................... 242

BoardCSS .........................................................366

BoardMaster sends .................................. 242, 299

Board-Management Intelligence...........................1

query ............................................................ 242

BoardMaster7, 8, 9, 12, 13, 15, 16, 17, 19, 22, 23,


25, 29, 34, 35, 36, 39, 40, 43, 44, 45, 48, 51,
52, 53, 55, 57, 59, 117, 127, 133, 136, 148,
150, 241, 242, 246, 260, 265, 267, 283, 289,
297, 299, 300, 302, 307, 309, 310, 333, 335,
336, 339, 340, 354, 356, 362, 363, 366, 372,
373, 375, 382, 421, 424

username ..................................................... 299


BoardMaster validates ..................................... 242
BoardMaster version 5.6D ............................... 335
connect to ..................................................... 335
BoardMaster waits ....................................... 25, 35

communications with .......................................36

BoardMaster Web .............................. 25, 297, 335

Installing ..........................................................52

start ................................................................ 25

Internet ............................................................17
stop .................................................................53

BoardMaster WEB configuration242,


354, 362

stopping ...........................................................53

BoardMaster writes ............................................ 55

BoardMaster 5.5E .............................................372

260,

340,

BoardMasterAddress ....................................... 267

BoardMaster 5.6B .............................................336

BoardMaster's WEB................................... 36, 363

BoardMaster activates ........................................15

Base Path ..................................................... 363

BoardMaster assumes ........................................22

BoardMasterUser ............................................. 300

BoardMaster AutoResume feature .............35, 424

BoardMsaterAdress ......................................... 267

BoardMaster CMS ..............................................36

BoardPub25, 40, 55, 57, 241, 244, 246, 251, 264,


265, 267, 268, 272, 274, 275, 279, 281, 356,
363, 366, 375

BoardMaster configuration ...................15, 23, 242

levels ............................................................ 244

BoardMaster counts......................................43, 51

Board's broadcasting ....................................... 375

BoardMaster delegates.....................................300

Board's characteristics ....................................... 59

BoardMaster executes ......................................267

Board's collaboration functions ........................ 133

BoardMaster HTTP .......................... 340, 354, 362

Board's HTTP................................................... 241

option makes .................................................362

Board's Month entity ........................................ 112

BoardMaster interactively ...................................52

Board's multidimensional database ... 87, 379, 405

stopping ...........................................................52

Board's website .................................................. 55

BoardMaster kills ........................................35, 424

BoardServer7, 8, 9, 12, 13, 15, 16, 17, 19, 22, 23,


25, 29, 34, 35, 36, 39, 40, 44, 51, 53, 54, 55,
59, 106, 108, 115, 116, 119, 129, 148, 207,
208, 235, 242, 258, 289, 297, 300, 307, 309,
310, 333, 335, 339, 340, 354, 362, 366, 372,
382, 392, 401, 411, 421, 422, 424

BoardMaster AutoResume option ....................354

BoardMaster manages .......................................15


BoardMaster networks ........................................19
BoardMaster performs ......................................299
authentication as ...........................................299
BoardMaster program7, 8, 13, 15, 23, 25, 36, 40,
48, 51, 52, 242, 289, 300, 310, 335, 339, 354,
356, 363, 372, 373, 375, 424

cause .............................................................. 53
kill ................................................................. 116
number ........................................................... 15

BoardMaster program manages .........................13

restart ............................................................. 36

BoardMaster program occurring .......................372

Running multiple sessions ............................. 15

428

Index
BoardServer completes ......................................15

InfoCubes ..................................................... 379

BoardServer CPU time .......................................55

Bound DataView list ................................. 188, 193

BoardServer estimates .......................................36

Box ........................................................... 211, 213

BoardServer installation7, 8, 22, 44, 289, 309,


340, 382

define ............................................................ 213

BoardServer log file ............................................54


BoardServer.exe Path ........................................23
BoardServers9, 13, 15, 16, 23, 34, 35, 36, 51, 52,
54, 424
CPU .................................................................15
displays ...........................................................34
pool .................................................................15
BoardServer's LAN .............................................13
BoardServerSetup ........................................39, 40
BoardSignOn ............................................283, 285
BoardSignOn property ......................................283
BoardSSO ........................................ 282, 283, 285
create ............................................................283
BoardSSO file ...................................................283
BoardSSO.txt ....................................................283
BoardStyle ................................................336, 366
added ............................................................336
BoardSys ............................................................45
BoardWeb .........................................................424
BoardWeb Query ..............................................424
BoardWeb Server .............................................424
BoardWebKit.........................................................8
BoardWebKitFiles installation ...................289, 309
BoardWebKitSetup .....................................40, 241
ran ...................................................................40
BoardWebServer ..............................................285
BODY ........................................................272, 285
BODY.Background ...........................................272
Booking ...............................................................36
Booking file .........................................................36
Boolean .......................................................92, 176
entering .........................................................176
implement........................................................92
BorardPub .........................................................281
Border ...............................................................180
Both types .........................................................379

Box & Value ..................................................... 202


Box object ........................................................ 213
BQB_Style.css This file ................................... 272
BQS ................................................................. 267
BQS_Style.css This file ................................... 272
Brand ............................................................... 232
Brand will be .................................................... 232
Brian Arckills .................................................... 305
Brian Arkills .............................................. 302, 305
Briefing ..................... 133, 134, 135, 244, 267, 356
Attending ...................................................... 135
call ................................................................ 267
exit ................................................................ 135
Presenting .................................................... 134
Briefing function ............................................... 133
Briefing icon ..................................................... 135
Broadcast checkbox......................................... 237
Enable .......................................................... 237
Broadcast option .............................................. 239
Broadcasting ............................ 237, 239, 336, 375
Refer ............................................................. 237
Broadcasting function ...... 237, 238, 239, 336, 372
About ............................................................ 238
Broadcasting screen ........................................ 239
Brodacsting function ........................................ 237
Browse ............................................................. 111
Browse button ...................... 40, 46, 108, 395, 407
Browse feature ................................................. 407
Browse function ....................................... 108, 395
Browser .............................................................. 46
BSP .................. 335, 336, 339, 356, 362, 363, 366
store ............................................................. 363
Bsp file ............................................................. 363
Budget .............................................. 148, 225, 322
applied .......................................................... 322
Budget vs Actual .............................................. 225
Budgrting ............................................................ 64
429

Board 6.1 Manual


Bug fixes297, 307, 308, 333, 335, 336, 372, 373,
375, 379, 421
Bug-fixes ...........................................................333
Builder ...............................................................333
Building ...............................................................81
multidimensional .............................................81
Business Activity Monitoring .............................379
Business Intelligence ....................................1, 379
Business Intelligence implementations.................2
Button2, 23, 25, 29, 32, 33, 36, 39, 40, 45, 46, 49,
50, 52, 64, 69, 70, 73, 78, 79, 80, 83, 86, 88,
93, 95, 96, 97, 99, 100, 102, 106, 107, 108,
111, 112, 114, 115, 116, 117, 118, 119, 122,
127, 129, 131, 133, 134, 135, 136, 139, 141,
142, 144, 145, 146, 148, 151, 155, 156, 158,
167, 179, 180, 181, 182, 183, 186, 190, 194,
196, 199, 202, 206, 208, 209, 210, 211, 213,
216, 222, 227, 229, 230, 238, 239, 242, 247,
250, 251, 259, 260, 261, 262, 265, 272, 283,
289, 297, 300, 302, 305, 307, 308, 310, 311,
315, 318, 320, 324, 332, 335, 336, 339, 341,
344, 349, 352, 354, 356, 362, 363, 366, 387,
390, 392, 395, 401, 405, 407, 411, 414, 421

Bycol Entity ...................................................... 366


ByCol Month ............................ 269, 271, 278, 281
Bycol Year........................................................ 366
ByColumn ........................................................ 123
ByPage ............ 269, 271, 278, 280, 366, 421, 422
ByPage Area Manager .................................... 269
ByPage Division ............................................... 366
Bypage Year .................................................... 278
ByRow .............. 123, 269, 271, 275, 278, 279, 424
ByRow City ...................................... 269, 271, 281
ByRow Customer ............................................. 279
Byrow Division ................................................. 366
Byrow Entity ..................................................... 366
ByRow Product ................................................ 269
ByRow Region ................................................. 278
Byrow State...................................................... 269
BYY .................................................................. 103
BYYYY ............................................................. 103

and contains ..................................................230

Changes ........................................................332
Creating .........................................................180

C 7, 25, 29, 36, 39, 40, 45, 48, 53, 59, 62, 63, 67,
74, 106, 112, 117, 163, 225, 232, 241, 243,
267, 283, 327, 339, 375, 383, 392, 422, 424

Button checkbox ...............................................318

C drive ...................................................... 106, 392

Button closes ....................................................115

computer .............................................. 106, 392

Button Container ...............................................213

C*b/100 ............................................................ 225

Button object131, 148, 180, 209, 213, 324, 332,


335, 336, 362, 363, 366

C_YYYYMM ....................................................... 55

Button object causing .......................................336


Button object linked ..........................................148
procedure ......................................................148
Button Themes .................................................352
Buttons allowing............................................2, 216
Buttons BevelWidth ..........................................352
Button's Confirm Message................................336
Buttons having ..........................................182, 363
AutoGo option ...............................................182
Buttons linking ..................................................129
Buy licenses......................................................336
By Column ....................................... 158, 170, 176
By quarter .........................................................224
By Row .....................................................158, 176
ByCol ....................................... 269, 271, 275, 278
430

C01 .................................................................. 122


C1....................................................................... 88
C1-P1 ................................................................. 88
C3..................................................................... 112
C6..................................................................... 112
C7..................................................................... 112
CA .................................................................... 366
Calculate ...................................... 2, 166, 232, 322
Cost .......................................................... 2, 232
Calendar ............................................................ 66
California .................................. 138, 142, 144, 170
Sate .............................................................. 138
Call ................................................................... 267
Briefing ......................................................... 267
Download ..................................................... 267

Index
Refresh Tree .................................................267
Save ..............................................................267
CALL THE JAVA CLASS ..................................285
Cannot be ...........................................................59
Capsues Tree Navigator ...................................336
Capsule design concepts .................................149
Capsule Designer .............................................414
Capsule Designer environment ............................2
Capsule Locking ...............................................153
Capsule Locking icon................................151, 414
Capsule name...................................................335
clicking ..........................................................335
Capsule object model .......................................131
Capsule procedures79, 115, 117, 148, 251, 280,
366

Capsules2, 5, 7, 11, 12, 15, 19, 29, 36, 39, 40, 43,
44, 53, 55, 59, 63, 74, 77, 79, 80, 87, 115, 117,
129, 130, 131, 133, 134, 142, 145, 147, 148,
149, 150, 151, 152, 153, 154, 155, 157, 158,
182, 183, 188, 199, 202, 204, 206, 207, 208,
227, 228, 229, 234, 239, 241, 242, 251, 264,
265, 271, 280, 289, 297, 307, 308, 309, 310,
311, 315, 320, 324, 329, 332, 333, 335, 336,
339, 340, 341, 344, 349, 352, 362, 363, 366,
372, 373, 375, 379, 382, 383, 386, 387, 390,
414, 422, 424
generated from ............................................. 362
Go ................................................................. 366
Opening ................................................ 131, 148
Protecting ..................................................... 151
Understanding .............................................. 150
Capsules having .............................................. 297
Capsules made .................................................... 2

Scheduling ....................................................148

Capsule's meta ................................................ 150

Capsule Protection Password ..........................414

Capsule's screens and procedures list ............ 335

Capsule requiring data........................................43

Capsules Tree.......... 297, 307, 311, 315, 333, 422

Capsule returns ................................................344

Capsules Tree window ............ 297, 311, 315, 333

Capsule screen contains ......... 335, 336, 363, 424

Caption ............................................................. 183

FlowChart object ...................................335, 424

Cascading ........................................................ 272

picture ...........................................................336

Style Sheets ................................................. 272

Capsule screen linked ......................................383

Cascading Style Sheet ............................ 241, 281

Capsule screens2, 19,


145, 147, 149, 151,
207, 208, 234, 239,
329, 332, 333, 335,
363, 366, 375, 379,
422, 424

Case ........................................... 36, 307, 335, 363

129,
153,
241,
336,
383,

130,
183,
271,
339,
386,

131,
188,
289,
344,
387,

133,
204,
320,
352,
390,

134,
206,
324,
362,
414,

changes to.....................................................333
deleting ..........................................................147
Capsule structure......................................129, 150
Capsule Themes.......................................339, 352
Capsule Tree Navigator ....................................336
Capsule use ......................................................148
Capsule User Password ...................................336
CapsuleA ..........................................................229
CapsuleB.......................................................229
return .............................................................229
CapsuleB ..........................................................229
CapsuleA.......................................................229
CapsuleName ScreenName .............................264

BoardClient................................................... 335
inconsistencies ............................................. 307
Standalone ..................................................... 36
Web Replicator ............................................. 363
Cause ..................................... 48, 50, 53, 297, 333
BoardClient................................................... 333
BoardServer ................................................... 53
Dataview....................................................... 297
Key file ...................................................... 48, 50
Cell67, 74, 76, 86, 87, 88, 91, 92, 93, 96,
106, 108, 112, 115, 118, 119, 122, 126,
140, 163, 166, 167, 168, 173, 176, 186,
204, 205, 206, 211, 219, 224, 231, 251,
271, 272, 275, 289, 297, 308, 311, 315,
320, 322, 324, 335, 339, 341, 344, 349,
366, 379, 392, 395, 405, 407, 411, 414

104,
136,
187,
262,
318,
363,

Drill-down ..................................................... 187


Cell C3 ............................................................. 112
Cell coloring ..................................................... 251
431

Board 6.1 Manual


Cell D1 ..............................................................112

Changing............................................ 63, 259, 260

Cell D6 ..............................................................112

name .............................................................. 63

Cell E3 ..............................................................112

page ............................................................. 259

Cell F3 ..............................................................112

selection ....................................................... 260

Cell Focus .........................................................186

Channel.............................................................. 81

Cell style ...........................................................272

Chapter ................................................ 44, 59, 129

Cell triggers .......................................................320

Refer ....................................................... 44, 129

Cells belonging .................................................104

Characteristics ................. 6, 16, 88, 204, 354, 366

time ...............................................................104

computer ........................................................ 16

Cells containing ................................................173

following ....................................................... 204

Cells containing data ........................................315

CHART ............................................................. 366

Cells contributing ..............................................224

Chart Designer ................................. 188, 190, 265

Cells deriving ....................................................272

Chart or flowchart image to .............................. 311

Cells having ............................. 168, 173, 275, 322

CHART using ................................................... 366

Cells will ............................................................308

Chart Wizard ............................................ 188, 190

CENTER ...........................................................285

Chart_Template ............................................... 366

Certification .................... 39, 40, 44, 46, 48, 49, 50

Charts .............................. 247, 265, 279, 311, 339

Key ............................................... 44, 46, 48, 49

computer ...................................................... 265

Certified KEY ..................... 44, 46, 48, 49, 50, 382

edit ................................................................ 311

verify ................................................................48

Charts templates ...... 192, 265, 279, 363, 366, 424

Certify .................................................................40

Exporting ...................................................... 265

CMS ................................................................40

Checkbox8, 29, 176, 216, 224, 251, 297, 315,


336, 387, 390, 392, 395, 414

CFG ..................................................................237
Change depending .............................................90
Change existing ..................................................29
Change existing Procedures ............................414
Changed from ...................................................333
Changes15, 19, 23, 29, 32, 36, 40, 49, 52, 53, 55,
59, 63, 65, 71, 74, 77, 79, 87, 90, 104, 106,
108, 111, 126, 127, 130, 133, 136, 142, 143,
145, 154, 155, 158, 167, 173, 176, 190, 192,
205, 207, 208, 211, 244, 251, 259, 260, 264,
272, 279, 285, 289, 297, 307, 308, 310, 311,
315, 332, 333, 335, 336, 340, 341, 349, 352,
354, 356, 362, 366, 372, 373, 375, 382, 387,
395, 404, 407, 411, 414, 421, 422, 424
Button ............................................................332
Changes according ...........................................211
Changes included .....................................336, 414
Changes made ...................................................32
Changes to .......................................................333
Capsule screen .............................................333
current screen ...............................................333

432

Checkbox column ............................................ 354


Checkbox named ............................................. 289
Checkbox named Web .................................... 375
CheckSum ......................................................... 96
Child ................................................. 318, 324, 386
Child databases ............................................... 383
Child Layout GDE ............................................ 193
Creating ........................................................ 193
Child Layout Graph .......................................... 188
Creating ........................................................ 188
Child screen ..................................... 308, 318, 324
jump .............................................................. 308
Childgrand.................................................. 68, 82
Childparent............................. 70, 71, 83, 85, 143
missing ..................................................... 70, 83
view .......................................................... 71, 85
Childparent relationship ............................. 68, 82
Child-DB................................................... 386, 387

Index
Child-DB relationship ........................................386

Refer To ....................................................... 229

Child-DB screen................................................386

Refresh ......................................................... 363

Child-to-parent ..............................................71, 85

Save ............................................................. 216

Chinese ...................................................23, 36, 67

Sort ............................................................... 289

Choose6, 7, 19, 29, 65, 70, 76, 78, 83, 134, 135,
136, 176, 181, 206, 219, 224, 232, 235, 261,
289, 311, 324, 326, 329, 332, 347, 352, 356,
379, 387, 390, 407, 411, 414

Start icon .......................................................... 8

architecture .......................................................7

Validation...................................................... 216

Choose Current ................................................311

Client ................................................ 9, 12, 55, 375

Citrix ....................................................................19

Client-Master-Server ........................ 7, 9, 289, 309

City4, 81, 82, 83, 87, 105, 119, 133, 138, 166,
170, 216, 269, 278, 281, 289, 329, 366

Client-Master-Server Architecture ....................... 9

add ................................................................216
Customer .........................................................83
include ...........................................................119

Stop ................................................................ 36
Undo icon ..................................................... 158

Close .......................................................... 53, 311


BoardClient..................................................... 53
FlowChart ..................................................... 311

City entities ................................ 81, 138, 142, 143

CMS7, 8, 9, 12, 23, 25, 28, 29, 36, 40, 43, 44, 48,
49, 51, 52, 382

City relationship ................................................105

activate ........................................................... 23

Customer .......................................................105

certify .............................................................. 40

CityState ...........................................................86

define .............................................................. 40

CityState relationship ................................85, 216

Enable .............................................................. 8

Classic ..............................................................352

install .................................................. 40, 44, 49

Clear .................... 80, 97, 115, 156, 183, 211, 213

purchased....................................................... 40

Clicking ............................................................80

start .......................................................... 40, 52

press .............................................................115

stopping .......................................................... 36

Clear button ..........................................64, 79, 247

Upgrading ....................................................... 49

Clear function......................................................79

CMS architecture ......... 12, 13, 15, 16, 36, 40, 127

Clear/Update.....................................................411

Installation example ....................................... 40

Clearing ..............................................................97

CMS Concurrent Users ...................................... 43

InfoCube ..........................................................97

CMS configuration tab ....................................... 23

Click the Go button ...........................................146

CMS Contemporary Users ................................. 43

Click the Query list ............................................146

CMS Default PWD ............................................. 29

Clicking7, 8, 36, 44, 45, 46, 62, 80, 108, 119, 158,
216, 229, 289, 297, 333, 335, 341, 363, 414

CMS installation ....................... 7, 8, 13, 16, 36, 40

Apply .............................................................341
BoardClient ...................................................7, 8
BoardClient icon ............................................7, 8
Capsule name ...............................................335
Clear ................................................................80

CMS installation overview .................................... 8


CMS license ........................... 8, 22, 43, 45, 48, 49
CMS Log window ....................................... 35, 424
CMS Named ...................................................... 43
Cn..................................................................... 305

FlowChart ......................................................333

Cockpit158, 176, 198, 199, 200, 201, 203, 210,


339, 347, 373

No ..................................................................414

Creating ........................................................ 199

OK .......................................... 45, 108, 119, 297

Using ............................................................ 200


433

Board 6.1 Manual


Cockpit Information ...........................................200

DetailBy ........................................................ 336

Cockpit object158, 198, 199, 200, 201, 203, 339,


347

page reports ................................................. 335

Cockpit object provides.............................200, 203


Cockpit object represents .................................198
Cockpit objects having ......................................200
Cockpits enhanced ...........................................347
Code1 ...............................................................122
code2 ............................................................122
Code2 ...............................................................122
code1 ............................................................122

Columns contain ...................... 107, 251, 272, 322


name ............................................................ 272
Procedure ..................................................... 272
Columns containing Entities ............................ 336
Columns containing IF ..................................... 216
Columns determine .......................................... 195
Columns including............................................ 176
Columns use .................................................... 279

Codeparent .......................................................70

Command line53, 116, 117, 148, 182, 227, 271,


275, 280

Colhide ......................................................269, 275

Comment ........................................... 92, 182, 336

Collapse ........................... 264, 311, 341, 373, 424

use ................................................................ 182

Collapse function ..............................................372

Commission Percentage .................................. 232

Collapse options .......................................297, 372

Commission Percentage InfoCube .................. 230

Color Coding .....................................................251

COMMON ........................................................ 366

ColorCoding ......................................................424

Communications with ......................................... 36

ColorCoding functions ......................................424

BoardMaster ................................................... 36

Colouring ..........................................................352

Company.......................................................... 383

Column Algorithm123, 124, 158, 163, 166, 219,


225, 251, 289, 333, 372

Complete ............................................................ 50

Column algorithm containing ............................333


Column and actually .........................................225

uninstall .......................................................... 50
Component connections ...................................... 9

Column holding .................................................352

Computer7, 8, 9, 12, 13, 15, 16, 19, 23, 25, 29,


36, 39, 40, 43, 44, 45, 46, 48, 49, 50, 52, 59,
106, 108, 119, 129, 133, 136, 163, 207, 208,
235, 241, 242, 265, 289, 300, 309, 335, 340,
344, 375, 379, 382, 390, 392, 401, 424

entities ...........................................................352

C drive .................................................. 106, 392

Column indicated ..............................................139

characteristics ................................................ 16

Column Nr .........................................................211

Chart ............................................................. 265

Column resizing ................................................366

exe ................................................................ 241

Column sorting................................. 308, 339, 366

new ................................................................. 48

Column text files ...............................................107

Computer connected........................................ 242

Column total............................. 178, 262, 272, 297

Computer following ............................................ 49

Columns34, 68, 76, 82, 83, 86, 89, 90, 93, 95, 96,
106, 107, 112, 119, 122, 123, 124, 125, 126,
139, 140, 158, 162, 163, 165, 166, 167, 168,
170, 176, 178, 179, 186, 188, 189, 193, 194,
195, 196, 199, 200, 202, 203, 205, 206, 207,
208, 209, 211, 213, 216, 219, 224, 225, 237,
239, 247, 251, 260, 262, 269, 272, 275, 278,
279, 289, 297, 307, 308, 311, 315, 318, 319,
320, 322, 324, 333, 335, 336, 339, 341, 349,
352, 354, 356, 366, 372, 375, 387, 392, 405,
414, 421, 424

Computer having.............................................. 375

Column calculates ............................................170


Column heading............................... 162, 166, 349

434

Computer's Control Panel ................................ 163


Computers form ................................................. 16
Comulmn .......................................................... 424
Concatenating .................................................. 305
RDN .............................................................. 305
Concluding ......................................................... 66

Index
Thursday .........................................................66

Contemporary User............................................ 34

Concurrent User .................................................34

following ......................................................... 34

number ............................................................34

CONTEMPORARY USERS ............................. 382

Confidentiality .....................................................29

Contemporary Users license ............... 29, 34, 382

regards ............................................................29

ContemporaryUser license ................................ 40

Configuration6, 8, 12, 16, 19, 23, 25, 36, 39, 40,


48, 51, 86, 90, 130, 135, 142, 143, 152, 158,
162, 179, 182, 184, 185, 188, 189, 193, 213,
216, 222, 242, 260, 283, 289, 297, 302, 307,
310, 311, 315, 324, 332, 333, 340, 349, 354,
362, 372, 401, 407, 411, 414, 424

ContemporaryUsers ........................................... 40

Configuration parameters .................................375


Configuration requires ......................................354
Configure ................................... 40, 299, 300, 395
BoardClient ...............................................36, 40
LDAP .....................................................299, 302
Microsoft ........................................................300
ODBC ....................................................395, 405
Configuring ................................ 36, 143, 302, 405
DynaBar ........................................................143
Confirm .............................................................336
Confirmation .....................................................366
Connect button ............................ 39, 40, 395, 405
Connect String ..................................................401
Connect to ........................................................335
BoardMaster version 5.6D ............................335
Connected9, 40, 112, 134, 135, 136, 289, 375,
401
DB2 ...............................................................375
Local ................................................................40

Content25, 62, 64, 78, 95, 126, 149, 239, 243,


251, 261, 282, 283, 315, 320, 354, 386, 421
Contract Code .............................................. 45, 46
Control ............................................................. 299
Control Mode ................................................... 299
Control Panel ..................................................... 93
Convention is ..................................................... 66
Converting................................................ 366, 404
FlowChart ..................................................... 366
Copy ................................................. 228, 311, 356
DWR file ....................................................... 311
MNU file........................................................ 356
Copy button...................................................... 119
Copy From icon................................................ 356
Copy Structure option ........................................ 95
Copy/Paste ...................................................... 179
Copying .............................. 95, 111, 114, 155, 315
Data Reader protocol ................................... 114
DSH file ........................................................ 315
InfoCube structure .......................................... 95
Corporate ......................................................... 383
Corresponding ................................. 289, 363, 411

ODBO ............................................................289

HTML ............................................................ 363

press .............................................................112

InfoCube ....................................................... 411

Connected through WAN ......................................9

MDX ............................................................. 289

Considering .................................. 83, 88, 105, 414

MXD ............................................................. 289

24 ....................................................................88

Cost ........................................................ 2, 29, 232

Month ............................................................414

calculate ................................................... 2, 232

Sales .............................................................105

Products Sold InfoCubes ............................. 232

Sales Amount ..................................................83

Cost Centres .................................................... 414

Considerl .............................................................76

Country .............................................................. 92

Containing a......................................................335

Cps MyCapsule................................................ 366

Contains ....................................................239, 282

CPU time ............................................................ 54

email ..............................................................239
username ......................................................282

CPUs .................................................... 12, 15, 354


BoardServers ................................................. 15
435

Board 6.1 Manual


Cpx....................................................................129

ODBC ........................................................... 395

Cpz....................................................................150

ODBC Data Reader protocol........................ 108

Create SSO File................................................283

ODBC Datareader ........................................ 289

Creating7, 29, 32, 44, 45, 50, 59, 62, 74, 92, 93,
95, 106, 108, 116, 119, 151, 154, 155, 180,
183, 184, 185, 188, 189, 193, 194, 196, 199,
202, 204, 206, 207, 208, 210, 211, 216, 227,
247, 268, 283, 289, 356, 366, 395, 401, 405,
411, 414

OLE DB ........................................................ 401

3D ..................................................................211

Picture .......................................................... 183


procedure ..................................................... 227
query using ................................................... 247
RDB .............................................................. 405

Alert ...............................................................202

screen ........................................................... 154

Batch Reader procedure ...............................116

screen panes ................................................ 155

BOARD .........................................................268

Stand .................................................... 189, 194

BOARD Web Query using ............................268

Stand-alone Layout GDE ............................. 194

BoardSSO .....................................................283

Stand-alone Layout Graph ........................... 189

Button ............................................................180

STO .............................................................. 216

Child Layout GDE .........................................193

text file Data Reader protocol....................... 106

Child Layout Graph .......................................188

user account ................................................... 32

Cockpit ..........................................................199

User Group ..................................................... 29

datareader .......................................................92

Viewer .......................................................... 207

DataView .......................................................185

Viewer object ................................................ 208

Drill ................................................................119

Yes ............................................................... 414

Drill-Through protocol....................................119

Criteria15, 29, 92, 133, 142, 224, 239, 259, 326,


414

dynamic Viewer object ..................................208


DynaSheet ....................................................204
DynaWrite object ...........................................206
entity ................................................................74
Flowchart...............................................210, 366
Folder ............................................................184
half ..................................................................45
half-KEY file ....................................................45
hierarchies.......................................................59
InfoCube ..........................................................93
Infocubes...........................................................7
KEY .................................................................44
Key file ............................................................50
Mapping ........................................................196
MDX ..............................................................289
MXC ................................................................92
new Capsule .................................................151
new Database .................................................62
new InfoCube ..................................................95

436

Dimensioning.................................................. 15
Criteria corresponds......................................... 414
CRM ............................................. 17, 61, 102, 379
CRM application............................................... 282
Crtl key ............................................................. 260
keep .............................................................. 260
Css ........................................... 241, 272, 281, 366
CSS file .................... 251, 272, 274, 281, 336, 366
edit ................................................................ 272
pages use ..................................................... 272
CssFileName ................................................... 272
Ctrl key ..................................................... 190, 341
hold ............................................................... 341
Cumulated Counter .......................................... 165
Cumulated Value ............................................. 165
Cumulated Vertical........................................... 165
Current ..................................... 297, 311, 329, 387
add ............................................................... 311
Current Month .......................................... 379, 390

Index
Current Period ..................................................414

Customize .......................................................... 65

Current screen ..................................................333

Quarter ........................................................... 65

changes to.....................................................333

Cut-Off ............................................................. 102

Current Selection ..............................................311

Cutt .................................................................... 25

Curson ..............................................................228

Cycle ........................................................ 168, 366

drop ...............................................................228

Cyrillic ................................................................ 23

Custom .....................................................176, 274

Custom time ......... 61, 65, 67, 68, 69, 70, 168, 375

DAP .................................................................. 305

Defining ...........................................................67

Dashboard ........................................... 2, 129, 366

Custom time entity 61, 65, 67, 68, 69, 70, 168, 375

level ...............................................................383

Data1, 2, 4, 9, 16, 17, 19, 25, 29, 35, 36, 43, 53,
54, 59, 61, 62, 63, 64, 65, 66, 74, 76, 77, 78,
79, 80, 81, 83, 86, 87, 88, 90, 91, 92, 93, 95,
96, 97, 102, 104, 105, 106, 107, 108, 111, 112,
114, 115, 116, 117, 118, 119, 123, 124, 125,
126, 127, 129, 131, 133, 136, 138, 142, 144,
145, 146, 147, 148, 149, 150, 152, 157, 158,
162, 163, 167, 168, 170, 176, 178, 179, 185,
186, 187, 188, 189, 192, 193, 194, 195, 196,
199, 200, 202, 203, 204, 208, 209, 211, 213,
215, 216, 219, 222, 224, 225, 227, 231, 232,
235, 237, 239, 241, 242, 247, 251, 258, 261,
262, 264, 269, 271, 272, 275, 279, 289, 297,
305, 308, 311, 315, 322, 327, 332, 333, 335,
336, 339, 349, 354, 356, 366, 375, 379, 383,
392, 395, 401, 404, 405, 407, 411, 414, 424

loading .............................................................76

Exporting ...................................................... 147

read ...............................................................105

large volumes ................................................... 4

sparse structure consisting ...........................232

Loading......................................................... 107

table contains ................................................119

Setting .......................................................... 162

use ................................................................414

Data columns used .......................................... 196

Customer Category...........................................224

enabled on.................................................... 196

Customer entities36, 74, 76, 81, 82, 119, 166, 216

Data dictionary immediately ............................. 335

sparse structures involving ...........................216

Data Dictionary Language ID ........................... 349

Customer hierarchy ............................................81

Data entry options ............................................ 262

Customer list .....................................................216

Data Flow ......................................................... 231

CustomerCity ..............................................82, 83

Data Flow function ........................................... 232

assign ..............................................................83

Data Flow procedure........................................ 124

CustomerCity relationship ........................83, 105

Data inconsistencies .......................................... 83

CustomerCityState..........................................86

Data loading guidelines ................................... 105

CustomerCountryState .....................................4

Data model......................................................... 91

CustomerState ..................................................82

Data Read .............................. 36, 61, 86, 127, 235

CustomerID .......................................................411

Data Reader61, 90, 96, 102, 104, 106, 116, 227,


235

Defining ...........................................................67
Custom time entity Season .................................68
Customer4, 36, 59, 76, 81, 82, 83, 87, 88, 89, 92,
93, 105, 106, 108, 116, 118, 119, 166, 216,
232, 269, 278, 279, 305, 326, 339, 354, 366,
375, 383, 392, 395, 405, 411, 414
City ..................................................................83
City relationship.............................................105
exclude ............................................................59
involving ........................................................216

CustomerID entity .............................................411


Customers Area ..................................................46
Customised .......................................................424
Customization ...........................................241, 310

Data Reader basic concepts ............................ 102


Data Reader protocol61, 90, 102, 104, 105, 106,
107, 108, 111, 112, 114, 115, 116, 127, 148,
235, 237, 395
437

Board 6.1 Manual


Copying .........................................................114

Database Gamma .............................................. 62

Deleting .........................................................115

Database integrity check ........................... 61, 127

Interrupting ....................................................116

Database log file .................................. 53, 61, 127

Running .........................................................115

Database returns ............................................. 344

Data Reader protocol loading .............................90

Database security basic concepts ................... 125

Data Reader protocols importing hierarchies ...105

Database subfolders .......................................... 39

Data Reader window ....... 106, 114, 115, 119, 395

DatabaseName ................ 127, 235, 237, 267, 275

Data Reader window andclick ..........................108

Databases comprising ..................................... 127

Data resulting....................................................158

Databases created ................... 336, 372, 373, 375

Data Selection ................................. 158, 162, 251

Databases having ............................................ 375

Data Series By ..................................................188

DataDivew Block .............................................. 237

Data Series By Column ....................................188

DataEntry ......................... 275, 279, 297, 335, 424

Data Series By Row..........................................188

Dataview....................................................... 297

Data Setup ................................................224, 251

Data-entry default ............................................ 219

Data Sources ....................................................401

Data-entry features .......................................... 186

Data Split ..........................................................224

Data-entry Locking ........................................... 322

Data staging......................................................102

DataFlow2, 35, 92, 124, 131, 148, 227, 232, 289,


327, 333, 336, 373, 375, 379, 411, 424

Data Type .................................................379, 411


Data used .........................................................414
Database2, 4, 5, 7, 9, 11, 12, 13, 15, 16, 17, 25,
29, 34, 36, 39, 40, 43, 44, 51, 53, 54, 55, 59,
60, 61, 62, 63, 64, 65, 68, 74, 76, 77, 78, 79,
80, 87, 90, 91, 92, 97, 102, 116, 117, 118, 119,
123, 125, 126, 127, 129, 138, 144, 148, 149,
151, 152, 154, 158, 168, 170, 227, 232, 241,
242, 243, 246, 260, 269, 271, 275, 280, 289,
297, 307, 308, 309, 311, 315, 333, 335, 336,
339, 340, 344, 349, 372, 373, 375, 379, 382,
383, 386, 387, 395, 401, 404, 405, 407, 411,
421, 422
folder containing ............................................275
Generate .........................................................59
security profiles depending .............................29
Understanding .....................................59, 74, 78
Database administrator's ....................................25
Database are ......................................................16
updates ...........................................................16
Database containing .........................................383
Database design5, 7, 29, 43, 44, 53, 59, 60, 61,
125, 126, 127, 129, 168, 170, 297, 349, 387

define ............................................................ 124


DataFlow involving Date InfoCubes................. 373
DataFlow occurring .................................. 333, 373
DataFlow process ............................................ 232
DataFlow RAM ................................................. 373
DataPrn ............................................................ 336
DataReader2, 16, 35, 59, 70, 79, 83, 92, 104,
112, 131, 289, 297, 307, 320, 336, 372, 373,
375, 379, 392, 401, 421, 422, 424
behaviour...................................................... 421
create ............................................................. 92
opening......................................................... 421
procedure invokes ........................................ 421
Procedures having ....................................... 422
Refer ......................................................... 70, 83
SAP .............................................................. 372
DataReader action ................................... 333, 421
DataReader icon .............................................. 392
DataReaders ............................................ 297, 421

approach .........................................................59

Dataset ............................... 54, 106, 235, 237, 392

Database design functions5, 7, 60, 61, 126, 297,


349, 387

Dataset refers to ...................................... 106, 392

Accessing ........................................................60

Datatabases ......................................................... 5

Database design functions summary .................61

Datatflow procedures ......................................... 53

438

Board .................................................... 106, 392

Index
DataView93, 149, 153, 158, 163, 168, 176, 185,
186, 188, 192, 193, 204, 206, 207, 208, 209,
210, 211, 224, 225, 234, 237, 239, 262, 264,
289, 297, 307, 308, 311, 318, 319, 320, 322,
324, 329, 335, 336, 339, 341, 344, 352, 354,
363, 366, 372, 373, 375, 414, 421, 422, 424
causing ..........................................................297

Date Format ............................................. 404, 411


Date InfoCubes ................................................ 375
Date, Customer ................................................ 116
Date_Created................................................... 411
Date_Modified .................................................. 411

Creating .........................................................185

Datetime ........................................................... 344

Dataentry.......................................................297

Datreader ........................................................... 53

DynaSheet object differs ...............................204

Day ......................................... 67, 68, 93, 118, 375

Layout bound ................................................373

enable ............................................................. 67

occurring .......................................................336

importing....................................................... 375

option applies ........................................168, 176

Day entity ........................................... 68, 103, 414

RAM compaired ............................................211

Day, Month............................................... 379, 390

translating......................................................336

DayMonth......................................................... 68

Dataview cell.....................................................297

Dayyear ............................................................ 68

DataView Child .........................................188, 193

DB .............................................. 80, 127, 136, 422