Palo for Excel 3.

2
Advanced Topics

Commercial Open Source Business Intelligence for Performance Management

Palo for Excel 3.2 Advanced Topics

Jedox AG

Dated: November 5, 2010

© Copyright 2010 Jedox AG

Copyright Reserved. Reproduction including electronic reproduction and substantive recovery - even of parts - only with the approval of Jedox AG. Legal steps may be taken in case of non-compliance. Jedox, Worksheet-Server™, Supervision Server and Palo are trademarks or registered trademarks of Jedox GmbH. Microsoft and Microsoft Excel are trademarks or registered trademarks of the Microsoft Corp. All other trademarks are property of the respective companies. For the purpose of readability, brand names and trade marks are not explicitly stressed. If a relevant description (e.g. TM or ®) is missing, it is not to be concluded that the name is freely available.

Table of Contents
1 2 Introduction ....................................................................................................................... 8 Importing and exporting data........................................................................................... 8 2.1 2.2 Importing data ................................................................................................................ 8 Importing using the Data Import Wizard ......................................................................... 9 Importing text files ................................................................................................ 9
Importing data cells ..................................................................................................... 9 Update import............................................................................................................ 18 Importing comments .................................................................................................. 19 Importing elements .................................................................................................... 19 Deleting elements...................................................................................................... 29 Renaming elements................................................................................................... 31 2.2.1.1 2.2.1.2 2.2.1.3 2.2.1.4 2.2.1.5 2.2.1.6

2.2.1

2.2.2
2.2.2.1 2.2.2.2

Importing from ODBC sources............................................................................ 32
Link to ODBC source................................................................................................. 33 Importing in Palo ....................................................................................................... 33

2.2.3 2.2.4
2.2.4.1 2.2.4.2

Importing from other cubes................................................................................. 35 Internal loops ...................................................................................................... 43
Preparatory work ....................................................................................................... 43 Importing in Palo ....................................................................................................... 48

2.3

Additional import options .............................................................................................. 49 Importing from Excel worksheets........................................................................ 49 Importing via external ETL tools ......................................................................... 57
Palo ETL Server ........................................................................................................ 57 Cubeware.................................................................................................................. 57 Kettle......................................................................................................................... 57

2.3.1 2.3.2
2.3.2.1 2.3.2.2 2.3.2.3

2.4 2.5 3

Errors during import...................................................................................................... 58 Exporting data .............................................................................................................. 62

Working with attributes .................................................................................................. 67 3.1 3.2 3.3 Creating attributes ........................................................................................................ 67 Searching for attributes ................................................................................................ 73 Information processing with attributes .......................................................................... 87

4

Additional techniques in working with the Modeller.................................................... 89 4.1 Working with comments ............................................................................................... 89 Creating comments ............................................................................................ 89 Display of long comments................................................................................... 91 4.1.1 4.1.2 4.2 4.3

Calculated elements (push rules) ................................................................................. 94 Consolidation: calculation and factors ........................................................................ 105

5

Administration of user rights ....................................................................................... 106 5.1 5.2 Hierarchy of rights ...................................................................................................... 106 System database........................................................................................................ 107 System cubes and system dimensions............................................................. 107 Cubes in the database "System" ...................................................................... 109
Cube #_ROLE_RIGHT_OBJECT ............................................................................ 109 Cube #_GROUP_ROLE ........................................................................................... 111 Cube #_USER_GROUP...........................................................................................112 Cube #_USER_USER_PROPERTIES .....................................................................112 Cube #_ ROLE_ROLE_PROPERTIES.....................................................................113 Cube #_ GROUP_GROUP_PROPERTIES ..............................................................113

5.2.1 5.2.2
5.2.2.1 5.2.2.2 5.2.2.3 5.2.2.4 5.2.2.5 5.2.2.6

5.2.3
5.2.3.1 5.2.3.2 5.2.3.3 5.2.3.4

Restriction of rights in single databases ............................................................114
Cube #_GROUP_CUBE_DATA ................................................................................114 Cube #_GROUP_DIMENSION_DATA_<Name of dimension> .................................115 Cube #_CONFIGURATION ......................................................................................116 Cube #_GROUP_CELL_DATA .................................................................................118

5.2.4 5.2.5
5.2.5.1 5.2.5.2

Additional rules ..................................................................................................119 Applying user rights .......................................................................................... 121
Creating Server Entries for New Users .................................................................... 121 Removing server entries for users ........................................................................... 125

6

Working with enterprise rules...................................................................................... 126 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9 General information on rules ...................................................................................... 126 Creating a simple rule ................................................................................................ 127 Operators of the Rule-Editor....................................................................................... 130 Restricting the target area .......................................................................................... 130 Restricting the target area to an element type............................................................ 133 Drill Palo Rule............................................................................................................. 134 Deactivation in the case of references to removed elements ..................................... 134 Accessing a different cube via rule ............................................................................. 135 Usage of markers ....................................................................................................... 136 Advantages of markers..................................................................................... 136 Disadvantages of markers ................................................................................ 136 How are markers defined?................................................................................ 136 Arguments of PALO.MARKER() ....................................................................... 137 Markers for expressions ................................................................................... 137 Processing of the rules ..................................................................................... 138 Example Rule 1 ................................................................................................ 138 Example rule 2.................................................................................................. 139 Example rule 3.................................................................................................. 140 Example rule 4.................................................................................................. 141

6.9.1 6.9.2 6.9.3 6.9.4 6.9.5 6.9.6 6.10 6.10.1 6.10.2 6.10.3 6.10.4

Examples of rules using the Palo database Demo2................................................ 138

6.11 7

Supported functions for rules .................................................................................. 142

Filter functions with subsets........................................................................................ 146 7.1 PALO.SUBSET() ........................................................................................................ 146 Indent ............................................................................................................... 147 Alias.................................................................................................................. 147 Filters and their effects ..................................................................................... 147
Hierarchy filter PALO.HFILTER() ............................................................................. 147 Text filter PALO.TFILTER() ...................................................................................... 147 Picklist filter PALO.PICKLIST() ................................................................................ 147 Attribute filter PALO.AFILTER() ............................................................................... 147 Data filter PALO.DFILTER() ..................................................................................... 147 Sorting filter PALO.SORT() ...................................................................................... 147

7.1.1 7.1.2 7.1.3
7.1.3.1 7.1.3.2 7.1.3.3 7.1.3.4 7.1.3.5 7.1.3.6

7.1.4 7.2 7.3

Sequence of execution ..................................................................................... 148

Subset Editor.............................................................................................................. 149 Details of PALO.SUBSET() ........................................................................................ 152 Indent ............................................................................................................... 154 Alias.................................................................................................................. 156 Filter functions .................................................................................................. 159
PALO.HFILTER() ..................................................................................................... 159 PALO.TFILTER() ..................................................................................................... 167 PALO.PICKLIST().................................................................................................... 169 PALO.AFILTER() ..................................................................................................... 172 PALO.DFILTER() ..................................................................................................... 173 PALO.SORT().......................................................................................................... 183

7.3.1 7.3.2 7.3.3
7.3.3.1 7.3.3.2 7.3.3.3 7.3.3.4 7.3.3.5 7.3.3.6

8

Creation of Excel Pivot Tables ..................................................................................... 189 8.1 8.2 Preliminary notes........................................................................................................ 189 Needed address changes for the ODBO connection.................................................. 191 All in one........................................................................................................... 191 Palo server on machine 2 ................................................................................. 192 Palo server and Palo ODBO provider on machine 2 ........................................ 192

8.2.1 8.2.2 8.2.3 8.3 8.4 9

Using Palo ODBO Provider with Excel 2003 .............................................................. 193 Using Palo ODBO Provider with Excel 2007 .............................................................. 200

Administration of Palo.................................................................................................. 205 9.1 9.2 Locations of files and databases on Windows............................................................ 205 The palo.ini file ........................................................................................................... 206 Client-Connection with a Palo-Server............................................................... 206
Palo-Server and Client on the same computer ........................................................ 207 Palo-Server and Client on different computers ........................................................ 207 9.2.1.1 9.2.1.2

9.2.1

9.2.2 9.2.3 9.2.4

Automatic backup ............................................................................................. 207 Further options ................................................................................................. 207 File palo.ini.sample........................................................................................... 209

.............. 241 Tip 8: Using PALO..............9 9..3 9.............4 9.....4 11...3 10.................... 242 Selecting databases ............................................................................... 227 Cache settings of the server..........3.................................................................. 240 Tip 5: Copying cell contents (copy & like)................................................................ 242 12.............9.......................2 9................................. 241 12 Application example with Palo and Worksheet-Server............ 236 Filter functions..........................................3................................. 228 9................1 9....................................................... 232 Array functions ...................... 230 Input parameters ............................................1 12...........................SETDATA and PALO............................................................... 240 Tip 6: Importing text files .......7 11...........10 10 Multithreading..............................................................................5 10......................................1 Part 1: Developing of a Palo cube................................. 219 Deleting a server-connection .......................6 9......2 11.7 9..............8......... 217 Connecting Palo-Client with local Palo-Server ................................... 228 Parameters in the palo...........2 10...... 237 Splitting functions ......... 228 Formatting the display of Palo data in Excel ..............................................................1.. 220 9.......................................................................................................5 11... 245 12.................................................... 227 Starting Palo Service via the console ...ini ...............1.........................................................................................................1 9.................3 11........................ 242 Creating databases ............................. 239 11...1........ 228 Cube-Caches........... 225 PaloXlAddin..............5 Connection with the API and with the server browser .........3 Connecting Palo-Clients with Palo-Server..................................................................................3 12..log und PaloServer....................................................................................... 238 11 Tips.....................1 10........2 9........ 227 9..................................................................................................................................................8.....................5....................................................................................................... 239 Tip 3: Display comments in an array ..............................................................................5.............................................................................................. 230 10........8 Tip 1: Creating database backups.......................................4 10................. 241 Tip 7: Formatting at import ..4 .......................2 9...................................1 9...............3.........................................................................................................................................................8 Entries in the Windows Registry of the client....................................................................................1......................... 231 Table functions ........................................... 225 Database files........................................... 240 Tip 4: Use of consolidation factors ..............................6 Classification of functions............log ............................... 221 Data backup ............6 11................................................................................................... 244 Creating elements ................. 217 Connecting Palo-Client with Palo-Server in the network ..........................................................................................................................................................1 11.................................................................................................2 12..............................EADD ......... 229 Overview of Palo functions ............ 243 Creating dimensions......... 239 Tip 2: Creating new elements....

.........2 12.......................................1.....4..........3....1 12........................1 Creating a cube .................................................................2 12................1.........3 12...............3 13 Comparing the Worksheet-Server and Palo/Excel........4........... 269 Creating of the Worksheet-Server application ............................. 260 Entering planned hours ..........................................................................................3 12..............1 12........................................................... 255 12............................................................ 255 Inserting structures from Palo ...................1 12..... 275 Data entries by users............3.......1...........2..5 12......... 278 Index.... 276 12..............2.............................. 252 12.........1 Part 3: Creating of a web application with Palo.....................................................2 12..........3 12................................2............................ 264 Transferring data entries to reports............................................... 252 Creating project reports ............................... 281 ........ 245 Resources .............................3...........................2 Creating time entries ..................2...........1.................2 12..................2.......................1............................................................................................................................1....................4...........................................................2....2.......................................1.............................................................................................................................. Excel and Worksheet-Server.2................................................... 265 Part 2: Creating Palo worksheets.................. 268 Preparing of the Excel workbook ................3 12................................... 274 Setting up users ......................................2.....1...........3................. 247 Months ......1 12......... 248 Days ..............12........................................................................... 269 12.....1.............................. 250 Measures .................4.............5 Projects ....................2 12...........4.....................................2........... 262 Entering times .......................................................................4 12............................3............................. 255 Inserting charts...........

It is helpful for specific standard sources.1 Importing data In this chapter you will learn how to import external data into a new cube. 2. with the dimensions as shown on the right: Principally. In addition. Import by utilizing the Data Import Wizard. data can be imported in two different ways: 1. Calculated Elements and Consolidation Factors Administration of User Rights Enterprise Rules Filter Functions with Subsets Pivot Tables with Palo data Administration of Palo Overview of Palo Functions Tips Application Example with Palo and Worksheetserver 2 Importing and exporting data 2. . You can control and process the import in line with your requirements. We work with the database "Demo" and create a new cube "Market" for our imports. special types of transfer options will be described. Without the wizard.Introduction -8- 1 Introduction This Palo for Excel documentation includes the following topics: • • • • • • • • • • • Importing and Exporting Data Working with Attributes Comments.

1 Importing text files Text files provide one of the simplest ways to read data via importing. 31. if you were to create a model.txt” together with the Palo setup. this only works. 3.2. 6.Importing and exporting data -9- 2. Please bear the following important note in mind: In this description.” in the Palo menu. and click "Data Import..1 Importing data cells You get a file called "Testimport. 2. Then the following window appears: . The file contains approx. we first import data cells and then dimensions. On the other hand. You can find the file in the folder C:\Documents and Settings\ All Users\(Shared )Documents\Jedox\Palo.2 Importing using the Data Import Wizard 2.. Prepare by planning the structures Create a new database Create dimensions Create a cube with the dimensions Importing elements into the dimensions Import data cells 2. 4. you would use the following sequence: 1. Of course. because we can access demo data and an already created cubes. which contains targeted and actual sales figures from various countries and years.1. Open a blank Excel-worksheet. which appear as follows: This is the result of a typical data export from a database.2.000 data records. 5.

• Internal Loop: a list on a worksheet is processed via a loop. • ODBC Query: import data from an ODBC data source.Importing and exporting data -10- You have four options for the data import: • Flat Textfile: imports a file in txt or csv format. • Cube: data are imported from another cube. Let’s start with the text file. The data are separated by semicolon or a tab. Click "Next”. .

consequently. -11- Enter the separator character: the columns are separated by tabs in this example. Click "Next” to access the following screen. Click "Browse” to select the "Testimport. the corresponding options can remain blank. There are no decimal points or header lines in the test data. It can usually be found in the following folder: C:\Documents and Settings\All Users\(Shared )Documents\Jedox\Palo. . Click "Next” again and then "Close”. Then you see the following screen in the Excel-worksheet: This is the first data record of our text file.Importing and exporting data You are asked for the data source.txt” file.

in D4. The worksheet would be recalculated after each data record. Consequently. Now we want to use this option. It is important that the cell is in a column between the first and last field of the to be imported data record. But we do not want to have the data in an Excel-worksheet but transfer the data to Palo instead. . the cube and "Guess Arguments”. You will remember that we showed in chapter "Creating a Palo Worksheet” in section "Paste Function” how Palo can "guess” the arguments of a function. Select the database. When you then press F2. all data records would be written into the first row of our Excel-worksheet. we must create a formula that will transfer the contents of the first data record or first Excel row into the Palo cube. and the process would be repeated until the last data record.Importing and exporting data -12- If you clicked the button "Finish” instead of "Next” or "Close”. for example. Now click "Paste Data Function”. Click in a row below the first row. you see the formula. Click "Paste”.

when you import data from other data sources where other names are used than in Palo cubes.E1) By this. Such discrepancies can occur. and test whether the formula is processed correctly for the remaining data records. define an import rule: If E1 = "Planned”. E1 contains a different name for "Budget". With "TRUE" or "FALSE" you can decide. Write the following formula in E2: =if(E1="Planned”. which gives the difference between "Budget" and "Actual". Therefore. Your previous settings still exist. otherwise = E1. We must correct this: You might wonder why there is an element with the name "Planned” in the import file. Double-click "Next”. but instead use your name "Budget”."Budget”. it can only be written into base elements. You see the import window again. we instruct the PALO.SETDATA-function to use "Budget" instead of "Planned". Then click "Next” a few times and observe how the formula changes in cell F4. Then change the DATAC function in F4 by replacing the incorrect entry "Variance” with a reference to E2: Then select the "Data Import Wizard” again. To achieve this. "Variance” is not applicable. "Variance” is a consolidated element. In addition. But you do not want to import the other name "Planned” into the cube. With "FALSE". We have set it up this way to show you how the DATAC function works when there are discrepancies between old and new names. .Importing and exporting data -13- Most arguments in the formula have been identified correctly: We must correct the remainder manually: The cell F1 contains the value to be written. for example. then select the element "Budget”. whether it is permitted or not to write the value into a consolidated cell.

Close the wizard. Select "Palo Error” to display the error message: . you get this message: -14- Again. and call the context menu .Importing and exporting data After a few data records.SETDATAC-function does not retrieve a cube cell with the coordinates it has. A right-click in cell D4 will display the following menu. the PALO.

and change the "PALO. This also applies if the field is formatted correctly otherwise.SETDATA() will return the value which it has written into the cube.$C$1. we must provide a translation. . By using the import wizard data can be auto-formatted during the import process. If the write is performed properly. Replace $D$1 with $D$2 to use the English abbreviations of the months.$D$2. Tip: In a few installations the value in F1 is not recognized as a number. To get around this. and check whether the formula is being processed correctly. PALO.$B$1) Save the worksheet and start Data Import again. Then select the Data Import Wizard again."Units". Consequently.g. "Cannot write text in a numeric cell”). To be sure everything is correct. The format of a cell is applied when pressing "Next" while it is ignored with "Finish". In this case.$E$2.SETDATA. This happens by using the button "Next".function in cell D4 again. To avoid the formatting feature set the cell format to the format of the source or to "Text ".Importing and exporting data -15- Examine the elements in the dimension "Months” and you will see that the English term "Mar” is used instead of the German abbreviation "Mrz” in the database.g.SETDATA” function as follows: =PALO. step through a number of record imports by clicking "Next”. currency. date."Market"."localhost/Demo".$A$1.. Palo outputs an error message (e.SETDATA($G$1.FALSE. This auto-formatting of cell A1 changes the imported values to the regional settings (e. number format) that furthermore can lead to problems in depending formulas. enter the formula "=Value(F1)” in cell G1. See the screen below: Now change the PALO.

provided. click "Finish” in the "Data Import Wizard”.Importing and exporting data -16- The data will be properly written to the cube.SETDATA"-function) always equals the value in cell F1 and cell G1. the import process is faster. Once you are sure that no further problems are to be expected. the value in cell D4 (PALO. If you remove the checkmark next to "Refreshing screen while finishing”. respectively. .

$E$2. Tip: Therefore."localhost/Demo". use the following formula in D4: =if(_paloimportactive.$D$2.SETDATA($G$1. if you click into the Formula Bar and confirm this function with Enter or if you press F9.PALO. We insert this name into the cell G4. This information can protect you from writing data with the PALO. .$C$1.$A$1. this function is executed. you can use the variable _paloimportactive.SETDATA-function inadvertently into the cube. You get the value "TRUE” during import."Units".SETDATA-function is only executed when the Data Import Wizard runs. You can find it in the Excel menu under Insert/Name/Paste as soon as the first import has started.FALSE. "Market".$B$1)) In this form the PALO. Every time.Importing and exporting data -17- Important: In case you need to know if an import of data is currently in progress.

2."Units". After all. 2.SETDATA(PALO. E2.FALSE."Units".B1)+G1.C1. Therefor open a blank Excel-worksheet and create the following overview with "Paste View”: You can check whether the last data record has been input correctly. then you add the values from the file "updateimport.e.E2."Market". you read the current values from the cube with PALO.B1)) .PALO.txt).txt" to them (path: C:\Documents and Settings\ All Users\ Shared Documents\Jedox\Palo\updateimport.C1.D2. This information seems to be meaningless at first glance. For this. they only process if the status of _paloimportactive is equal to the value intended for that particular function. the progress bar will show you when an import is being processed.Importing and exporting data -18- Once the import has been completed."localhost/Demo".DATA("localhost/Demo". But indication of the status can also be required by other Palo functions.2 Update import As a further example. the display changes to "FALSE”.A1."Market". we assume.1. i. G4 contains "-paloimportactice" and the function in D4 is: =IF(G4.D2.A1. that you should update the "Market-data". Use for comparison: the last data record after the import has been completed.DATA().

we import the elements in one step to the three dimensions: "Time”. In this example. that the PALO-functions.2. You’ll get the error message "#value!" in case you try to import comments which are longer than 255 characters. We have again prepared an example to demonstrate how the import works. "Costcenter” and "Region”. for reasons of compatibility with MS Excel 2000 and former versions. In chapter 1 it was already explained.txt".DATAT() as an array-function. create a new database. however. B4 contains the current value of the corresponding cube cell: =3024 + 3000: -19- 2.EADD enables the import of dimension elements from a text file. nothing will be written into the cube cell. To avoid problems with other demo data.2. how you nevertheless can write longer comments into cube cells and how you can show them in the Excelworksheet by using PALO. keep a representation limit of 255 characters per Excel-cell. In this case.1.3 Importing comments With PALO.1. which contains these three dimensions. Note. . Because PALO-SETDATA() is limited to 255 characters.4 Importing elements The Palo function PALO. 2.SETDATA() you can import comments just as you can import data values.Importing and exporting data The following screenshot shows the last record of the file "updateimport.

Importing and exporting data -20- Click on "Modeller…" in the Palo-menu – there you can start the Palo Wizard. With the Palo Wizard. you can create a new database: After you click "Next”. . enter "Demo1” for your database name.

also create a new cube and call it "Demo cube”. . "Costcenter” and "Region”: In the Modeller. -21- Now you need to fill it. and create the three dimensions "Time". Open the Modeller. Close the Modeller.Importing and exporting data Click "Finish” and you get a confirmation that database was created successfully. Select the new database. for example. This cube contains the dimensions you just created.

." thereby excluding any header rows in the metadata. .txt file from being imported. The data records contained look as follows: The headers are the same as those in row 2 of the metadataimport. Therefore the formulas (of cells B13. Open this file: -22- You can see that row 1 is blank. it is assumed that the currently imported row is a header row and should be skipped. If A1 is identical to A2. The exception is that cell B5 references cell A1.. B22. B14.xls spreadsheet. It contains the formula "=A2=A1". B34.xls in the folder C:\Documents and Settings\All Users\(Shared )Documents\Jedox\Palo. The Palo data import function populates this row line by line with the contents of the text file "metadata. B23. B35) all begin with "=IF(NOT($B$5). You saw in the previous section "Importing Data Cells” how data are imported..Importing and exporting data You can find an Excel file with the name metadataimport. The headers are mainly shown to make what is happening in the worksheet more transparent.txt” (in the same folder).

The fields of this file are separated by tabs. *csv) and click "Next”. start importing the first data record. Click the "Data Import Wizard" to open it. Then select Flat Textfile (*. the first row of the import is read.txt” file in the folder C:\Documents and Settings\ All Users\(Shared )Documents\Jedox\Palo.txt. It contains the headers: . and click "Next”. Make sure that the option "Tab” is selected. Make sure that the name is localhost/Demo1. When you click "Next” again. To understand what the formulas do in this worksheet.Importing and exporting data -23- Cell B4 contains the name of the database created earlier. You can find the "metadata.

Importing and exporting data Click "Next” again to read the first real data record. -24- .

The base element is the month. =IF(NOT($B$5). There you see Month.EADD function in cell B13.g.EADD($B$4.1. To read data in line with OLAP terms.B10."N".B9.PALO.TRUE)) . which are derived from the date field (e. Quarter and Year."Time". Now let’s take a look at the PALO. you must pay attention to the following. These are in turn consolidated to years. The "If query” in the formula ensures that the header row is skipped. 2005/10/26) in cell A1. It returns "FALSE” as long as the import loop is not executed or if the import is aborted or complete. The months are consolidated to quarters.Importing and exporting data -25- Now let’s take a closer look at the three areas in which the elements are calculated and written into the cube. Let’s start with the fields under "Time Dimension”.

The PALO. . Both formulas together describe the allocation of months to quarters (in B13) and of quarters to years (in B14). Then the two elements "Jan” and "Qtr” are created. Otherwise. 1: Removes all elements of the existing dimension before importing. And therefore the following applies: while one PALO. basic elements are not deleted.g. in which Excel formulas are processed. Note: Make sure that all EADD functions referring to the same dimension use identical parameters (true or false). 2: Removes all existing elements of the C-dimension before importing. and the consolidation factor in Qtr.Importing and exporting data PALO. Reason: the sequence. If PALO. Its parent (or consolidated) element is "2005”. except that "N" will be changed to "C" if necessary. Now you also understand why the formula in cell B14 is: "Qtr. The element type will be converted to ‘c’ anyway in case the import loop assigns sub elements to it later on.EADD formula first executes the query for TRUE. Palo would execute that parameter for the complete dimension that happens to be found first.EADD () and then it will be ignored. The formula in cell B13 states with this: "Jan" is an element of the dimension "Time”. which was already created by another cell entry with PALO.EADD() in the same import. 1 (or TRUE) and 2 0: Removes no elements of the dimension before importing.EADD() has to create an element. 1" is an element of the dimension "Time”. cannot be determined. and the consolidation factor in 2005 is 1. two formulas are required to describe three elements of a dimension. then nothing will happen. 1”. Its parent element (consolidated element) is "Qtr.EADD formula describes two elements and their relationship to each other. 1 is 1. old entries). TRUE means that any existing elements of the dimension "Time” are deleted (e. Text Text Number (describes the consolidation factor) -26- Element name Parent name Weight Clear Possible parameters values are 0 (or FALSE).EADD() requires the following parameters: Server / database Dimension Type Text Text You can always use type "n” (base elements). During an import the command delete will only be executed one time with the first PALO.

two of them at the same time each time. there is a "Total” level as the highest level. The next level is the Costcenter Group. The dimension "Region” contains three types: Countries. Import of the third dimension "Region” functions somewhat differently since it is asymmetric. In addition.Importing and exporting data -27- The procedure in the next dimension "Costcenter” is similar. We again have two formulas that describe three elements. The result in Palo after the import of all data appears as follows (a few subregions are displayed in abbreviated form for legibility reasons): . But the countries of the regions America and Asia are consolidated to the respective region without a previous allocation to the "Subregions” level. You will see that the European countries are consolidated to the subregions South. which are base elements. Subregions and Regions. Its description is stored in the cells D18:D26 of the table. East and West before these Subregions are again consolidated into Europe. The text file contains costcenter numbers.

The next step would be the import of the data in column "G”.xls) and perform the corresponding imports.PALO. Import Element. This prevents conflicts between the formulas. After you determine that everything runs as intended. Then close this workbook (e.xls) and open the workbook with the SETDATA functions (e. click "Finish” concluding the structure import. especially if you import the same type of data from other sources at regular intervals.EADD($B$4. Consequently. cannot be determined beforehand. It is better if you process both functions in separate Excel-workbooks.B31. Now start data import. Note: It only makes sense to use the function PALO. the formula in B35 combines the subregion(s) (if existent) or the countries into a region. Import Data. Please refer to the previous section on the import of data cells. It may read values. and click "Next” a few times. Tip: You know that you should not use PALO. Otherwise."Region". It is possible to use these functions in different worksheets of one workbook. It defines a subregion as parent or consolidated element of Country. this procedure is not recommended. because you will probably need to import with SETDATA functions more often in the future. which may otherwise result due to the interdependencies.g.Importing and exporting data Now check how the formulas are set up: -28- The formula in cell B34 is: =IF(NOT($B$5)..EADD together in one worksheet.g. because the import wizard recalculates the database.IF(B31<>"". .SETDATA and PALO.B30. But the EADD functions must then end as a mandatory condition at "FALSE”.EADD together in one worksheet. The sequence.SETDATA and PALO. Note: Do not use PALO. If you proceed in this way."N". That would result in the same issue as already addressed in the description of the parameters for the EADD function.. The second if-query ensures that this formula is only executed if a subregion exists. you only need the EADD functions for the initial setup of elements or for the import of new elements. you can execute the import of elements using EADD functions.1. in which formulas are executed. for which no dimensions have been created.EADD in connection with an import. This also has a practical benefit.TRUE))) It excludes the processing of header rows due to the first if-query. On the other hand.

Now save the worksheet as a text file. Close the saved text file. Search for the "Delete elements . the element with the name of the customer in cell "A1” is deleted.$A$1).PALO."customers". In this case. Enter "yes" in the cells B2 and B5.. Leave the other settings. Open another blank Excel-workbook.txt” file. and click "Next”.g.EDELETE to delete elements. e. We can do that with the PALO.EDELETE-function: Proceed as follows: With "Palo – Paste Elements". "Delete elements .1. in column A.txt”. Proceed as described in the "Importing Text Files” section.Importing and exporting data -29- 2. From our previous examples. Therefore we would like to remove them from the database. . we still have "Customer1" … "Customer6" in the dimension "Customers" in our demo-database.EDELETE function in cell C3 as follows: =If(B1="Yes". enter all base elements of "Customers" into a new Excelworksheet. 1. beginning with cell A1. Enter the PALO. It uses the same options as described in connection with the import of text files.2. Open the "Data Import Wizard” 2. Name the file.5 Deleting elements You can use the function PALO. Your worksheet then looks as follows: Now import the text file.EDELETE("localhost/Demo"."") Deletion is only carried out if "yes” is in the import cell "B1”. Select "txt” as file format. Let’s assume that the customers "Customer2" and "Customer5" have bought nothing from us in the last two years.

Importing and exporting data The import is executed row by row. -30- If the import is successful. the formula returns "True". Now call the Modeller. If "Customer2" is shown. . click "Finish”. as desired. that the customer "Customer2" and the customer "Customer5" have been deleted. Now you see.

Name the file. This is another function that should only be used with the Import Wizard.6 Renaming elements You just got to know the PALO. "Customer1" should be renamed to "Miller" and "Customer6" to "Smith".ERENAME("localhost/Demo".g. Close the saved text file. Now use the same procedure as for deleting elements: Open a blank Excel-worksheet.txt”..Importing and exporting data -31- 2. Now. "Customer6" and "Smith". "Rename elements . Enter the following function in cell B3: =PALO.ERENAME. and click "Next”.A1. Open another blank Excel-worksheet. Leave the other settings as they are. you have PALO. • Open the "Data Import Wizard” • Select "txt” as file format. the renaming by means of the Modeller is too time-consuming. ."Customers".2. Take the same dimension as with the deletion of elements. The Excel-worksheet looks as follows: The "FALSE” in cell B3 means that the import isn’t active.EDELETE function.B1). Proceed as described in section "Importing Text Files”.1. and enter the names "Customer1” and "Miller”. For this purpose.txt” file. e. • Search for the "Rename elements . If you want to rename larger quantities of elements. The worksheet should look as follows: Now save the worksheet as a text file. Now import the text file.

txt” file. Call the Modeller: You will see that the renaming of element "Customer1” into "Miller” and "Customer6” into "Smith” was successful. Together with Palo you get a Microsoft Access database. It contains the same data as the "Testimport.mdb” and is located in the folder C:\Documents and Settings\ All Users\ Shared Documents\Jedox\Palo by default.Importing and exporting data The import is executed row by row: -32- If the import is successful. It is called "Testimport. 2.2 Importing from ODBC sources The import technique that you used for text files. .2. can also be used in a similar form for other data sources based on ODBC. click "Finish”.

You can do this quickly in Windows XP. • • • • Select Start/Control Panel/Administrative Tools/Data Sources (ODBC).2 Importing in Palo After you have done the settings. Click "System DSN” and select "Add”. open a blank Excel-worksheet. Enter "Palotest” as data source name in the next menu.1 Link to ODBC source Before you can import data from an ODBC database . and click "Finish”. Select the Microsoft Access driver. Select the cell A1.2.2.mdb” in the Description field and also select this file as your database. and click "Data Import Wizard” in the Palo menu. 2.Importing and exporting data -33- 2. Select "ODBC Query” as data source. you must log on the database source name(DSN). Enter "Testimport.2.2. . only four steps are required.

It contains all data that we want to import. these fields may remain blank. Enter the following SQL statement under 2: SELECT * FROM Sheet1. To retrieve data from the database. . Because no user name or password has been assigned.Importing and exporting data -34- You see the following screen after you click "Next”. The result appears as follows: Note that you have the option to store all SQL statements. "Sheet1” is the only table in the Access database. instead select "Palotest”. The DSN field may still read "MS Access Database”. an SQL query must be formulated in the text box. This option allows you to reuse them later and you will not need to recreate them repeatedly. This entry retrieves data from a table called "Sheet1”.

we confirmed that the cube "Market” is a copy of "Sales”. you can export data from a cube and then import into another one without problems. you see the import step which you already know from importing text files. The cube "Market" already contains data for the years 2002 and 2003 after the earlier import of the text files. The result appears as follows: . 2. But by the same token this also means that this type of import is only possible if the structures of the cubes are identical. we now want to create a view. -35- The remainder of the procedure is the same as described in section "Import of Textfiles”. Consequently. In such a case. and chose a few elements from "Products” in the Row titles and "Units” (dimension "Measures”) in Column titles. Then set your view to "Actual”. At the same time.3 Importing from other cubes We created the cube "Market” when working with the Modeller and already used it for a few tests. which shows the year 2004. Create a blank Excel-worksheet.Importing and exporting data After you click "Next”.2. "Germany” and "2004”.

But you should be able to select "Demo” as your database and "Sales” as your cube in the "Choose Server/Database” and "Choose Cube” dropdowns. and set "Cube” as source. You see the following screen after you click "Next”. Call the "Data Import Wizard”. .Importing and exporting data -36- Now switch to a blank table in the current Excel-workbook. Your personal work environment determines the appearance of your screen.

In the next window. We leave it to the default: . you could change settings for the import.Importing and exporting data When you select these parameters. the screen display changes as follows: -37- Additionally select "Germany” for "Regions” and "2004” for "Years”.

you get to the Data Import Wizard which will read the individual data records. Click "Close”.Importing and exporting data When you click "Next”.SETDATA function. At this point we need the PALO. -38- Clicking "Next” writes again the first data record of the import cube into your table (starting with A1). .

When you get to this import step again. click "Finish”.$B$1.FALSE. If yes.Importing and exporting data Enter a PALO."Market"."localhost/Demo".Paste Data Function…”. You might have to select the previously made settings again.$F$1. Check whether the import is processed properly. click "Next” a few times.SETDATA(G1. Make sure that you select the cube "Market” and that "Guess Arguments” is activated. -39- Correct the formula as follows: =PALO.$A$1) Restart the "Data Import Wizard”. .$C$1.$D$1.$E$1.DATAC formula in cell G3 using "Palo .

switch back to the table that you created earlier. and paste it to a section below. Select the area B22:B25 and delete the contents of these cells. e.g. just copy the area A1 to B12. The screen shown here to the right appears: . -40- If you want to verify whether this data is the same as contained in the "Sales” cube. starting in cell A14 Replace the cube name "Market” in A15 with "Sales”.Importing and exporting data Once the import procedure is completed. You will now find the values for the units.

and call "Paste Data Function”. The following screen appears: When you click the Formula Bar of Excel. Palo now accesses the "Sales” cube. .DATAC function.Importing and exporting data Click cell B22. Do not forget to select "Guess Arguments”. you will find that with the exception of the cube name and the order of arguments (arises from the different dimension sequences in the cube) are identical. and then click "Paste”. If you compare the functions in cells B9 and B22. -41- Select "Sales” as your cube this time. you can see the contents of the PALO.

"Year"."Actual"."Units".$A$6.DATAC("localhost/Demo"."Market"."Year"."Desktop L") The formula for the cube "Sales” is: =PALO. To conclude.$A$3. .$A$15."2004".$A$6."Actual".B$21) or =PALO.DATAC($A$14."Units") As a result.Importing and exporting data The formula for the cube "Market” is: =PALO.B$8."Sales". data from the cube "Sales” have been imported successfully into the cube "Market”.$A$3. You now see the same values for all products in both cubes.$A$4."2004"."Desktop L".$A$4. copy the formula from cell B22 to B23:B25.$A9) or -42- =PALO.DATAC($A$1.DATAC("localhost/Demo".$A$5."Germany".$A22."Germany".$A$2.$A$5.

6. This in the following folder as a default: C:\Documents and Settings\All Users\(Shared )Documents\Jedox\Palo. and insert a blank column. Enter the text. You have to make a few changes in the document. 2. and then press CTRL+H.xls”. and click "Replace all”. 5.4. Okt and Dez” with "Mar. Starting at cell B59 delete all following rows. save the file under the name "Russia. You can import data lists easily in this manner. Do not worry about consolidating it to "Europe”. and click "Replace all”. 3. Proceed as follows: 1.Importing and exporting data -43- 2. and then press CTRL+H. Select rows 1 and 2. 2. Select column A.2. 4. Mai.txt” file using Excel. You should now have a file with a total of 56 data records starting with cell B3.4 Internal loops With Internal Loop a counter increments cell A1 and the worksheet executes functions until an error occurs. Change the month names to English spelling in column E. May. and insert blank rows. Enter the text. Using the method just described. Save the file again. Oct and Dec” in E3:E58. First. . Open the "testimport. replace "Mrz. right now we are only interested in demonstrating the functionality. the loop must be ended after the 56th data record has been processed or when the 57th data record is read.2.1 Preparatory work We start by adding the region "Russia” in the Modeller. Consequently. Change the text from "Austria” to "Russia” in column B. Change the text from "Planned” to "Budget” in column F. Select the area F3:F58. Select the area B3:B58.

please also switch "Europe” to "Russia” and "Variance” to "Budget”. You create the following view with "Paste View”: Drag the "Products” into the Row titles. . Transfer "Months” into the Column titles.xls” file now appears as follows (excerpt): -44- To check the import later.Importing and exporting data The "Russia. This makes it possible for you to check how the loop is processed. and select the individual months. and select the notebooks displayed above. After the pasting. create a blank Excel-worksheet.

$A$1-1. Because A1 is still currently blank. which follows the start reference + counter."Please wait. The value behind "$A$1-1” states whether the start cell is in cell B3 or a column moved by "X”. i... The only difference is in the last part of the formula.$A$1-1.0) Insert in D1: =OFFSET($B$3.$A$1-1. the Excel function "OFFSET” will choose the row which is the result of the start reference + the current value of A11.10/0) The if-query checks whether the value in B3 is blank (<>””).. Its form is OFFSET(reference. Here you define whether the reference value should be taken from a column moved by "X”. Otherwise an error is evoked in B1 because 10 divided by 0 results in "#DIV/0" and with this error the process is aborted.".rows.10/0) -45- Insert in C1: =OFFSET($B$3. As long as B3 is not empty. column "C” in this case.$A$1-1.1) Insert in E1: =OFFSET($B$3. .cols).$A$1-1.$A$1-1.e.4) Insert in H1: =OFFSET($B$3.$A$1-1. the result = "DIV/0”.3) Insert in G1: =OFFSET($B$3. Consequently. . the formula states: Start reference = $B$3 Counter = $A$1-1 = move the start reference by the number resulting from A1-1 Return: the column (+1).0)<>"".$A$1-1..5) We are using here the function OFFSET() in the cells B1 to H1 to return the reference values of a defined area."Please wait. B1 displays "Please wait.".1) This formula is identical for all cells.2) Insert in F1: =OFFSET($B$3.0)<>"".". Starting at cell B3 as the reference.. The formula in cell B1 is: =If(OFFSET($B$3. The formula in cells C1 to H1 states (using the example of D1): =OFFSET($B$3..$A$1-1.Importing and exporting data Then go to cell B1 and insert the following function: =If(OFFSET($B$3.

The following formula results (cf. The cell "I1” is to contain the formula that writes your data into the "Sales” cube.xls now appears as follows: -46- Colour-coding is only to make the table easier to read.SETDATA formula in cell "I1” using "Paste Data Function”.Importing and exporting data Russia. Excel Formula Bar): . Insert a PALO. You are already familiar with the procedure.

If you enter "2” in A1 instead."Sales"."2002".F1.DATAC formula then appears as follows: =PALO."localhost/Demo"."Units") As long as cell A1 is still blank. If you enter "1” in A1. you obtain the values B4 to G4.E1.FALSE. ."localhost/Demo".D1. you obtain the following: If the "OFFSET” function is executed in C1 to H1.G1."Variance".FALSE. "Europe".C1."Sales". you obtain the values of B3 to G3.Importing and exporting data Replace in: =PALO.SETDATA(H1.SETDATA(value. the formulas in the area B1:I1 return errors messages or "0”."All Products"."Year"."Units") -47- value with H1 "All Products" with D1 "Europe" with C1 "Year" with F1 "2002" with E1 "Variance" with G1 Your PALO.

and start the Data Import Wizard.2 Importing in Palo Of course. it would not be very convenient if you now had to enter all values from 1 to 56 manually into cell A1.4. you will get: .2.Importing and exporting data -48- 2. Then select "Internal Loop”. If you click twice on "Next". Delete the value entered in cell A1.

In those cases. 2. B1 with "DIV/0” ensures that the process is aborted. 2. The import ends when 57 appears as your value in A1.3 Additional import options Up until now. -49- Take a look at the overview that you created in a blank worksheet earlier.Importing and exporting data If you click "Continue”.3. you have learned how to use the Import options provided by the "Data Import Wizard”. you will see the individual rows being imported. . We can also transfer the data from an Excel source into a cube.1 Importing from Excel worksheets In many cases. hit "Finish”. However. Let’s take a look at alternatives. in certain cases this solution will not be sufficient. After you have verified that everything is being imported by clicking on "Next” a few times. it does not make sense to first export these to a text file to be imported into Palo afterwards. only few data or few Excel-worksheets are to be imported. The Excel tables just need to be adapted accordingly. You can see that all 56 data records have been imported into Palo.

Insert six blank rows at the top of this Excel-worksheet.txt” file in the folder C:\Documents and Settings\ All Users\(Shared )Documents\Jedox\Palo. Open the "excelimport. A: Insertion of "Actual” . Enter localhost/Demo in cell B1. You will remember that each cube has a multi-dimensional. 3. 2. Czech Republic. Proceed as follows: 1. The procedure is illustrated using the example of "Actual”. Enter Sales in cell B2.Importing and exporting data -50- Let’s assume that you want to import data. Data is to be imported into the "Sales” cube of our demo database. 2002 and Units into B3 to B6 respectively. you have to decide on a cube itself and where in the cube the data are to be inserted. 4. hierarchical structure.xls” file which is to be modified to enable import into Palo. Enter via "Paste Elements” Actual. which are in the "metadata. Therefore.

Czech Republic. 2002 and Units The cells just inserted are necessary to define the target of the following import.Importing and exporting data B: Result: -51- C: After insertion of Actual. .

.Importing and exporting data -52- Now we need a routine that transfers these data from C9:N13. It enabled us to easily determine the correct coordinates of PALO. we copy the original data to row 17. Consequently.SETDATA(). You will remember that we used menu item "Paste Data Function” to import text files. Row 15 only serves as a visual separator.

-53- . and use "Paste Data Function” in the Palo menu.Importing and exporting data Select cell C18 now.

Obviously this is because you are currently working in the demo database and values do already exist. 2. you can copy the formula into the other column cells.Importing and exporting data -54- After clicking "Paste” under "Paste Data Function”. The $ character ensures that the formula is copied correctly. A value already exists in cell C18. you can see the appropriate PALO. you will see the references that the Palo formula has made. .DATAC function. When you click the Formula Bar of Excel. Once you are convinced that the PALO.DATAC function addresses the correct cells. you see two things: 1. If you click behind the parentheses in the Formula Bar.

"May”. After copying. you write the values from the table area C9:N13 into the area C18:N22 and consequently into the Palo cube. Please refer to row 17 in below screenshot. The lower table displays the values that currently reside in the cube. The result appears as follows: We already saw at the beginning of the copying procedure that the tables have differing values. But Palo uses the English spelling in the dimension "Months”.Importing and exporting data -55- Copy the contents from C18:C22 into the columns D to N accordingly. The upper table contains the values to be imported. some cells contain "#NAME?”. You will receive an error message. You will remember that we used different spellings of the months when importing the text file. In this table. . Overwrite the months "Mrz”. With that. Since we haven’t encountered any other issues. "Oct” and "Dec”. the months are in German. "Mai”. you can now convert the PALO. "Okt” and "Dez” with "Mar”.SETDATA formula.DATAC function into a PALO.

there is the value from the import area.$B$4.$B$5. Now both tables display the same values. Second. Select cell C18. You can check this.C$17.SETDATA formula only needs two additional parameters to describe what should be written in the cube: First. and data from the original Excel table are now in the Palo cube. by changing the function PALO. and change the formula as follows: =PALO.$B$2. for example C9. Copy the SETDATA function into the other cells of the table.$B18.$B$1.SETDATA(C9.SETDATA back to the function PALO. The PALO.DATAC($B$1. "False” in this case. is required. i.$B18. .$B$2.Importing and exporting data The two Palo formulas are largely identical. and SETDATA returns the new value as the result.$B$5.FALSE.$B$6) The data in the cube are changed immediately.e.$B$4.$B$3.C$17.$B$3. the instruction to splash.DATAC in the region C18:N22.$B$6) -56- becomes: =PALO.

provides an answer to the frequently asked question about the data’s origin.org/. you can also use external ETL tools.Importing and exporting data -57- 2. More information can be found here: http://www.2 Importing via external ETL tools In addition to the import options described. Consequently. i. is supported as well. you can find additional information at: http://en. 2. If you do not need the complete range of functions of the Importer. It uses a graphic interface. at no cost.2.jedox.3. as well as the transformation and the loading of inventory data and motion data into Palo-models. you can find additional information at: http://kettle.com/en/products/palo-for-data-integration/Introduction. transforming. the "Drill-Through" of Palo into the source systems.html. Here are three of the most commonly used: 2. unlike other ETL-tools. It allows for the source data to be displayed at a high detail level and with that. If you are interested in the Cubeware Importer. specifically tailored to the requirements of Palo. transferring and loading of data from various sources. Environment". You can find more information at: http://www.de/products/cubeware-product-portfolio/cubeware-importer.1 Palo ETL Server The Palo ETL Server allows the extraction of data from heterogeneous sources.2 Cubeware Palo is entirely supported by the Cubeware Importer.3.html.2.2. you can first obtain a free tool with the name "IMP Palo” from Cubeware.T. All common relational database system can be used as data source through a standardized interface. Palo OLAP Server is supported and highly performante as both source and target system. This makes it easy to implement a flexible data-import. It enables fast and simple cube setup as well as the filling of cubes from several data sources. The Palo ETL Server is Open-Source software. It is considered a data integration tool and was developed to simplify the reading.com/.3.L. 2.pentaho.e. The Palo ETL Server is.T. .3 Kettle Kettle is an abbreviation for "Kettle E. Even complex transformations and aggregations can be modeled with the Palo ETL Server. which can be executed automatically. you can download and use the basic version of Palo ETL Server from our website. If you are interested in this tool. Note: it is subject to charges.cubeware. The integration is not limited to the pure data-import from the ETL-process: the reverse direction.3.imppalo.

ERROR_LOG. This error was eliminated during the setup of the import.FALSE.FALSE).Datac” function via the "Paste Data Function” dialog from Palo. for example. Open the file using Excel."localhost/Demo".$C$1. Double-click "Next”. create a new cube using the "Cube Wizard” of the Modeller.ERROR_LOG()."Units". You can log such non-conforming data records using the PALO.Importing and exporting data -58- 2.txt” file in the "Importing Data Cells” section. and save this file under a new name in the same directory. Select "Testimport-short. You can find it in the directory: C:\Documents and Settings\All Users\Shared Documents\Jedox\Palo. To use this function.$B$1) Please write "Market". use the file "Testimport. This especially makes sense for an extensive data import. and you will get the first data record.txt” for example. Select the Market cube. and assign the same dimensions as for the "Sales” cube. Because the cube "Sales" has already been filled. For example.txt" as your file. it also contained a description "Planned” contrary to "Budget” used in our Palo model. in A4. and select ‘”tabs” and "no headers”. the name of the cube. In the formula.txt” again. Name it "Trial”. Activate cell F5 and click "Insert/Function”. Change the name "Planned” to "Budget”.function. call the "Palo. Start the import via the "Data Import Wizard”. change "Datac” to "Setdata”. and provide the following parameters (F1. Delete all data records after "Austria”. Name this second cube "Testimport-short. From cell F3. there are also some that are not so obvious. The following screen appears: .D$1. Abort the import. a data record would not be imported if the name of an element had additional blanks at the end.4 Errors during import You will remember that errors were contained in "Testimport."Market". Your worksheet should then look as follows: Function in F3: =PALO.$E$1. An excerpt of this file will suffice for this particular example. then select category "Palo” and afterwards the desired function PALO.SETDATA(F1. Besides differing months.$A$1. In addition to such clearly recognizable deviations.

Importing and exporting data When you click "OK”.Setdata” formula Path: the path to the log file and the file name (Without detailed path the error file will be stored in the folder of the import file). then we would have to change the columns in the error file to get the same structure as that of the original import file. Tip: Since the error is written by the first argument "error" into the error log file and "value" and "cube" have the same behavior as the arguments of the coordinates. Market.g. you access the entry fields for this function. The parameters are: -59- • • • • Error: the cell. i. The advantage of this procedure is that we will have records which are identical in structure to those of the original file "Testimport-short. into the text box labeled "Value". Cube: the actual cube name. we will be able to import the corrected error file with the same import procedure as before. which contains the error. if F3 receives quotes from the Excel wizard. A1. e. they must be removed). e.e. In this post-reading we can focus our view on the records. which contains the error value. it would be advantageous to enter first coordinate. If we were to enter "value" and "cube" correctly as arguments. Records without errors will have been written successfully into the cube in their correct cells by the first import sequence. F1. It will then be possible to correct the errors in the error file. . Value: the cell.txt”.g. Consequently.g. which have produced errors in the first import sequence. the cell with the "Palo. Important: Cell references as function arguments may not have quotes (e.

enter A1 for "Value" and B1 for "Cube" (in keeping with the tip above).ERROR_LOG() is actually finished at this point.C1. Close the cell by pressing "ENTER”.txt” file. D1. and F1) as shown in the following screenshot: We included F1 as a coordinate because we intend to use the error message file for the import of the remaining lines (after correction). there is one more problem and it originates in Excel.D1.Importing and exporting data -60- In order to get an optimal error message file for the remaining import. If all entries have been properly made."error. Consequently.Setdata” function (in this case F3) after having created of the PALO. and click "Next” a few times. Then enter the subsequent arguments (C1.B1. the data record from April would be displayed in the "Error. This time the correct error data record will be logged.ERROR_LOG Function. Now restart Data Import Wizard. However. In some Excel versions. If this happens to you. then the cell F5 contains the following function: =PALO.ERROR_LOG(F3. the data record following the one containing the error will be logged.F1) Important note: Setup of PALO. . click the cell containing the "Palo. E1.A1.txt". to prevent it.E1.

the end result must now correspond with the result expected in the first place.txt” file in Excel. previously carried out for "Testimportshort. Now you can: • • Correct the non-confirming data records as described in the "Importing Data Cells” section with respect to months. and correct the spelling of the months. Because this file only contains the data records previously rejected.txt”. After you store the file again.txt” file assigned by you. -61- This data record was not processed.txt”. Open the "Error. but instead rerouted to the "Error. you can carry out the import for file "Error. Verify by opening this file.Importing and exporting data You can see in the example below that a non-conforming data record is displayed in March (Mrz). .

and click "Export data” with a rightclick. Then select the elements or dimensions that you want to export.5 Exporting data Palo can export data from a cube into a CSV file. .Importing and exporting data -62- 2. Select the Modeller.

Blank cells can be excluded from the export. If you also want to export rule based cell values. these additional consolidations are not absolutely required for the export. Then the base elements would be consolidated once again. . Therefore. If this rule values should be ignored if they have the result 0. non-rule-cell value).Importing and exporting data -63- Use the query and the selection fields to restrict the export further. It is also possible to export base elements only. set the checkmark. do not use the option "Ignore empty cells" (which checks against the actual. then these consolidated text cells are exported like basic cells because they are listed also in the CSV files of the Palo database. Note that this condition then is applied for all cells. To get in this case only the basic text cells. including cells without rules. This can make sense if you want to read the data structures into a cube again. Note: In the case that you export a whole cube and in the cube are consolidated text cells. but set at "Query" the condition "<> 0". you have to specify explicitly the required base elements for the export.

csv”. 3. Tabulator Comma Semicolon Blank User-defined (e.g. determine the location and name of the file to be saved. In this case. Then execute the export command by clicking "Finish”. 5.. . The following characters can be used as separators: 1. Instead of the file extension "*. The CSV file (CSV = character separated values) is then created accordingly.txt” and you can set a few other parameters. 2.csv” in the folder C:\Documents and Settings\ All Users\(Shared )Documents\Jedox\Palo was selected. 4. In this example. |. # or others) Note: The export can also be attached to an existing file.Importing and exporting data -64- In the next step. you must select the corresponding field ("Append at the end of file”). you can also use "*. the file name "Testexport.

but for a TXT file instead. the result appears as follows: -65- In this example.Importing and exporting data When you then open the created file with Excel. the export was not created for a CSV file. .

and you have better control over the individual columns. Otherwise. the open procedure takes several steps. In particular. the following display appears: Values with a decimal point in the text file are interpreted as text and consequently are aligned leftjustified (cf. column G) .Importing and exporting data -66- With txt files.” to ".” by clicking "Advanced” (step 3 of the open dialog). you can switch the display of the decimal separator from ".

you can also proceed here as follows. Name the element. You learned how to do that when creating the dimension "Customers” and its elements. 1. .e. 3. there may be a need to display an element name depending on the language we are using. "English” and "French”. open the Modeller.1 Creating attributes To use attributes.Working with attributes -67- 3 Working with attributes In addition to element names. and repeat the procedure. Alternatively. i. Click "New element” in the bottom left corner. which enables a more detailed and longer notation than an element name. click the dimension "Months” and activate "Attributes". Activate "Attributes" Create attributes Add the three elements "German”. Local peculiarities are a typical reason for using element attributes. This information is in an additional table. you often need element attributes.

Note: Only attributes with the string setting will allow you to retrieve the replacement names. We will deal with this difference again in the "Searching for Attributes” section. You have just created the attribute cube "#_Months”. The setting "Numeric” can be more appropriate for other purposes. they must be changed to "Text” using the context menu. . The result with the "string” setting appears as follows: Go to "Paste View”.e. will be required later. -68- Please note: You must select and change each element individually. Select the attribute cube "#_Months. The other attribute cube. i.Working with attributes Once the elements have been created. "#_Products”. in this example the translations of original element names. and click the "attribute cube” icon in the middle.

you are able to select the attributes that you want to insert. Select the three attributes shown above. .Working with attributes Now you can change the settings for the view: -69- When you double-click "Select elements…” of "#_Month” in the Column titles.

. all elements will be shown: -70- Then select the base months.Working with attributes Then repeat the procedure for "Months”. Click "B” to do that. After you have selected the base months. they can be transferred into the Pick list by clicking the arrow. With the button "Open all hierarchies" (red arrow).

If this happens. make sure that. Therefore. With "OK" and "Paste" you obtain the following view: As shown on the left. this function would be overwritten! . if you want to change the order of the elements or if you do not want to transfer all of the base elements. the entry is written into the corresponding cube cell and is shown again by the Palo-function in the corresponding cell.Working with attributes But you could also click OK directly. The word "manually" is important here: After every input-confirmation. after editing. -71- The first alternative makes sense. the cube has not yet been filled. because you have already selected all base elements. you should correct the inadvertent deletion with the Excel-command "Edit – Undo"!) . for example. Manually enter the content of the Excel table (as shown on the right) into the Palo database table. the Palo-function is still displayed in the Formula Bar (If you copy entries into cells.

Working with attributes The result should look as follows: -72- .

g. Consequently. You access the same window directly via "Paste elements”. the procedure for both ways is the same. In an empty worksheet.2 Searching for attributes Now that you have entered the attributes for the "Months” dimension. let’s place the cell cursor in cell A1 and then we choose "Palo – Paste elements". you find a list box which is blank initially. for a search. You can call the "Choose Elements” menu via the "Paste view” dialog.Working with attributes -73- 3. As long as this is the case. you can only search for element names (e. Above: "Paste Elements” without setting for attributes (list field = blank) . they can be utilized e. Jan. For a search the settings must be adapted. Feb). In the bottom left corner of the "Paste Elements” window. In this "Paste Elements"window select "Show all selection tools".g.

-74- If you open all hierarchies. 2. The attributes must exist as text. You must activate these attributes. German) in the example "Year”..g. the element "march" will be found (red arrow). three prerequisites must be fulfilled: 1. Attributes must be maintained for the element. Set the list box to any attribute (e. enter "march" in the search field and then press the "Search & Select"–button.Working with attributes Below: "Paste Elements” with setting for attributes (list field = "English”) If you want to search for attributes. 3. Then click on "Insert" .

"Months". Note: The attribute description in the Palo."Year".Ename-function is not editable. A1 contains: =PALO. A1 contains: =PALO."") In the example "Year" and "German". for example. you will be searching for January.."German"." is set by the system and cannot be changed.ENAME("localhost/Demo"."Sheet1!__palo622272") The search for attributes is only possible when they exist in text format. . In the example "Year” and <none>. Without search for attributes With search for attributes The Palo formula also changes in accordance with this logic. On the other hand."Months". Depending on the attribute language setting.Working with attributes -75- Then the "Choose Element for Months" window changes."".ENAME("localhost/Demo".1."Year". you must set the list box to "none”. The past parameter "Sheet1!. if you want to search for real element names..1.

consequently conventional. numeric data. It contains the product prices .Working with attributes -76- You have read in the "Creating Attributes” section that an attribute cube "#_Products” exists in addition to the attributes you just created. If you double-click in the Row titles on "Select Elements…” below "Products”. The reason is shown in the Modeller: The attribute "Price per unit” is numeric: . then you see the following structure: On the left side you see that no alias-selection is possible for "Products".

Thus the display of the term "Languages” is not required as a selection criterion. But you can also use a different generic term. e. Now "Alias" can be altered. The dimension "Products” in the Modeller – the attribute property has been changed to "Text". "Languages”. For comparison. the term "alias” could combine the various language versions into one group. But the term "Alias” has further connotations with respect to the display. because the purpose of this list box is to get the result in a specific language.g. . Depending on whether Alias exists as a consolidated element. There is one more special feature to note in this context. This means that "Languages” is not displayed as a generic term either. we distinguish a total of four variants.Working with attributes -77- You see here that the selection does not work for numeric attributes. For example.. You just saw that the list box only works with text attributes. To understand these differences better. Let’s look at our first example. only those associated consolidated elements (child elements) are displayed in the list box. we temporarily change the attribute property to "Text”. As soon as you use a consolidated attribute element with the name "Alias”. create another attribute in the "Products” dimension using the Modeller. And this makes sense.

Call "Paste View”. Alias consolidates the attributes German and English. Now insert this information into a blank Excel-worksheet. Product Manager. and select the attribute cube "#_Products”. Color and Alias.Working with attributes -78- Enter the attributes German. . English.

English and German in the Column titles. Select the products in the Row titles as shown in the following screenshot: -79- Then the result appears as follows: . Color.Working with attributes Select the attributes Productmanager.

in the English speaking countries.Working with attributes You can see that this overview is still blank. If the purpose is to display alternative names only. the provision of additional options does not make sense. Enter the information as per the screenshot below. Variant 2 If no consolidated element with the name "Alias" exists. The element "Desktop L” now has the information "Color = Black” and "Product Manager = Mayer”. List box display variants: Variant 1 Alias is found as a consolidated element and consequently only German and English are displayed in the list box in "Paste View/Choose Element” or "Paste Element”. In addition. -80- You provided additional information for the products with these attributes. all base elements are displayed in the list box in "Paste View/Choose Element" or "Paste Element". . it is important to know what you want to achieve with the selection. this desktop is sold under the name "Desktop Start" and in the German speaking countries under the name "Desktop Einsteiger". "Alias” limits the selection to the required display of "German” and "English”. When selecting information.

Create instead "Other attributes”. Delete "Alias” via the "Delete element(s)” button. and consolidate "Product Manager” and "Color” here. .Working with attributes -81- Before the selection After the selection "German" Call the Modeller.

Select "Portable PC’s” in the Row titles. German. double-click "Portable PC’s”. English. Insert the cube "#_Products” in the "Paste View” dialog. Now you can display all products that. "Other attributes”. Product Manager and color are displayed. and select the elements "German” and "Color” in the Column titles. you see the following view (after Excel has been restarted): -82- To variant 2: "Alias” was not found as a consolidated element. being a consolidated element. for example. . and set the list box to "Product Manager”. Product Manager "Müller” is responsible for. Consequently. Once you have the view in Excel.Working with attributes If you now open the "Paste Elements"-dialog. is not displayed.

Display this column by selecting the columns C:E and then Format/Column/Unhide. If there is no allocation. It contains the original names for the attributes. 2. if you change the Excel view. In other words. the original name is used as an alternative. Column "E” follows column "C”. . one column is hidden in between. The first column displays the Portable PCs which are allocated to a product manager. which correspond with the respective attributes. You will see the following: This means that column "D” contains the original names of the products. you can display the original names and the employees responsible for the products next to each other. Thus.Working with attributes The following table is the result: -83- This screen demonstrates two things: 1.

You can also see the same in the "Paste Element” dialog: Call the Modeller. Create an attribute with the same name again. Do not consolidate it! . Delete the consolidated attribute "Other attributes”. as for "Notebook TT”.Working with attributes -84- If no attributes (here: Product Manager) are maintained. the missing attributes are replaced by the original name in column "A”. for example.

. Reason: There are no entries in "Other attributes”.Working with attributes Your entry of the individual attributes should look like this: -85- In the Modeller: In the "Paste Element” dialog Variant 3: No "Alias” was found. Consequently. Result: all attributes are displayed. no alternative displays are possible. You get the same results as in variant 2 with this selection. "Other attributes” is a normal text attribute here. and there is no other consolidated element either. The attribute "Other attributes” does not result in a display different than "none”.

Consequently. Consolidate "German” and "English” in it. Summary: You can control via the structure of attributes whether there is a search for specific attributes or whether the search option is suppressed by not displaying the attributes in the list box. Consequently. "Language” and "Other attributes” are consolidated elements. The term "Alias” will limit the display the most. they are not displayed. Consolidation in the Modeller The consolidations now correspond to: Language = Alias from variant 1 Other attributes = variant 2 Query in the "Paste Element” dialog Variant 4. English. Change the attribute type of "Other attributes” from "Text” to "Numeric”. German.Working with attributes -86- Call the Modeller once again. .: Alias was not found as a consolidated element. Consolidate "Color” and "Product Manager” in it again. Create another element with the name "Language”. Product Manager and color are displayed.

change the cube to attribute cube and select the attribute "German” under "#_Month”. Choose the settings to get the following screen: Note that you can now select the attributes in the list box at the bottom. Check "Show element selection on double-click”. you can use the feature to display results. and then call "Months”.Working with attributes -87- 3. Proceed as follows: Use "Paste View”. You see the result above .3 Information processing with attributes Of course. you can not only search by attributes.

. -88- Display of the language selection After the conversion to French You just learned how you can use attributes. But you can also use them to display numbers which you will see by looking at the attributes stored in unit prices. To do this. A selection menu opens. You can now set a different language. these attributes are not suitable as search criteria. call the attribute cube "#_Products” via "Paste View”. However. The data are converted immediately. and display the prices of the first five products..g. for language control. Display the product prices next.Working with attributes Now double-click "German” in cell B4. e.

Additional techniques in working with the Modeller -89- 4 Additional techniques in working with the Modeller You can create and manage not only cubes. and create an element "Comment” within the dimension "Months”.1 Working with comments 4. for example. hierarchies and attributes with the Modeller. dimensions and elements. Create "Comment” 2. 4.1 Creating comments Assume you want to add comments to your cube "Sales” to explain data elements in more detail. Open the Modeller. Convert it into a string element using the context menu: 1. Convert into a string . You can also enter additional comments or you can combine elements with calculations.1.

Proceed analogously for "Products". Selection: "Months” Selection: "Products” . -90- Select from "Months" some months and the new element "Comment".Additional techniques in working with the Modeller Create an Excel view via "Paste View”. Confirm the selection with "OK".

For reasons of compatibility with MS Excel 2000 and earlier versions Palo has retained this limitation. If you want to write a comment longer than 255 characters. Copy now just this text and try it (549 characters): . Palo functions display 255 characters in an Excel cell at a maximum.2 Display of long comments Up version MS Excel 2000 an Excel cell is limited to 255 characters. You can later display the text with the array-function PALO. It allows you to write a text at any length. you can do the following: Double-click in cell E9 opens the following window. i.Additional techniques in working with the Modeller Then the following screen is displayed: -91- 4.1.e.DATAT().

Additional techniques in working with the Modeller If you format cell E9 with "wrap text”. Copy E9 to E10 and to E11. you get two cells. This function outputs a number of strings. you get this view: -92- You can see that only the first 255 characters are displayed in E9. Execute the function as follows: Insert two blank rows below the cell in question (here E9). which can show the continuation of the comment. each of which is not longer than 255 characters. At first.DATAT to display the complete information. Change the PALO. these are empty: .DATAC function to PALO. This way.

$A9 is changed to $A10. E10 and E11. you will get three blank fields. Important: The selection must absolutely be in the sequence E9. The result can be seen in the screenshot below: . E10 and E11. The adjustment is done automatically in accordance with the sequence of selecting the cells. select the three cells E9. Click at the end of the function in the Formula Bar. and finish the input with simultaneous pressing STRG+SHIFT+ENTER (necessary to enable the array-functionality). Then $A10 automatically becomes $A9. If you select E11 to E9.Additional techniques in working with the Modeller -93- Now. Reason: In this case.

0 and are explained in detail in chapter " Working with Enterprise Rules”. operations.Additional techniques in working with the Modeller -94- You have now generated an array. If you want to cancel the array-function.e. i. . to the formula.2 Calculated elements (push rules) One way to work with calculated elements is to set up so-called server rules in the database. Open the Modeller. Here is an example: Assume that we want to create two more elements in addition to those we created in our demo database earlier: • • Turnover EURO Turnover USD You get the unit prices via the attribute "Price Per Unit”. in which such an arrayfunction was input. e. you can perform only alterations. These rules are available since Palo Version 2. Computations are done within the database – complex models with large data volumes have an impact on speed as literally millions of operations may be required to calculate the entire cube. E10 and E11 again. proceed as follows: Mark the three cells E9. 4..g. You can recognize the array by the curved brackets (braces). In such an array-function. if the entire cell-area. is marked again. which are performed outside of the cube in Excel and the results of which are then written back into the cube. Click with the mouse on the Formula Bar and then press the key-combination STRG+CAPS LOCK+ENTER: The array-functionality will be turned off. You cannot simply make changes in this array. The turnover elements with two currencies should be filled using push rules. and add two new elements to the dimension "Measures”. A good alternative is the use of push rules.

.Additional techniques in working with the Modeller -95- Create a view of the "Sales Cube” via "Paste View”. Select "Measure”. Select the elements as shown on below screen. which contains these new elements and a few of the product names. Confirm the selection with "OK”.

.Additional techniques in working with the Modeller Proceed the same way as shown above for the product page. Create a view of the attribute cube "#_Products” via "Paste View”. The result should then look as follows: -96- You already called the attribute cube "#_Products” once before in the "Information Processing with Attributes” section. Retrieve the information in the first step. Now we need this attribute as a parameter for the push rules.

-97- For Row titles select the same products as previously.Additional techniques in working with the Modeller Select the element "_Price Per Unit”. Confirm the selection with "OK”. The following screen appears: Now you get a display of the number of units and the elements (left) to be calculated. . The product prices are shown in the table on the right.

Copy the attribute "_Price Per Unit” from the view on the right (B4) into the blank column "B” (cell B9). Select the attribute cube "#_Products”.Additional techniques in working with the Modeller -98- You must now combine the information in one view. Note that you must place a checkmark in "Attribute cubes” in order to be able to select attributes. Insert a blank column to the right of column A. Also place a checkmark in "Guess Arguments”. Use the view showing Units (left) and insert a blank row below row 2. The result appears as follows: Enter the formula for the attribute "_Price Per Unit” in cell B10 utilizing the "Paste Data Function” from the Palo menu. . Enter "#_Products” in there.

Compare the formula. -99- Copy the PALO. The result appears as follows: Please note: When you work with Push Rules. it makes sense to work with base elements.Additional techniques in working with the Modeller Then the following display appears.DATAC formula from cell B10 into cells B11 to B18. and you will see that Palo has "guessed” it correctly. .

"2006" und "Budget".Additional techniques in working with the Modeller So change the selection in cells A4 to A7 correspondingly and select "Germany". "Jan". -100- The display should then appear as follows: .

One way would be to enter these into the cube.DATAC($A$1. we obviously need exchange rates.$A$2.$A10.D$9) These parameters are the coordinates. To write the results of our calculations into the database.$A$5. but we want to make it easier at this point and enter them as fixed rates in Excel.SETDATA function.DATAC formulas.SETDATA. we convert them into PALO.Additional techniques in working with the Modeller -101- When we think of currencies.SETDATA functions.$A$6.DATAC with PALO.$A$7. The columns D and E currently contain PALO. which identify the cell in the database. We can use them in the same way for the PALO. for example: =PALO. First simply replace the term PALO.DATAC formula in D10 appears as follows. .$A$4. The PALO.

SETDATA: -102- PALO. We simply multiply the number of units by the unit price and then multiply the sales turnover in Euros with the exchange rate.DATAC becomes PALO. i. This parameter describes how to calculate the two turnover elements. The Push Rule is not complex in our example. which determines how we want to split (splash) if the formula refers to a consolidated element. You can perform any type of calculation to set the content of a data cell.$A$2. for example.e. this flag is "FALSE”.SETDATA(B10*C10*$D$7.$A$4.SETDATA The second additional parameter is the Splash-parameter. The value-parameter can be a number.SETDATA requires two additional parameters which are to be added to the existing coordinates. .$A10. The entire variety of Excel functions is at your disposal. =PALO. If we work with base elements.D$9) • • The parameter value.$A$6. An instruction.False. a cell or a formula.$A$7.$A$5. could be: "Equally split the value among the subordinate elements.Additional techniques in working with the Modeller 1st Step: PALO. the value that is to be written to the database by PALO.$A$1. because nothing is to be distributed (broken down). In our case it is a formula.

$A$4.$A$5.$A$6.SETDATA(D10*$E$7.$A$7.$A10.SETDATA formulas into the following cells D11 to E18.FALSE. These ensure that the formula can be copied correctly across the entire range. .SETDATA for currency conversion is also completed by adding the two required parameters =PALO.$A$2.SETDATA is completed by adding the two required parameters.$A$1.D$9) Then copy the Palo. -103- 3rd Step: PALO.Additional techniques in working with the Modeller 2nd Step: PALO. Please pay attention to the $-characters when making changes to the SETDATA formulas.

” Of course. The result is in the database now. then do this in a separate worksheet. . If you want to determine. we assumed a fixed exchange rate. Note: The calculated elements (Turnover EUR and Turnover USD) are based on the number of units. It is displayed in the cell. these constant changes may result in automatic purchase and sales orders. For example. But you can also outsource these controls and calculations to a supervision server. Enter a number in column B. The returned value of the PALO. In the example just shown.SETDATA function is identical to the applied value. It can trigger warnings. Unintentional changing of this parameter would result in immediate changes to the calculated elements. the effects of changes in the exchange rates. you must ensure that the Push Rule is used consistently and throughout. These dependencies can result in undesired effects. and you see how the changes in "Price Per Unit” immediately affect the sales turnover columns. the "Price Per Unit” and the exchange rate. controls and documents all data entries and changes in the Enterprise spreadsheets and within the Palo-Server. take a closer look at the columns D and E. you can manage and check such automatic processes in your application. A conventional example would be stocks: "Buy at a rate of x €. The Jedox supervision server monitors. Consequently. Here is the result: -104- The price ("_Price Per Unit”) has been multiplied by the number of units and the exchange rate. This makes sure that your current cube displays the correct results.Additional techniques in working with the Modeller After copying. Similar effects would be the outcome if there were no calculation and writing back of values into the database after a change. for example. alerts and correction operations and also initiate more far-reaching workflow or calculation processes. But these rates are normally subject to constant changes.

Click "Gross Profit” in the window on the left to display the elements to be consolidated. On the other hand. Besides monthly results. you already worked with consolidation factors even if you did not know it. the number of employees may not be added up in a quarterly report. for the following task: Imagine a report that is structured variably. The value of a consolidated element is calculated as the sum of the underlying basic elements at the lowest level. Quarter1 and Quarter1 cum. There is a consolidated element "Gross Profit”. In previous versions. e. you also want to be able to select quarterly or annual results. You define an element with the factor "1” for each of the three months and total up the cost.g. when consolidating the base element Turnover and expenditures. the number of employees is largely identical each month (permanent workforce). You can also use the options which consolidation factors offer.. a multiple of the workforce would be the result. But you might want to weight the base elements differently to consider parts of multiples of base elements in a consolidated element. which were multiplied before summation with the corresponding consolidation factors of each level. The second consolidated element has the same months. an element which has to be consolidated has the factor 1 (weight=1).1 SR1. How can you take this requirement into consideration? Create two different consolidated elements per quarter (e. Normally there are no differences between these calculations except in the case that there are used rules for elements between the highest and the lowest level. Negative weightings are also possible.Additional techniques in working with the Modeller -105- 4. Consequently. which is the difference between "Turnover” (sales) and "Cost of Sales”. But each month is only allocated a share of 1/3 (factor = . which were multiplied before summation with the corresponding consolidation factors. the value of a consolidated element is calculated as the sum of the directly underlying elements.. By default. Of course.g.). The report contains key figures that represent full-time employees. for example. You can find an example in the "Sales” demo cube in the dimension "Measures”. These figures need to accumulate to get a quarterly report (consolidation factor = 1). you have cost positions. for example. Important: This is a change with Palo Server 3.3 Consolidation: calculation and factors Whenever you worked with hierarchical structures. Otherwise.

"read" and "none". N (none): No type of access permitted. cubes. The hierarchy is therefore "splash". "write". The following access rights will be used. In the same way. R (read): Permits the reading of rights objects. dimensions and dimension elements. There are users. user groups and roles. you obtain the average number of full-time employees for all three months. Consequently.333). The highest access right is expressed by "splash ". The access rights are hierarchically ordered. This will allow you to perform all normal calculations using consolidation factors. Now you have the correct number in the sum total. For all other rights objects. . but it refers only to the cell data. higher rights include the subordinate rights. 5. you can now create the other three quarters and a special year element.25 each. 5 Administration of user rights User rights regulate the access to databases. W (write): Permits the writing of rights objects. "delete". "delete" is the highest access right. As a result.Administration of user rights -106- 0. D (delete): Permits the deletion of rights objects.1 Hierarchy of rights The rights are hierarchically defined as follows: • • • • • S (splash): Exists only for the rights object "cell data". These are given rights with reference to cell data as well as to selected system operations Rights can be given to the following areas • Users • Passwords • Groups • Databases • Cubes • Dimensions • Dimension elements • Rights • Cell data • System operations (SysOp) We shall call these areas "rights objects". Higher rights include the subordinate rights automatically. which is composed of these four quarters with a consolidation factor of 0. It includes writing into consolidated cells and (indirectly) their children down to the lowest level.

#_ROLE_PROPERTIES_ and #_GROUP_PROPERTIES_ are not editable. at first. please invoke the Modeller and select an arbitrary database.2. the system database contains the 6 cubes #_USER_USER_PROPERTIES. the dimensions #_USER_PROPERTIES_. Consequently. #_USER_GROUP. "Elke" and "Franz" here. for example "Demo". Then click on the "User administration" icon: The dimensions visible on the left are editable. The dimensions of these cubes are: #_USER_ • All elements of this dimension are predetermined or created users. #_RIGHT_OBJECT_. "Bert". to which the PaloSuiteMolapService has access.Administration of user rights -107- 5. "David". The latter are shown only on the right side of the cube. Note: Spaces are not allowed in Palo user names! . In order to see the structure of the system database.1 System cubes and system dimensions The administration of users and rights takes place in the system database in system cubes and their dimensions for all databases. "Cath". • The user "admin" is always present and can neither be renamed nor deleted. #_ROLE_ROLE_PROPERTIES et #_GROUP_GROUP_PROPERTIES. Additionally create the users "Anna".2 System database 5. #_GROUP_ROLE. #_ROLE_RIGHT_OBJECT.

viewer. group. ste_users. designer and user. ste_reports. "password". "fullName". #_GROUP_ • All elements of this dimension are predetermined or created user groups. • The user group "admin" is always present and can neither be renamed nor deleted. cell data. poweruser. user info. description. #_GROUP_PROPERTIES_ • Contains the elements groupName. "Management". accountStatus und inactive. status und inactive. dimension element. dimension. "description". event processor. editor. ste_etl. password. "Employees A" and "Employees B" here. All elements of these dimensions are text elements. "Head of Sales". ste_files. #_ROLE_PROPERTIES_ • Contains the elements name. rule. Additionally create the groups "CEO". rights. description. "recent" und "prefs". sub-set view. . "accountStatus". #_ROLE_ • Contains the predetermined roles: admin (cannot be removed!). These are: user. ste_palo. ste_conns und drillthrough.Administration of user rights -108- #_USER_PROPERTIES_ • Contains the elements "userName". cube. "inactive". database. "Head of Operations". #_RIGHT_OBJECT_ • Contains all rights objects. system operations.

1 Cube #_ROLE_RIGHT_OBJECT We insert the following view: .2.2. 5.2.2 Cubes in the database "System" These cubes are now presented in the order of the allocation of rights.Administration of user rights -109- 5.

"S". "D" or. "empty" stands for the topmost right. the following rights are assigned to the roles by default: -110- A right-entry can be overwritten or edited by double clicking (e.g.Administration of user rights In a new installation. No type of access permitted. Permits the writing of rights objects. depending on the rights object. that is. with cell data. . The meaning of an empty cell depends on the respective system cube. It is also possible not to make any entry in the cell of a system cube. In the cube #_ROLE_RIGHT_OBJECT . Where the letters have the following meaning: S (splash): D (delete): W (write): R (read): N (none): Exists only for the rights object "cell data". To remove an entry). It includes writing into consolidated cells and (indirectly) their children down to the lowest level. Permits the reading of rights objects. Permits the deletion of rights objects.

Adopt the entries from the image.2. In addition. This cannot be changed. They can be adapted to your needs. these include also the right to delete cubes. the user "admin" cannot be deleted and his rights are firmly predetermined. The user is allocated to a group by putting "1" into the cell. The user "admin" is firmly anchored in the system and cannot be altered. The roles "poweruser”. . The "viewer" is allowed to read data and to see the objects with "R” entry. Besides writing and reading rights. Only one role can be allocated to a group. the role of "admin" has the highest access rights at her disposal: "delete" or "splash" respectively. 5.2.Administration of user rights -111- With all rights objects.2 Cube #_GROUP_ROLE Build the following view of the cube #_GROUP_ROLE: Here it is recorded which role a group gets. The user "admin" belongs to the group "admin". The "poweruser" has far-reaching standard editing rights. That is. Also he is allowed to create Rules and Subsets and to see the objects with "R” entry. The "editor" is allowed to enter data and in addition to view data. dimensions and elements. "editor” and "viewer” have standard predetermined rights at first. further roles can be created.

5.g. The entries of the following 3 system cubes have no effect on user rights.2.2. A user can be a member of several groups. passwords. roles or groups.2.2. Enter the passwords of the newly created users: .Administration of user rights -112- 5. Then he is equipped with the highest rights resultant from it.4 Cube #_USER_USER_PROPERTIES Create the following view of the cube #_USER_USER_PROPERTIES: This cube contains some user info. e.3 Cube #_USER_GROUP Create the following view of the cube #_USER_GROUP: Here it is listed to which group a user belongs. They serve mainly the password entries and offer the possibility to deactivate users. Adopt the entries from the image.

2.5 Cube #_ ROLE_ROLE_PROPERTIES Create the following view of the cube #_ROLE_ROLE_PROPERTIES: This cube contains some role info. This information has validity for all databases. granted by the system database. the system-cubes can be divided into two categories: The system-cubes in the system-database grant the rights to all databases administered by the PaloSuiteMolapService (general rights = role area). can be restricted further (but not extended!) for each single database.Administration of user rights -113- 5. The system-cubes in the respective database can restrict the access rights of this database further (individual database rights = data area).6 Cube #_ GROUP_GROUP_PROPERTIES Create the following view of the cube #_GROUP_GROUP_PROPERTIES: This cube contains group info. Groups or Roles of the Palo Server to inactive. This offers the possibility to switch specific Users. groups and roles are administered system wide.2. . The last 3 views have the column "inactive". This is very helpful to disable a login during maintenance activity like ETL jobs.2.2. Users. 5. Consequently. These rights.

additionally create the cube "Operations" with the same dimensions as in the cube "Sales". are still obtained from the system-database! Entries in this cube are now explained using examples.2. choose the database "Demo" and the "User management cubes": .2.1 Cube #_GROUP_CUBE_DATA In the "Paste View".Administration of user rights -114- 5. In the database "Demo". for example. to the cube itself.3. So far.3 Restriction of rights in single databases The main cubes for rights restriction in each database are • #_GROUP_CUBE_DATA • #_GROUP_DIMENSION_DATA_<name of the dimension> • #_CONFIGURATION • #_GROUP_CELL_DATA Important: These restrictions refer to the "cell data"-rights object only – rights granted. "Market" and "Operations" in the demo-database. user David has been given the rights to create and delete cubes (David is a member of the management group and "Management" has the role of "poweruser"). Then we have the cubes "Sales". 5.

-115- 5. If an element has two parents. Feb and Mar. the group "Management" has only read-access to the cube "Operations".Administration of user rights By the entry R (as seen on the right). The following access rules apply: The children of a consolidated element have the same access rights as their parent unless another right has been assigned to them explicitly. R. the higher right rules. This cube can restrict the right given by the role-area.2. The previous reading-rights for the group "Employees B" fort he cube "Sales" are withdrawn.1 to Jan. This refers to the cube cells only.3.2 Cube #_GROUP_DIMENSION_DATA_<Name of dimension> This system cube contains the link of the system dimensions #_GROUP_ and a dimension within a database. Example A – further restrictions: The group "Employees B" is not allowed to read the cell data of Qtr. N and blank. The cell can contain the values D. W. . 1: The entry N is inherited from Qrt. David is still allowed to delete or empty the "Operations"-cube on the Modeller-level! The previous writing-rights for the group "Employees A" for the cubes "Sales" and "Operations" are withdrawn. but it cannot expand the given right. As a "poweruser".

just read. Jan. you can specify whether someone who has not the right to see certain cell entries has the permission to see the corresponding element name or not.3 Cube #_CONFIGURATION In this system cube.2.3. members of the group "Employees B" can neither delete nor write. Example: The group "Employees B" has not the right to see the cell entries of Qtr. because this entry cannot extend the rights given to the "viewer"-role. Jan. 5. In the view itself will then only the corresponding cell entries not appear.Administration of user rights Example B – "Non-extension" of rights: -116- By the entry D in the screen on the left. 1. 1. Feb and Mar when creating a view and can use them for the view. . Feb and Mar. Without a change in the cube # _CONFIGURATION a member of the group Employees B can see the element names QTR.

Administration of user rights -117- In order for hiding an element name if it has the entry N. Then we enter "Y" under HideElements: Thereafter. elements without cell-read permissions are hidden during view creation: . we go on the button "User management cubes" and select the cube #_CONFIGURATION.

but not be extended.2.3.4 Cube #_GROUP_CELL_DATA Such a system cube is created for all cubes of the database. Result: .Administration of user rights -118- 5. Example: The group "designer" is not allowed to see the cells [cumulatives of product sales/Europe/2009/Actuals/Year]. In the cube #_GROUP_CELL_DATA_Sales you can enter for each user group the right to every single cell of the cube Sales. A registered right refers specifically to the cell for which it is entered. To inherit cell based right use the Palo Rules functionality. Here exists no inheritance. Existing rights can be limited.

"splash” rights make it possible to change cell data of consolidated cells directly. Consolidated Elements Super ordinate elements pass on rights to subordinate ones as long as the latter do not have any rights defined of their own. then he may not. The splash right (S) is only assigned in the #_ROLE_RIGHT_OBJECT cube and not in #_GROUP_CUBE_DATA or #_GROUP_DIMENSION_DATA_<Name of dimension>. we have the dimension element "Year". as long as a user has writing rights for the current consolidation level and otherwise splash rights. a "none” right in the cube #_GROUP_DIMENSION_DATA_ <Name of dimension> does not influence the calculation of dependent contents in consolidated cells. writing in consolidated elements). Rule: W+Splash breaks R: Members of the group "Management" no longer have the right to splash for the consolidated elements "Qtr 1" up to "Qtr 4”. Splashing You can only splash if the role is set to "S" for cell data and there are writing rights (W) for #_GROUP_CUBE_DATA and #_GROUP_DIMENSION_DATA_<Name of dimension>. because they only have reading-rights for them.4 Additional rules Effects of Rights on Calculations Rights of any kind never affect computations or consolidations. Within the group "Management". The data-cells addressed by these elements will therefore be modified by the splash command. which is consolidated from "Jan" to "Dec".Administration of user rights -119- 5. For example.e. Therefore he has the right to splash all cell contents. Rule: R+Splash = no right to splash.2. Consequently. this is ignored during the splash procedure. . Any possible "none” rights below "splash” rights will be respected. If an element below a splashed element has "read” rights. In this case. Consequently. If he only has reading rights for the current consolidation level. "splash” rights are dominant in the sense that the rights of children are being ignored. would be factored in. But splash rights do not dominate for pure reading rights. he may splash. the combination of splash and the rights of the consolidated element in question is the deciding factor.. however. that the splash command can be executed. irrespective of which rights are granted for the elements "Jan" to "Dec". Example User "David" is a member of the group "Management" and thus a poweruser. writing-rights for the group "Management" for the element "Year" have the effect. At splashing (i. The right "N” below that. In other words.

Then. cannot log in any more. because he belongs to a group with a role. (Please undo all changes of role-assignments. if he is not a member of a group with a role. David. Therefore he has the right to splash all cell contents. only the following rule applies to attribute-dimensions and -cubes: Only those who have the right to modify dimension elements also have the right to add or delete attribute-fields and to write attribute-cube data. Example A: David belongs to the groups "Management" (poweruser) and "Employees B" (viewer). Users without a group role: A user cannot log in. who is a member of these groups. Then. which have possibly been performed in this example!) . Now he is removed from the group "Management" by the "administrator". During David’s session. (Please undo all changes of role-assignments. which have possibly been performed in this example!) Example B: David. Modifying rights during a session The server responds dynamically.Administration of user rights -120- Rights for Attributes (Attribute-Dimension. who is a member of the group "Management" as well as of the group "Employees B". Example A: The assignment of roles of "Management" and "Employees A" are temporarily removed. which influence the rights of a user. Example B: For the group "Management". has logged in as a user. the groups have the roles given in braces. PALO will deny the access. In particular. Thereby he has the highest rights from both groups which are the rights as a "poweruser". At the time David logs in. change during a session. He only remains a member of the group "Employees B". Access as "poweruser" will immediately be deprived of David. so that both groups don’t have any role any more. With the next inquiry by David. David belongs to the groups "Management" and "Employees B". He can only continue his work as a "Viewer". David can log in again. the role-assignments of the two groups are cancelled. rights-cubes shall not be created for the attribute-dimensions nor shall the attribute-cubes be listed in the system-dimension #_CUBE_. Elements. the role "poweruser" is assigned again. Data) Independent of what has been said so far. if allocations.

Select "Register new server”. he should only be able to work in line with his rights assigned. you must ensure that a user has to log on with his username and password. . Click the "Palo Wizard” in Palo. "elke1" is the password.1 Creating Server Entries for New Users Check the user rights function for "Elke”. A message appears stating that the test was successful. Afterward. In other words. 5. localhost. 7777.2. and confirm by clicking "Next”. "Elke" is the username.2. Enter the following information in the next dialog: "Test_Elke".5 Applying user rights The setup of users and managing their rights is completed with that.Administration of user rights -121- 5.5. Now you have to apply them. Click "Test connection”.

Pay special attention to upper and lower case letters. When you now return to the Modeller. Click the icon for "Disconnect”. Then you can click "Connect”. Then click "Finish”. The Palo Wizard closes when you click "OK”. you might not have spelled the user names and/or password in the same form as stored in Palo. Confirm the message with "OK”. you see that "Test_Elke” was created. The display changes to "Connect”. You receive confirmation that the server has been registered. .Administration of user rights -122- If you received an error message.

because of the rights restricted through "#_GROUP_CUBE_DATA”. she is only allowed to write to the base-cell data of the cube "Market". Open the "Paste View” dialog again.Administration of user rights An entry menu appears. Please note: Elke can view the structures of all cubes. but not to modify. the values in the cube "Operations" and she is not allowed to view the values in the cube "Sales". However. She is allowed to view. -123- Enter "Elke” as user name and "elke1” as password. .

Writing rights for cell data permit writing of any number in principle. . but instead as "delete”. The original entry "100" is retained.Administration of user rights Compare the two displays for the cubes "Sales” and "Market”. But there is one exception. and that is the number "0”. because "0” means "delete” and editors do not have the right to delete. -124- No rights in cube "Sales" Writing-rights for base cells in cube "Market" Note: A special feature of writing rights must be noted in this context. This does not work. Example: Elke tries to replace her entry "100" with "0". Entry of zero is not interpreted as a number in this case. But editors do not have "delete” rights. Entry of "0" Entry is rejected with an error message. This results in an error message.

2 Removing server entries for users You just saw how you as administrator can create a user with the "Palo Wizard”. when an employee leaves the company you delete his access by removing the server entry. you can also delete the user. .5. For example.Administration of user rights -125- 5. Call the "Palo Wizard” to do this.2. Confirm your selection by clicking "Finish”. Then the system asks you to confirm the deletion by clicking "OK”. Palo then reports: "Server successfully unregistered”. Of course. Select "Unregister the selected server” entry under "Server Management”. Set "Test_Elke” as server.

Palo Enterprise Rules enhance this functionality and enable you to execute complex calculations (division/multiplication. or alternatively. This target area is defined by dimension elements. which describe the same or an overlapping target area.Working with enterprise rules -126- 6 Working with enterprise rules 6. You can get to the Rule Editor via the context menu after a right-click on the cube in the Modeller. logical and various functions). The general syntax of Rules is [Target] = f[Source] i.1 General information on rules In previous Palo versions. you can click on the symbol after you have selected a cube. subsequent rules. This means that specific rules have to be stored before general rules. Elements are not to be listed. Whereas [Target] is the area in the cube that is to be calculated using rules. are no longer effective. IMPORTANT: If a target area is defined in a rule. .e. if a rule is to apply to all dimension elements. Rules are mapped out per cube. the consolidation factor of elements was used to carry out simple calculations – this included additions and subtractions. [Target] is a function of [Source].

The other years are not effected by this rule.2 Creating a simple rule Simplified example using the Sales cube of the database "Demo": RULE 1 ['2009'] = 123 The target area is the year 2009 of the dimension "Years”. the rule applies in the other dimensions to all elements. Open the Rule Editor: For a new rule click on "NEW" . Since for all other dimensions the elements were omitted.Working with enterprise rules Open the Rule Editor -127- 6. This rule has the effect that all cells in the cube now contain the value 123 in the year 2009.

you confirm the rule. You can check whether the Rule Editor (Advanced) accepts your inputs. select "Years" and "2009" and for Source enter the number "123". Now create a view in order to check the result. Place ”Products” in the Row titles and select all products.Working with enterprise rules The Rule Editor (Advanced) opens: -128- For Target. by clicking on the button "Parse". . Organize the view in such a way that the years 2006 up to 2009 become column headers. By clicking on OK .

The values currently displayed in this view are computed using the rule. .Working with enterprise rules -129- Some comments on this view: The values in column E are retrieved from the corresponding cube-cell by the PALO. but the values stored in the data-base remain zero (i. If you delete the rule. For 2009. the displayed values are not being written back to the data-base (Which is the case with entries made in cells!). also shows that consolidated values are not computed: The rule simply overwrites anything returned by PALO.DATAC() from the database. using the rule. the corresponding original value from the database will be displayed again.DATAC()-function.e. The current computation of this view. this value was zero throughout.

'Desktop L'] = ['2006']*1.'Products':'Desktop L'] = ['Years':'2006']*1. @ is used only for markers (this is described in chapter "Markers for Expressions") Remove is the switch to delete the operator on the left side of the "…" button. This rule has the effect.1 .3 Operators of the Rule-Editor You can select the operator with the button "…". You will then receive the following selection: The operators which are not yet known from Excel will now be described: == is equal to (in Excel = is used) != is not equal (in Excel <> is used) These operators may be used in the IF function.4 Restricting the target area In the next step. element names can be submitted along with dimension name.1 The target area is the year 2009 of the dimension "Years" of the product "Desktop L". as in the example "Desktop L". Besides a short notation. You can change the order of execution using the arrows in the rule editor. are not affected by this rule. "Desktop L” multiplied by 1. please create a rule that will show for "Desktop L" in the year 2009 a value that is 10% higher than in 2006.1 Long form: ['Years':'2009'.'Desktop L'] = ['2006']*1. Rule 2 will only have an impact if you place it in front of the more general rule for 2009. IMPORTANT: Since you already defined the target area for the entire year of 2009 in the previous rule (Rule 1).1. that in 2009 all "Desktop L" cells of this cube show the 2006 value multiplied by 1. it does not have to be repeated in the source area. If the target area contains a part of the source area. The target area is "2009” and "Desktop L". The other years and products respectively. The function for the source is "2006”. Short form: ['2009'.Working with enterprise rules -130- 6. 6. The conclusion is the following rule (RULE 2): ['2009'.1.

Working with enterprise rules -131- This makes sense only when the same element name occurs under several dimensions. . Enter 1. You can select the operator with the button "…".1 as factor and then click on OK. By clicking on the star (red arrow) more address-fields become visible. which is often the case with "Total". Select the asterisk for multiplication.

previous rule-results would have been overwritten with 123. . however.1 = 700375.Working with enterprise rules In order to get the correct ordering.43 * 1. the value 123 is overwritten with the value 636705. So.97 in cell E11. the new rule must be placed before the rule ['2009'] = 123. Possible prior consolidations will be consistently overwritten by the rules without any error message (cells E9 and E10). -132- Now please verify the result in your view: If the rule ['2009'] = 123 would be on top.

the consolidated elements will be aggregated as usual.1 Now compute the table anew. the target area may be defined as follows: Vice versa.e. Since the target area is now reduced to base elements.5 Restricting the target area to an element type If a rule is to apply to base elements only (consolidated elements will be aggregated as usual). . i. [Target]=N: f[Source] [Target]=C: f[Source] ['2009'] = N:123 ['2009'. it is also possible to restrict the target area to consolidated elements.'Desktop L'] = N:['2006'] * 1.Working with enterprise rules -133- 6. refresh your table: You can also achieve this modification in the Rule Editor (Advanced) by selecting "Base Elements" in the list box "Consolidation priority" (red arrow). Please change both rules as follows and recalculate.

6 Drill Palo Rule The command "Drill Palo Rule" is available with right-click on the cell E9. . So you get the following Rule Info: If you enter this command on a cell without a rule. then you get the following message: 6.7 Deactivation in the case of references to removed elements Rules with element entries that were removed. will only be disabled and are still available on the server for manual correction.Working with enterprise rules -134- 6.

"2006".DATA as Source: To check it. Now please create the following rule for the "Sales2" cube: The ‚Budget’-values for 2008 of the cube Sales2 should be twice as large as the ‚Actual’-values for 2006 of the cube Sales: ['2008'.!'Months'."Actual".!'Products'. if we select PALO."Sales".8 Accessing a different cube via rule For the following example.'Budget'] =PALO. please create a cube with the name "Sales2" (same dimensions and order of dimensions as in "Sales").Working with enterprise rules -135- 6.!'Regions'.!'Measures')*2 The Rule Editor (Advanced) assists us here also. create the following view: .DATA("Demo".

6.1 Advantages of markers By using markers.'Turnover'] In this case. . The decision to use markers is not a global one.'Turnover'.'Turnover'].9. Creating. the rule is calculated only if at least one of the marked arguments on the right side is different from 0.'Turnover'] to ['2005'.'Cola']. 6. whose result is always 0 if all marked arguments have the value 0. If too many markers are used. 'Turnover'] = N: [['2003'. two markers are defined. but also the following restriction: For correct results. In this case.'Turnover'. 6.'Net Sales']] ).9 Usage of markers Markers are labels in rules. If one of the source-areas involved shall be labeled with a marker. i. but individual rules can get markers to accelerate their calculation.'Net Sales']) exactly matches the number of specified. which applies to the entire cube. set in order to process performance-critical rules preferentially. marked dimensions ( => [['Invoiced'. It is possible to define several markers: ['2005'. performance-critical rules will be processed preferentially.9. 'Cola'] to ['2005'. too much memory will be consumed. In Palo. only those rules may be provided with markers. Markers will only work if a) the source data are fetched from the target cube or from a cube with the same structure. This means that the value [ 'turnover'] is calculated only for those basic cells.9.'Turnover']] + [['2004'. thereby destroying the performance gain (so called over marking). The result is a massive acceleration. Markers can only be defined for N:Rules respectively in rules with markers are only computed the base elements.3 How are markers defined? Ordinarily. and b) the number of defined Target-dimensions for the rule (like ['ToBeInvoiced'.2 Disadvantages of markers If markers are used. modifying and deleting rules with markers takes more time than it would take without markers. a N:Rule is usually defined as follows: ['Turnover'] = N: ['Quantity'] * ['Price'] Now. It can happen. If "Quantity" should get a marker. One marker from ['2003'.e. (This makes sense.'Cola']] + ['2004'. that more dimensions are specified in the marker than in the target area: ['2005'. the marker will be restricted correspondingly. All the basic cells with a value of 0 will be ignored. markers are defined within the rule.Working with enterprise rules -136- 6.'Turnover'] and one marker from ['2004'. from ['2003'. the pair of double-braces "[[" "]]" is used instead of the pair "[" "]". since with a quantity of 0 the turnover will also be 0).'Turnover'] to ['2005'.'Turnover'] = N: [['2003'. Important note: Accelerated calculation of marker-Rules is achieved in these Rules shall be calculated based only on those cells whose value is not 0 (zero).'Turnover']] In this case. 'Turnover'. where the value of [ 'quantity'] is not 0. one writes: ['Turnover'] = N: [['Quantity']] * ['Price'] This defines a marker from ['Quantity'] to ['Turnover']. the initial loading of the databases can be slowed down.

'Turnover') In this case.MARKER() Only constants and variables can be used as arguments for PALO. '2003').MARKER("Database".DATA("Database".MID(!'Year'. append "@" PALO.MARKER(…) * 3) This is allowed.4). Example: ['2005'."Planning-cube". 'Turnover'] of the planning-cube to ['2005'.'Turnover') It defines the marker from ['Mr.'2004'. 6. 'Turnover'] in the Planning-cube to ['2005'.MARKER("Database".'Turnover']."Planning-cube"."Planning-cube". 'Mr. PALO.MARKER().4).'Mr. 'AllYears%'. '2004'.MARKER("Database". Miller'. IF (['Price'] > 10.'Turnover'] = N: PALO. because the IF-expression does occur in the argument of the marker. In case that the marker-cube has additional dimensions. It follows an example with the name of the planner.'Turnover'] = N: IF (['Price']>10.MARKER(…) * 2. you can. the target area can be specified without any restrictions or it can be restricted by specifying a base element: ['Turnover'] = N: PALO. 'Turnover') This is not allowed.5 Markers for expressions If you wish to mark expressions (Formulas/Functions). because the IF-expression does not occur in the argument of the marker.'Turnover'] is defined. 'Turnover'] = N: PALO. PALO.'2004'.MID(!'Year'. General expressions are not allowed. Miller'.'Turnover') @ PALO.1. these have to be specified with constants."Planning-cube". '2004'.9.Working with enterprise rules -137- It is also possible to define markers for entire cubes. 'Turnover'] = N: PALO. a marker from ['2004'.'Turnover'] = N: PALO. . The following rule gives an example: ['2005'.MARKER(…."Planning-cube".'Turnover'] = N: PALO.9. a marker from [all children of 'AllYears%'. 'Turnover') 6. 'Turnover') or ['2005'. Miller'. 'Mr.DATA("Database". Miller: ['2005'.DATA(). for example.'Turnover') In this case.MARKER("Database".'Turnover'] is defined.'Turnover'] = N: PALO. The simplest case is the case in which both cubes have the same dimensions: ['2005'. ['2005'.1.MARKER("Database".4 Arguments of PALO."Planning-cube". Miller'.MARKER() to PALO. Mr.'Turnover'] in the Planning-cube to ['2005'."Planning-cube". If the marker-cube has fewer dimensions than the target cube.'Turnover') Here you can define a marker as follows: ['2005'.

this rule will be used. If a consolidated cell is concerned and if there exist a base cell in the set of base cells of the consolidation. The rule applies to both base elements and also consolidated elements.6 Processing of the rules In case that more than one rule is defined in a cube. In this case. we will use examples to describe a few rules for the Palo database Demo2. 6. the first fitting rule will be used as value of the marked base cells. the marker-consolidation-algorithm will be used.com/en/downloads/Palo-Downloads-current-version/further-palo-downloads.jedox.1 Example Rule 1 The following rule is to calculate the variance between act and bud in per cent. You can download the database from http://www. the rules will be processed as follows: Is the cell to be calculated a base cell.10. ['variance%'] = (['variance'] / ['bud']) * 100 Below a test view with the results of Rule 1 in column E: . for which an N:Rule with marker fits. only cells which have been marked with a marker will be used for consolidation. the first this cell matching rule is used.Working with enterprise rules -138- 6. which isn't a N-Rule.html. Target area is the element "variance%” in dimension "opstmt_type".9. irrespective of the presence of markers in that rule. Its result is the value of the base cell. In all other cases.10 Examples of rules using the Palo database Demo2 In the following section. 6. Its result is the value of the consolidated cell. However. the standard algorithm is used. Is the cell to be calculated a consolidated cell and exists a matching rule.

['as%ofSales'] = (['localcurr'] / ['A00140'. The element "as%ofSales” is included in dimension "opstmt_curr”.'localcurr']) * 100 Below a view for testing purposes with the result of Rule 2 in column C: .Working with enterprise rules -139- 6.2 Example rule 2 Rule 2 puts the P&L Report positions into a percentile ratio to the turnover (Position "A00140").10.

"CURRENCY".!'opstmt_entity')."#_opstmt_entity". PALO. The rule converts "localcurr" values into Euros (on the basis of exchange rates stored in the "currency" cube).DATA("Demo2"."local currency". You will find sample exchange rates in the month "06” of the year 2007. The currency applicable to the corporation is stored in the attribute "local currency" of the dimension "opstmt_entity". whereas one of the parameters is defined by another PALO.DATA formulas are represented in different colors: ['EUR'] = N:['localcurr'] * PALO. as it contains nested PALO.DATA("Demo2". The PALO.DATA formulas. Here the results of the exchange rate calculation in column C: .3 Example rule 3 Rule 3 is somewhat more complicated.!'opstmt_month') The outer PALO.DATA formula to obtain the currency sign contained in the attribute cube "#_opstmt_entity”.10.DATA-formula is retrieving the exchange rate from the cube "currency". !'opstmt_year'.Working with enterprise rules -140- 6.

in the dimension "opstmt_year".'localcurr']) * 100 .4 Example rule 4 The 4th rule fills the elements with values depicting the variation of 2 years in percentage – example VAR_08-07% . The rule for the variation VAR_08-07% as follows: ['VAR_08-07%'] = (['VAR_08-07'.'localcurr'] / ['2008'.10.Working with enterprise rules -141- 6.

otherwise FALSE is returned. Returns the cosine of the argument which is in radians. The absolute value of a number is the number without its sign. AND(Expression1.g. expression2).Working with enterprise rules -142- 6. Returns the character specified by a number.11 Supported functions for rules Functions supported by the Server are listed under the API-Functions.: 1. 2. e. If both expressions are true. Converts a string to a date. Inverse tangents function. Please find below a summary of the functions with a brief description: ABS ACOS ADD AND ASIN ATAN AVERAGE CEILING CHAR CLEAN CODE CONCATENATE CONTINUE COS COUNT DATE DATEFORMAT DATEVALUE DEL DIV Returns the absolute value of a number. Removes all nonprintable characters from a string.1970 00:00:00 = 0. Return value in radians. then TRUE. Joins 2 strings together. Returns the sum of the two arguments.1. Inverse sine function. Returns the average of its arguments.1970 00:00:00 = 86400 (= 24h * 60min * 60sec). Return value in radians. If a rule evaluates to CONTINUE then that rule is skipped and search for valid rule is continued.1. Inverse cosine function. Rounds a number to the nearest integer or to the nearest multiple of significance. Converts date (serial number) to date in text format. Please open your browser and enter "localhost:7777/api”. Returns the code number of the first character in the string argument.1.1970 as start time and have seconds as unit. Return value in radians. Returns the second argument subtracted from the first argument Returns the quotient and remainder of the first value divided by the second . The functions are listed in the API documentation under /rule/functions Palo Server Rules have a time system with 1. Returns the number of values provided. Returns the serial number of a particular date.

Converts all uppercase letters in a text string to lowercase. are exactly equal. Both arguments must be of the same type which can be double or string. Returns the number of characters in a text string. Both arguments must be of the same type which can be double or string. Rounds number down. based on the number of characters you specify. Checks if first argument is less than the second. In this case. GT IF INT ISERROR LAST LE LEFT LEN LN LOG LOG10 LOWER LT MAX MID . toward zero Checks if first argument is greater than or equal to the second. the third parameter is returned. Returns the base-10 logarithm of the argument. Rounds a number down to the nearest integer. which can be of type string or double. Returns the maximum value of its arguments. Checks if first argument is less than or equal to the second.Working with enterprise rules -143- EQ EVEN EXACT EXP FACT FIRST FLOOR GE Checks if the two arguments. Returns the factorial of a number Returns first of its arguments. FALSE otherwise. Returns a specific number of characters from a text string. the second parameter is returned. Returns the logarithm of a number to the base specified. based on the number of characters specified. Both arguments must be of the same type which can be double or string. Checks if first argument is greater than the second. Returns last of its arguments. if the first parameter is TRUE. Returns the first character or characters in a text string. starting at the position you specify. Case-Sensitive Returns e raised to the power of number applied. Otherwise. Returns number rounded up to the nearest even integer Compares two text strings and returns TRUE if they are exactly the same. IF checks. Returns the natural logarithm of the integer argument. ISERROR returns TRUE if the expression cannot be evaluated or the evaluation isn’t a string or a numeric value. Both arguments must be of the same type which can be double or string.

EPARENTCOUNT PALO. results in 0 or 1 Retrieves the name of the element at the specified position (First Position is 1) Retrieves the name of the succeeding element of a dimension element Retrieves the name of the n’th parent of the specified element Retrieves the number of consolidated elements which contain the specified element. The result has the same sign as divisor. Returns the arithmetic product of the two arguments. Returns number rounded up to the nearest odd integer. Returns True if not equal. otherwise FALSE is returned. Returns the remainder after number is divided by divisor.EPARENT PALO.Working with enterprise rules MIN MOD MUL NE NOT NOW ODD OR PALO.ENEXT PALO. Checks if a consolidated element contains the specified element.EFIRST PALO. Checks if first argument is equal to the second. expression2). Retrieves the value of the specified element from the cube Retrieves the name of the specified child element Retrieves the number of children in the specified consolidated element Retrieves the amount of dimension elements in the specified dimension Retrieves the first element in the specified child dimension Retrieves the indention level of the specified element Retrieves the position of the specified dimension element Checks.DATA PALO.ECHILDCOUNT PALO.EISCHILD Returns the minimum value of its arguments.ECOUNT PALO.EINDEX PALO. then TRUE. Retrieves the name of the n dimension in a specified hypercube.CUBEDIMENSION PALO. If at least one expression is true. It returns 0 or 1.ESIBLING .ELEVEL PALO.ECHILD PALO.ENAME PALO.EINDENT PALO.EPREV PALO. whether a consolidated element contains a specified base element. -144- OR(Expression1. Returns the serial number of the current date and time. NOT(Boolean expression): Returns the logical inversion of the Boolean expression back. Retrieves the name of the preceding element of a dimension element Retrieves the name of the specified sibling th PALO.

"Text") returns 1 (TRUE). e. Find_text is the text you want to find. Returns the tangent of the given angle Removes spaces from text .g. Retrieves the type of the specified element (numeric. Returns the sign of a number.MARKER PI POWER PROPER QUOTIENT RAND RANDBETWEEN REPLACE REPT RIGHT ROUND SEARCH SIGN SIN SQRT STET STR SUBSTITUTE SUM TAN TRIM Returns the level number of the highest element in the consolidation hierarchy of a dimension.ETOPLEVEL PALO. based on the number of characters specified. string or consolidated) Returns the consolidation weight of a specified component of an element. Converts all other letters to lowercase Returns the integer portion of a division Returns a random number between 0 and 1 Returns a random number between the numbers you specify Replaces part of a text string. Adds marker for a slice. Returns sum of values provided through function arguments. based on the number of characters specified Rounds a number to a specified number of digits.Working with enterprise rules -145- PALO.ETYPE PALO. with a different text string Repeats text a given number of times Returns the last character or characters in a text string. Substitute new_text for old_text in a text string. Returns the sine of the given angle Returns a positive square root if a rule evaluates to STET. SEARCH("x".EWEIGHT PALO. then the resulting cell behave like no rule is existent for this cell Converts number to string. Finds one text value within another (not case-sensitive). Returns the value of the constant pi Returns the result of a number raised to a power Capitalizes the first letter in a text string and any other letters in text that follow any character other than a letter.

g.PICKLIST() und PALO. Example: you would like to get the Top 10 items of a list of products and you would like for the results to be within defined marginal values.SUBSET() has the following arguments: PALO. PALO."Alias2"} or "Alias". {A1} or {A1:A2}. Alias Filter . ranging from 1 (Sunday) to 7 (Saturday). The function PALO.g. You can find details on the individual functions in the Rules section of the API. by default.DFILTER(). The allowed values are 1 (equivalently: empty). The day is given as an integer. it is allowed to use a reference to the cell. Filters can have an impact on a subset in three different ways: • Restricting by removing elements • Structuring by changing the order and possibly the frequency of the elements or by directly adding elements • Indirectly by changing the behavior of other filters 7. aliases are deactivated. PALO. {"Alias1". 2 and 3. With a subset you can select elements or sets of elements and sort them according to certain criteria. Return a date_text for a given serial number in the format MM-TT-YY Returns the day of the week corresponding to a date. If empty. Products or A2 (the cell which contains the name of the dimension).SUBSET() is the basic filter.TFILTER(). which all the other filters require to display data.SUBSET() Argument Server/Database Dimension Indent Form Text Text Number Text / Array Filter name() Description e. Allowed are: PALO.1 PALO. Returns 0 if conversion fails. 7 Filter functions with subsets A subset is a set within a dimension. PALO. PALO.Filter functions with subsets TRUNC UPPER VALUE VALUEDATE WEEKDAY -146- Truncates a number to an integer by removing the fractional part of the number Converts text to uppercase Converts a text string to a number.g. Alternatively. The argument alters the numbering of the hierarchy-level. localhost/Demo or A1 (the cell which contains the entry) E.HFILTER().AFILTER(). Contains at most two aliases. e.SUBSET() The function PALO.SORT().

This affects the subset.6 Sorting filter PALO.DFILTER() The data filter acts restrictive and indirectly.3. For each element a data value is calculated.3.2 Text filter PALO.TFILTER() The text filter is restricting.3 Picklist filter PALO.1.SUBSET() as base filter.g. which means. 7. all elements below a specific element) (restricting feature).5 Data filter PALO. 7. so that they cannot be removed from the subset by any means • or make a pre-selection of elements. And further.1 Indent The use of "Indent" alters the numbering of the hierarchy-level of the elements. 7.SUBSET().3. where the hierarchy-level is specified in the filter.1.g. Further. but that they use the aliases defined in the attribute-cube instead. You can use this filter e.3. otherwise it will be dismissed (restricting). This means that the elements are being repeated until a defined number of elements has been reached (structuring). that they cannot work independently but require PALO.HFILTER() This filter is both structuring as well as restricting. The attribute filter. to eliminate elements from a selection if they don’t match a particular attribute. which also draws on attribute elements. Elements which fit a particular pattern. in connection with the text filter). alphabetically or by alias).1. .1. 7.1.2 Alias The use of "Alias" has the effect that the sorting-filters do not use the original names of the elements for their operations.1 Hierarchy filter PALO. the elements will be displayed in the order of creation. it can be sorted by the calculated data values using the sort filter (indirect). sorting by data-value.1.AFILTER() This filter has a restrictive impact.3. 7.3.SORT() With the sorting-filter one can determine the sequence of the elements in the subset (e. the rest will be eliminated from being displayed. insofar as the Alias has an indirect impact in terms of sorting (e.Filter functions with subsets -147- 7.4 Attribute filter PALO.g.1. Element attributes may be used as selective criteria. will be included. 7. If the sorting-filter is not used. The remaining filters of the subset will only be applied to the selected elements. 7. 7. the element will be kept.PICKLIST() With the pick list-filter one can • either add elements directly. It is possible to define the restrictions of a subset via the hierarchy within the dimension (e.3 Filters and their effects All the other filters are sub-functions of PALO. If the data value meets the criteria. is an independent filter that has a restrictive impact. however.g.1. it is here that you can define for the subset to revolve.1. It differs from Alias.

If the argument "Insert" has been chosen in the PALO. restricting and structuring. If PALO. only the indirect part will be active at first.g. its elements will inserted in the order of creation. because elements get merely removed from the selection.PICKLIST()-function. Here. is not relevant. The sequence is the sequence in which they are defined in the Modeller. Then the restricting filters will be applied. all indirectly operating filters are activated.1.Filter functions with subsets -148- 7. the structuring filters are applied.SORT() has been specified with arguments.4 Sequence of execution The order in which you enter the filters. All indirect characteristics act simultaneously without affecting each other. otherwise all elements of the chosen dimension are passed on. only the selected elements are passed on to the further filtering of the subset. With filters that have several characteristics. . e. only the restricting part will be executed.PICKLIST()-function.g. the revolving–arguments of the hierarchical filter will be executed. If the argument "Insert before the list" or "Insert after the list" has been chosen in the PALO. e. this instruction will be executed afterwards. Finally. The order of execution is irrelevant. however. there is an exactly defined sequence that results inevitably from the filters: • • • • • At first. If the "Preselecting" argument is chosen in the pick list-filter. then its instructions will be executed now. In the first instance. indirect and restricting. Palo will execute the filters in a predefined sequence. With filters that have several characteristics. there is a list of those elements which have not been eliminated by the previous filters. Finally.

Filter functions with subsets

-149-

7.2 Subset Editor
As of PALO-version 2.5, there is the Subset Editor. It makes it much easier to enter a subset-function than it was before, with manually defined subset-functions:

In the individual register-cards, you can simply click on the arguments or enter expressions for the individual filters. In the dialog-window "Subset Editor", you have a preview area on the right, which displays all subset-modifications at once, provided that the option "Auto" is activated. If the option "Auto" is not activated, then you can update the preview by clicking on the button shown on the right. In the lower left corner you can see the PALO.SUBSET-function and its sub-functions and how they change during the creation of a subset. With the "Paste Into"-button, the subset-function will be inserted into the Excel-table. Please mark a sufficiently large area at first, in order that the display of the subset will not get truncated! The settings in the register-cards "General" and "Sort" will always be taken over to the subset – other filters have to be activated explicitly (red arrow):

With the filters from "Hierarchy" up to "Data", check marks indicate which of these filters are activated:

Filter functions with subsets

-150-

Subset-settings can be saved only for current user or for all users. In order to do that, click on "Local Subsets" or on "Global Subsets" first. Then click on the button "New Subset", give the subset a name and finally click on "Save" to save the settings.

New Subset Delete Subset Rename Subset

Save Local Subsets: Save only for current user Global Subsets: Save for all users

If you have saved a subset, you can paste it later elsewhere. That proceeds as follows: 1. You select a sufficient large area in the spreadsheet for the subset. 2. Then you call the subset editor. 3. You select the desired database. 4. You select the dimension for which the subset is stored. 5. You select the group Local Subsets or Global Subsets. 6. Select the stored subset. 7. Paste this subset. P.S.: The button "Formula Subset" is planned for future expansions.

Filter functions with subsets

-151-

For the purpose of demonstration, we always use the data base "Demo" and the dimension "products" in the following examples. Example 1:
Subset General Settings Layout Hierarchy enumeration Optional Settings

Show parents below children

Without effect

Without effect

Example 2:
Subset General Settings Layout Hierarchy enumeration Optional Settings

Hierarchy

Without effect

Show children of hidden elements

Filter functions with subsets Example 3:
Subset General Settings Layout Hierarchy enumeration Optional Settings

-152-

Show parents below children

Level

Without effect

More examples follow in the next sub-chapter.

7.3 Details of PALO.SUBSET()
With a number of examples, we will explain, how the PALO.SUBSET()-function and the filters belonging to it are used. The principal structure of this function is:
=PALO.SUBSET(Server/Database,Dimension,Indent,Alias, Filter1,Filter2,Filter3,Filter4,Filter5,Filter6).

The filters1 to 6 represent the already mentioned filter functions: • • • • • • PALO.HFILTER (Hierarchies) PALO.TFILTER (Texts) PALO.PICKLIST (manual list of elements) PALO.AFILTER (Attributes) PALO.DFILTER (Data, e.g. all values) PALO.SORT (Sorting)

Filter functions with subsets

-153-

PALO.SUBSET() is an array-function which means, that you have to copy it into a cell area after you have created it and then you must activate the array-functionality. Make sure that the cell area includes enough cells to display all elements of the subset. In order to create a subset without the help of the Subset Editor, proceed as follows: 1. 2. 3. 4. 5. Create the function with the function-assistant of Excel. Copy the function to the area, in which the subset shall be displayed. Mark this area. In the formula bar, click behind the function. Then press CTRL+SHIFT+ENTER, in order to activate the array-functionality. The key combination CTRL+CAPSLOCK+ENTER deactivates the array-functionality.

Below you can see a base-subset. If no sorting-filter is specified, elements will be displayed in the order of creation. Take a look at the structure of the function in the formula bar. There you can see the basefilter that is the pure Subset part: =PALO.SUBSET(Server/Database,Dimension,Indent,Alias). In this example, the "Alias" argument is left empty.

the array function must extend over three columns: .3.1 Indent In order that the indent-information gets displayed.Filter functions with subsets -154- 7.

Filter functions with subsets

-155-

Depending on the argument 1, 2 or 3, a different hierarchy-numbering will be used. It affects the values in the indent column. For the filter-displays themselves, the indent argument only takes effect, if the hierarchy-level has been specified in a subset-filter.

Indent 1: With indent 1 (or empty), the hierarchy-numbering of the elements is: 3, 2, 1 In general: The highest hierarchy-level gets the number 1, the second highest 2 and so on. Indent 2: With indent 2, the hierarchy-numbering of the elements is: 0,1, 2 In general: Elements in the lowest hierarchy-level(base elements) get the number 0, the number is incremented by 1, for every step up in the hierarchy. Indent 3: With indent 3, the hierarchy-numbering of the elements is: 2, 1, 0 In general: The highest hierarchy-level get the number 0, the second highest 1 and so on.

Filter functions with subsets

-156-

7.3.2 Alias
So far, you have created a subset without utilizing the argument "Alias”. Now we would like to supplement the subset with Alias and compare the effect. To this end, we create the following subset in cell C9: =PALO.SUBSET($A$1,$C$2,$C$5) Copy this function into the area C9:C25 and then activate the array-functionality (Ctrl+Shift+Enter). Enter "Alias" into cell E1 and "German" into cell E2. Copy the area C9:C25 to the area E9:E25. Deactivate the arrayfunctionality for the area E9:E25 (Ctrl+Capslock+Enter), then mark E9. In the formula bar, click inside the PALO.SUBSET()-function. Now click on the function-assistant. It opens and you can now supplement the entry for "Alias" with $E$2. Confirm the changes with "OK". If you want to make the aliases visible, you must extend the return-area of the array-function to two columns.

Therefore, copy this function into the area E9:F25. Leave the area marked and click in the formula bar. Then activate the array-functionality for this area by pressing Ctrl+Shift+Enter.

When using "Alias", the following applies: The Alias impacts the Text Filter and the Sort Filter indirectly. It will be applied to the Text Filter automatically. In regards to the Sort Filter, a sort by Aliases can be activated separately. In other words: Aliases will not be displayed directly, but will only be used as sort criteria. In case you would like to see the Aliases, you must extend the output area of the matrix formula to 2 columns. Two attributes, which function as Aliases, may be specified at a maximum. In that case, the second attribute will be searched first. In case the corresponding cell in the attribute cube is empty, the first attribute will be searched. Should that cell be empty as well, the original name of the element will be used instead.

Filter functions with subsets

-157-

Let’s update our demo-application at first: We already have created the attributes "German", "English" and "French" for the dimension "Months". As well as the attribute "Color" for the dimension "Products" (see chapter: "Working with Attributes"). Create the following view and supplement missing entries for our further examples:

At first, we will sort using the attributes of the dimension "Months".

Filter functions with subsets

-158-

The array-function for the table displayed above is:
C9:C38: {=PALO.SUBSET($A$1,$C$2,$C$5)} E9:F25: {=PALO.SUBSET($A$1,$C$2,$C$5,$E$2)} H9:I25: {=PALO.SUBSET($A$1,$C$2,$C$5,$H$2,PALO.SORT(,3))} K9:L25: {=PALO.SUBSET($A$1,$C$2,$C$5,$K$2,PALO.SORT(,3))} N9:O25 {=PALO.SUBSET($A$1,$C$2,$C$5,$N$2,PALO.SORT(,3),PALO.TFILTER({"a*","j*","s*","t*"}))}

In order to get the aliases displayed, the array-function has to be entered in two columns. The comparison of two different aliases shows the changes in the sorting. Because the sorting-argument is "3=ALIAS" in each case, column H is sorted using German names, column K is sorted using English names and column N is sorted using French names. Sorting using ASCII-Code: In column L you can see, that the sorting is done using ASCII-code, i.e. upper case letters precede lower case letters! In the current example you can also see, how the usage of "Alias" affects the TFilter. As you can see, the elements "Qtr.*" and "year", for example, are kept, because their aliases are respectively "trimestre" and "année". These elements are correctly recognized by the Text-Filter.

Filter functions with subsets

-159-

7.3.3 Filter functions
You have learned how the basis function of the subset works. Now you will learn which arguments exist for the various filters and how to apply them.

7.3.3.1 PALO.HFILTER()
PALO.HFILTER() defines hierarchically a subset with criteria relative to 1. ELEMENT or 2. REVOLVE_ELEMENT. Case 1 and Case 2 should not be combined. PALO.HFILTER() Argument Element Form Element name Description Activates the selection of elements which are above or below of "Element" within the dimension hierarchy This argument can only be used in combination with "Element". If TRUE, the elements will be selected that are above the "Element" within the hierarchy. Otherwise the elements below (FALSE or BLANK). Above / Below means that the elements have to be direct or indirect children or parents of "Element" respectively. This argument can only be used in combination with "Element”. TRUE = Do not show the element itself, i.e. Element indicated in "Element". Blank or FALSE = Show the element. This argument can only be used in combination with "Element”. It hides either the base elements (HIDE = 1) or the consolidations (HIDE = 2). Blank = nothing will be hidden. The effect of this argument is that it will remove elements from the subset, if elements are not on the same level as "Revolve element". Therefore this argument should not be used in combination with "Element”. Blank = None. "Revolve element" additionally requires the specification of "Revolve count". Otherwise, an error message will be returned. Determines how long the revolving list should be. The length of the list is dictated by the number in "Revolve count". Blank = None. At first, display elements at a lower level (= 1) or at a higher level (=2), respectively. Here, the level-fields of the elements, assigned by the Palo Server, are used as criterion. "Revolve add" additionally requires the specification of "Revolve count". Otherwise, an error message will be returned. Blank = nothing . Elements that do not meet the level entered in "Level start" at a minimum and the level in "End level" at a maximum, will be removed. 2nd argument belonging to "Level start".

Above

TRUE/FALSE

Exclusive

TRUE/FALSE

Hide

Number

Revolve element

Element name

Revolve count

Number

Revolve add

Number

Level start End level

Number Number

You can now call the function-assistant with fx and then enter the arguments for PALO.Filter functions with subsets -160- The following example illustrates the use of "Element".g. Then add the filters by entering the information for the HFilter and the argument "Above” in cells "E1:E2” and "E4:E5”.HFILTER().$G$2) will cause an error((#value!).. However. if you demonstrate the utilization of the HFilter in another column.$C$2. Only then it is possible that you correctly fill e. Let’s first create the subset without utilizing the filters. You will be able to track the changes. The simpler way is to first enter the name of the function with empty braces: . Therefore you have to enter the filters directly in the PALO. "HFilter()”.SUBSET-function.g.SUBSET($A$1. in cell "G2" and then reference the same in PALO. Now click on cell "C9” and then in the formula bar.SUBSET(). Entering =PALO. please copy the range "A8:A38” to "C8:C38”. you are required to exactly know the syntax of the particular filter. Please note: It is not possible to create this sub function as an independent function e.$C$5. Therefore.

in order to restart the Function-Assistant again with fx: With the Function-Assistant you now get the function PALO. E2 .g.HFILTER() in the formula bar.Filter functions with subsets -161- After you have done that. e.HFILTER() and you can enter the arguments for this function. Now you can select the cell E9 anew and then click on PALO. please close the Function-Assistant by clicking OK.

Filter functions with subsets -162- For the next subset. Open the Function Assistant again. . Hide = 1 hides all base elements whereas Hide = 2 hides the consolidated elements. Please proceed accordingly with the arguments "Exclusive" and "Hide". Exclusive = TRUE will not show "Monitors”. we would like to incorporate the argument "ABOVE". enter "TRUE" and close the Assistant.

which is steered via the argument "Element" along with other associated arguments. This is reverted by using Above = "TRUE". "Exclusive" and "Hide” only work if "Element" is filled in.HFILTER($E$2) or PALO.Filter functions with subsets -163- Below overview illustrates how the output of the elements is changing by utilizing "HFilter”. REVOLVE_ADD determines if elements with a higher (1) or lower (2) level are to be shown as well. By entering "Monitors". hides the corresponding base elements. Exclusive = "TRUE" shows respectively the elements of PALO. . Only elements that are >= Monitors will be displayed. REVOLVE_COUNT determines the length of the list to be shown and with that the element repetitions if applicable. However. are not displayed. with the value "1". whereas "Hide". The following section covers hierarchical selections which do not permit the use of the argument "Element". which are not on the same level as "Monitors". NOTE: "Above".HFILTER("Monitors"). "TRUE" removes the entry "Monitors". all elements are omitted which are not below Monitors from a hierarchy point of view. In the previous examples we illustrated the selections based on hierarchy. The first example illustrates the use of Revolve_Element and its sub-arguments: • • • REVOLVE_ELEMENT ("Monitors") determines that elements.

HFILTER(.$C$2.E5.E5. Peripherals). go back to the standard subset once again.K5))} This is the result: The Subset Basic is shown in column "A".$C$2..G2.PALO. In the . In column "C” you see once again the simple HFilter with "Monitors” in "Elements”.g...G2.. Please add the possible arguments in the header section up until column "K”. Afterwards.PALO.E5.$C$5.$C$5..$C$2. shall not be displayed.PALO.SUBSET($A$1.SUBSET($A$1.G5))} G9:G38: {=PALO. The combination of "show me everything that is on the same level as "Monitors”” and "show me "Monitor” and everything below that results in a conflict..HFILTER(E2...$C$5.HFILTER(.HFILTER(.SUBSET($A$1.I2.$C$5.... The argument "Revolve_Element" determines that elements.SUBSET($A$1. The HFilter will be adjusted as described below: C9:C38: {=PALO.SUBSET($A$1. We mentioned that the arguments "Elements” and "Revolve_Element” may not be used in combination. which are not on the same level as "Monitors"..K2...E5.$C$5.HFILTER(E2))} E9:E38: {=PALO.G5))} I9:I38: {=PALO.PALO..Filter functions with subsets -164- To prepare the example.. the simple subset should be copied accordingly.$C$2.I5))} K9:K38: {=PALO..PALO. "Revolve_Element” would show the elements that are on the same level (e. However. Column "E” illustrates the result if you do it nevertheless: The argument "Element" (Monitors = E2) restricts the selection of the elements to "Monitors" and the subjacent elements.$C$2.

In K9:K38: PALO.. In G9:G38: PALO. "All Products". Due to "Revolve_Count” = 15. Consequently.HFILTER(.I2.. The 30th element "Desktop L" is a repetition. a higher level element. the elements are being repeated until 15 elements are displayed.. Due to "Revolve_Count" = 15. if the value of "Revolve_Count" is less than 29. in order to satisfy the requirement "Revolve_Count = 30".$G$5) omits all elements.E5. the elements are repeated. Example K9:K38 with the Subset Editor: Subset General Settings Database Dimension Layout Hierarchy enumeration Optional Settings Demo Products Flat Without effect Without effect . In I9:I38: PALO.E5. because of the change "Revolve_Add" = 1. until 30 elements are displayed. which – due to the argument "Revolve_Count" . Consequently.. the levels above that will be included..is being repeated until 15 elements are displayed. the elements are repeated.I5) effects that..HFILTER(... Due to "Revolve_Count" = 30. "Monitors" and all elements below the level of Monitors will be displayed.I2. until the list contains 15 elements. Since it reads "Revolve_Add" = 1. leaves "Monitor". because of the change "Revolve_Add" = 2 "Monitors" and all elements above the level of Monitors will now be displayed.HFILTER(..Filter functions with subsets -165- end.$G$2. that are not on the same level as "Monitors. all elements at the same or at a lower level than "Monitors" are displayed.$E$5. will be displayed. The subset will be truncated in this case. The next examples in columns "G” to "K” illustrate the correct use of the argument "Revolve_Element” in various combinations with the associated arguments "Revolve_Count" and "Revolve_Add".I5) effects that.

.. .2) starts at the level of "Monitors" and ends at the level "All Products" (column "E"). the PALO.HFILTER(..$C$5.. Neither should they be combined with the argument "Revolve_Element”.$C$2. Correspondingly....Filter functions with subsets -166- LEVEL_START" and "END_LEVEL" should also not be combined with the argument "Element".SUBSET($A$1..0.. The combination of the two "level”-indications restricts the output accordingly.$C$2.1) starts with the first base element and ends at the level of "Monitors" (column "G").E5))} H9:H38: {=PALO..G2.....E2..PALO.PALO. let’s take the simple subset as a starting point and add the arguments for "Level_Start” / "End_Level”..HFILTER(.$C$5. Important: The filter-display depends on the argument "Indent" here.... The array-functions are: F9:F38: {=PALO.HFILTER(.G5))} The PALO.SUBSET($A$1..1..HFILTER(.. Once again.....

Signs such as "[" or "$" have an impact. those elements will be omitted from the subset which does not correspond with either expression in the list. • XP+ = "XP" must occur at least once but may occur several times. PALO.3. Perl regular expressions will be used.TFILTER() Argument Form Description In case of a list of regular expressions. Only the characters "*" and "?" are wildcards. If EXTENDED = blank.Filter functions with subsets -167- 7.3.TFILTER() remove elements. • X$ = The expression ends with an X. If EXTENDED = TRUE.TFILTER() PALO. which do not match a particular string (restricting). (Upper case and lower case letters are distinguished!) . the regular expression will be handled as simple DOS expressions and only "*" and "?" have an impact. • X* = X followed by an arbitrary number of characters. Upper case letters and lower case letters are distinguished throughout. Regex Text Extended TRUE/FALSE Examples of regular expressions in PERL: • ^K = Everything that begins with a "K".2 PALO.

PALO."N*"."O*"}. G9:G38: Here we use the Perl-regular expressions."O*"}) resp. which don’t match the pattern {"Server*". PALO. .TFILTER($E$2:$E$5) remove all elements.True) or PALO."N*".d]"}.TFILTER({"Server*".TFILTER({"X$".True) keep all elements which end on an "X" or contain an "s" or a "d". PALO.Filter functions with subsets -168- E9:E38: In this TFilter. we use simple expressions which are well known from the DOS console.TFILTER($G$2:$H$2."[s.

PICKLIST() Argument Definition Type Form Name of elements Number Description Which elements belong to the pick list. Or you can determine a set of elements as pre-selection – only these elements will be passed on to further filters of the subset.PICKLIST() With PALO. PALO.PICKLIST().3. The definition is essential to the pick list.3 PALO. 1 =Insert after the list.3. . you can either add elements to the subset. which then by no means will be removed. 2 = insert into the list. 0/empty =Insert before the list. 3 = As pre-selection for the subset.Filter functions with subsets -169- Example E9:E38 with the Subset Editor: Subset General Settings Database Dimension Layout Hierarchy enumeration Optional Settings Demo Products Flat Without effect Without effect 7.

.e.TFILTER($E$2:$E$4). modify and complete the entries in the rows 1-8: -170- G9:G38: {=PALO.SUBSET($A$1. only the pick list-presentation changes.Filter functions with subsets Starting with our example PALO.TFILTER().$G$6))} In columns I to M. the argument $G$6! .PICKLIST($G$2:$G$4.$C$2.PALO.PALO. i.$C$5.

you can select the desired elements by pushing the "Edit"-button: .Filter functions with subsets Example I9:I38 with the Subset Editor: Subset General settings Database Dimension Layout Hierarchy enumeration -171- Optional Settings Demo Products Flat Without effect Without effect With the Subset Pick list-Filter.

the element will be displayed. Therefore. and all the elements with the colour "black".AFILTER($G$1:$H$4))} .PALO. > and '=. Please pay attention to ' in front of = ! Advanced Filter Text-Array The element which you wish to select. Otherwise it will be hidden. all the elements with the colour "silver".4 PALO. If this is the case. the attributes of which correspond with either row in the matrix.$E$5. will be displayed. which cost exactly "2000". must correspond to one of the rows in the selection-array G1:H4). The table’s first column contains the name of the attribute. only those elements will be selected. which cost more than "1500". PALO.AFILTER() PALO.AFILTER() Argument Form Description In case a table containing attributes is rendered.3. The following operators for numeric criteria are supported: <.AFILTER() removes elements that do not match defined attributes.$E$2. all the elements with the colour "blue". All other elements will not be displayed. The criteria next to it. which cost less than "500".3. The result can be seen in column "G": G9:G29 {=PALO..SUBSET($A$1.Filter functions with subsets -172- 7.

However. such as Total Sum. .g.3. The slice is always the same except for the element itself. It is either a numeric value or a string value.Filter functions with subsets Example G9:G29 with the Subset Editor: Subset General settings Database Dimension Layout Hierarchy enumeration -173- Optional Settings Demo Products Flat Without effect Without effect 7. Maximum or Minimum based on all cells. a slice can be defined for each of the elements of the subset.DFILTER() calculates a value for each of the elements of the subset. The filtering is similar for string values. The reason is obvious: You cannot summarize strings.3. Now you can do operations using the cell values within the slices.5 PALO. whereas lexicographical rules apply. The elements can now be filtered based on their values.DFILTER() PALO. whereby operations such as "<100” will be applied. you could filter by applying ">w". the slice may only contain one cell. In case of numeric values. This results in a value for each of these elements. e.

4=ANY. etc.<> at the Example 1 for a data value: {">=".<.>=.<=. etc. adds the second largest.>.Subcube is an essential selection criterion when using DFilter. Operators: 0/blank = SUM. all values between >50% (starting with the highest value) and >5% (starting with the lowest value) will be included in the selection. True = Enterprise-rules are not computed for DFilters. 5=MINIMUM. You can e. 6 = STRING expects strings to be contained in the cells. the values up until the highest or the lowest marginal value respectively will be removed from the selection. when only those largest elements are selected. If both Percentage-arguments are used. calculate the sum. If a value is entered. which is already determined by the subset. The selection ends when the total sum is closest to the limit. whether the values determined for the elements satisfy the criteria. I. Empty/false= Enterprise-rules are computed for DFilters.g. The selection starts at the largest element. Take a look Possible operators:=. remains empty. The arguments are the name of the cube and the dimensions excluding the dimension which is covered by the subset The elements are entered in the sequence. in which the dimensions are defined in the cube. Taking above example. 3=MAXIMUM. adds the second smallest. In case an integer value TOP is passed. the "Mid-percentage” applies."Super"} (Here.SUBCUBE() Function Operations It is checked. minimum or maximum of the cells in the slice. when only those smallest elements are selected.Filter functions with subsets PALO. If a numeric value between 1 and 99 (inclusive) is entered here. the respective operator will be applied to each slice. The place in the dimension.3000} examples: Example 2 for a string: {"=". If the argument is left blank. 1=ALL. "Super" is an entry in a text-element) This is another possible argument. whose total value reaches the limit exact or whose total value is closest to it. only a number of TOP elements with the highest values are displayed. PALO. whose total value reaches the limit exact or whose total value is closest to it. the elements will not be restricted. For slice use 1. If a numeric value between 1 and 99 (inclusive) is entered here. 2=AVERAGE. The selection starts at the smallest element. 6=TEXT Returned are the elements – not the values.DFILTER() Argument Form -174- Description Palo.e. The selection ends when the total sum is closest to the limit. Top Number Upper percentage Number Lower percentage Number Cell Operator Number No Rules True/False .

let’s start with our standard subset. In addition to the original data. please add the element "Units" in "C8". To demonstrate this. "Palo.Data" and "Guess Arguments" from the "Sales” cube. Add the information shown in range "E1:F5".Filter functions with subsets -175- A simple example illustrates how to display from a list of products only the Top 10 in respect to the number of Units. Please complete"C9:C38” by using the "Paste Data Function". You will get the following view: .

Afterwards please copy the adjusted formula to "F10:F38". Now you can enter the arguments for PALO. In "F8” please change the parameter from "$A9” to "$E9”. In Filter1 please enter the function PALO. click on E9 and then on fx: The Assistant will open the window that allows you to enter the parameters.Filter functions with subsets -176- Now please copy the ranges "A8:A38" and "C8:C38" to "E8:F38". Change the text in "E8” to "Products (DFilter). Now click onto PALO. To achieve this.DFILTER() in the Function-Assistant. In order to modify E9.DFILTER() and confirm by pressing "OK". .DFILTER() in the formula bar and repeat the process. we turn off the array-functionality in the area E9:E38 (Ctrl+Capslock+Enter).

PALO.SUBCUBE()consists of the cube "Sales" and the dimensions of the cube.$A$3."Actual".DFILTER(). .$A$6. the subset reads: PALO.$F$8).SUBCUBE("Sales".$A$4. you have to define the "Subcube"..Filter functions with subsets -177- Finally."2007"."Units") resp. Therefore.SUBCUBE($A$2."Year". The dimension that affects the subset ("Products") remains blank.."Europe". PALO.$A$5. Please proceed in the same manner as you did when adding PALO.

$A$5. we copy E9:E38 to H9:H38 and change the sorting: H9:H38: {=PALO.SUBCUBE($A$2.PALO. those elements are selected that meet the requirement "Units > 300000"..SUBSET($A$1.PALO.$I$8).DFILTER( PALO.SUBCUBE($A$2.$A$4. you will get a view of the Top 10.$A$6.($E$2:$F$2).$E$5))} Finally.Filter functions with subsets -178- In the end.$A$3. The elements are displayed in the order of creation.DFILTER( PALO.$A$5..$A$3.$C$2.$A$4..$C$5.$C$2. i.$F$8). E9:E38: {=PALO.SORT(1..1))} .SUBSET($A$1.$C$5.($E$2:$F$2).$A$6.e.PALO.$E$5).

the autoupdate feature of the preview is turned off by default. Therefore. if the data-filter is activated. Using wildcards (" *") in PALO.Filter functions with subsets Example H9:H38 with the Subset Editor: Subset General settings Database Dimension Layout Hierarchy enumeration Optional Settings -179- Demo Products Hierarchy Without effect Subset Sort: By Value Without effect The computations done by the PALO.DFILTER() are very time consuming. Also keep in mind.SUBCUBE() must not be retained! .SUBCUBE() results in errors. Wildcards in PALO. that all dimensions must be specified.

only the elements with the lowest value are chosen. until their sum exceeds 2% of the total sum of all elements. we now use a "Lower_percentage" of 2% in the cells "E4:E5".4%. with which the limit is exceeded.DFILTER with "Lower_percentage". . The element. The following picture shows the connection. . because the cumulative percentage of 2. the value of 2% is exceeded. we now produce a PALO. In cell K17. that their cumulated values correspond to 2% of the total sum over all values. that the elements of lowest value are displayed.Filter functions with subsets -180- As further example. To this end. we change the preceding example as follows: Instead of using "Top".1% is closer to the limit of 2% as the underlying cumulative percentage of 1. By the declaration of this argument. is added to the selection. Which means. This has the effect.

.$F$8). then delete the area E1:F5 and create the entries as in the following screen-shot..Filter functions with subsets -181- Take the previous example with PALO.$C$2..SUBSET($A$1..$A$5. based on the previous subsetfunction.DFILTER( PALO.DFILTER() and store it under a new name.$A$4.E5)) This alteration of E9. Cancel the array-functionality for the area E9:E38 (Ctrl+Capslock+Enter) and change the entry in E9 as follows: =PALO.. by clicking on the DFILTER in the formula bar and then starting fx : .PALO. is achieved in the simplest way.SUBCUBE($A$2.$A$3.$C$5.$A$6.

Example E9:E38 with the Subset Editor: Subset General settings Database Dimension Layout Hierarchy enumeration -182- Optional Settings Demo Products Flat Without effect Without effect .Filter functions with subsets Then copy the function from E9 to E38 and reactivate the array-functionality (Ctrl+Shift+Enter).

2 = complete reversal of the sorting criteria. 0/empty = without effect 1 = Hierarchical presentation of parents below the children and on every level. If not blank.SORT() is a structuring filter. the elements which have been removed from the subset. it is necessary to indicate the sort criteria.Filter functions with subsets -183- 7. PALO. It is a prerequisite that the children are contained in the subset. it can produce a hierarchical order.SORT() Argument Form Description 0/empty = order of creation. 1 = sorts base elements only. In order to do a sort. 2 = Will not show the children. which takes parallel hierarchies in the subset into account. It can. With 2 as an argument. it is allowed that "Whole = 0/empty". Without the sorting filter.SORT() PALO. 3=Alias Does not sort by Aliases if defined. it is necessary to indicate the sort criteria. the elements are displayed in the order of creation. 3 = Hierarchical presentation and reversal of sorting using criteria. 1=data. Note: This filter should not be used in combination with "Criteria"! 0/blank = no impact. but will cut the view at those particular positions. for example. Therefore. but by the terms defined by the attribute.3. 2=Text. Therefore. 0/empty = don’t display duplicates 1 = display duplicates Whole Number Criteria Attribute Number Text Type_Limitation Number Level_Element Text Reverse Number show_duplicates Number .3. sort alphabetically or use the data-values for sorting. 1 or 3 as argument only works in conjunction with "Whole <> 0/empty". 1 = Builds a hierarchic order and shows the children of elements. this argument works only in connection with the arguments "Whole" and "Criteria". sorting takes place only at the level of this element. this argument works only in connection with the arguments "Whole" and "Criteria".6 PALO. on every level. In addition. Sort by 0/blank=Definition. sorted using criteria. 2 = sorts consolidations only In order to do a sort.

E9:E38 {=PALO.$A$6.Filter functions with subsets For the following views. .PALO.$A$3. enter PALO. Highlight PALO. it is sorted on each level by value ascendant. the sort filter is adjusted.$C$5.$C$2.$F$8).$E$5). sorted by value ascendant. starting with the highest level "All Products”.$A$4.SUBSET($A$1.SUBCUBE($A$2.. It is to be modified as follows: 1. Now the sort is handled by data values.DFILTER( PALO.SUBSET().SORT() as Filter2 The display in column "E" is based on: Filter: PALO. Open the Function Assistant. "Portable PCs”.1))} In the 2nd example in column "H”. Then "Stationary PCs”.$A$5. "Monitors” and "Peripherals” are sorted by value ascendant.1) -184- With this.SORT(1. 3.PALO. Please remove "1” which stands for the sorting by hierarchy. a hierarchy is built and the sorting is done within this hierarchy. i.($E$2:$F$2).e.SORT(1. please start off with the Data Filter. 2. Their child elements are displayed below their parent..

$B$2.$B$5. we will treat the arguments "Attribute" and "Reverse" of PALO.$B$7. Column A: View of the simple subset. C9:C25: {=PALO. This example is based on the simple subset which is supplemented with the argument "Alias”. using the original names of the elements. A9:A25: {=PALO. the sorting is done in the order of creation. To make a comparison.SUBSET($A$1. This simple subset can also be complemented by various sorting possibilities. Since there is no indication for a specific sort. -185- The elements of "Months" are a good example to explain the argument Attribute. The French attribute notations are used as the Alias. the elements of "Months” and the various attribute notations are added starting at column "G”.Filter functions with subsets In the following examples.$B$5.$B$7)} Column C: The sorting of the subset is done alphabetically.$C$2))} .PALO.SORT(.SORT().SUBSET($A$1. Please pay attention to the changes in the sort pattern if the arguments "Criteria” and "Attribute” are applied.$B$2.

SUBSET($A$1.. This causes for "Year” to be inserted in front of "January" ("Year” in German is "Jahr”).Filter functions with subsets Column D: The simple subset is sorted by the Alias.$B$2.$E$2))} Differently than when sorting with "Alias" as criterion. Example D9:D25 with the Subset Editor: Subset General settings Database Dimension Layout 1.$B$2.SORT(.$B$7. "German” is the attribute in our case. as shown in column "I".$B$5.$B$7.$D$2))} -186- Column E: The simple subset is sorted by the argument "Attribute".$B$5.SORT(.Alias Hierarchy enumeration Optional Settings Demo Months Flat French Without effect Without effect . D9:D25: {=PALO. E9:E25: {=PALO.PALO. the sorting is done by the notations.SUBSET($A$1.PALO. The first element that is returned is "Year” since the corresponding French Alias is "année”. $B$7 could be omitted here. Therefore.

e.. a sort by text for all elements (Reverse = 2) is always possible.$C$5.SUBSET($A$1.$C$2.$C$5.$E$5))} Hierarchical presentation with parent below the children and alphabetical sorting on every level: G9:G38: {=PALO..SORT($E$2.$G$2))} Pure alphabetical sorting: I9:I38: {=PALO. however..SUBSET($A$1.SUBSET($A$1. a level structure has to be generated as well.. Hierarchical presentation with alphabetical sorting on every level: E9:E38: {=PALO...PALO....$C$5.$O$2))} ..$C$2.$C$2.PALO..$C$5.PALO. This is achieved by entering 1 or 2 for the argument "Whole"..Filter functions with subsets -187- The argument Reverse is used to reverse the sorting.SORT($E$2.SORT(.PALO.SUBSET($A$1.$E$5.PALO..$K$2))} Column M equal to column E.$M$5.SUBSET($A$1. the sorting is to be reversed on a particular element level.SORT($M$2.$C$2.SORT(.g.. The reversal of a simple sort order.$I$5))} Reversal of alphabetical sorting: K9:K38: {=PALO.$I$5.$C$2.$C$5. Hierarchical presentation and reversal of the alphabetical sorting on every level: O9:O38: {=PALO. If.

This reverse-argument is entered by the layout "Parents below the children" in the register-card General.Filter functions with subsets Example G9:G38 with the Subset Editor: Subset General settings Database Dimension Layout Optional Settings -188- Demo Products Show parents below children. Important note in the register-card Sort: Not all arguments of PALO. . Show children of hidden elements Note that "Reverse" is not selected. but some of them can be found directly in the register-card "General" (with duplicates) or they are generated by a combination of the settings in "General" and "Sort" (see previous example).SORT() can be selected in the register-card "Sort" by clicking on them.

2. He allows the creation of pivot tables using the data from a Palo database. However. ODBO (OLE DB OLAP) is a Microsoft published specification and an industry standard for multidimensional data processing. for MDX access and the Pivot-Table integration. The names of these dimensions are arbitrary. Parallel hierarchies are not allowed (for each element one and only one parent is allowed). these new areas have been optimized and are done internally to support Microsoft Excel 2010. and other front ends like Bissantz DeltaMaster and Cubeware Cockpit. This dimension now will be used as Measures dimension in Excel Pivot-Table connections.Creation of Excel Pivot Tables -189- 8 Creation of Excel Pivot Tables 8. and click on the cube for which you want to define a Measures. The following structural constraints for the time dimension. Each dimension must have one top element and only one. The Palo ODBO Provider now supports writeback and modeling. a time dimension can be defined. 3. 4. In the same way. The dimension contained in the cube are expanded. In order to be accessible through the Palo ODBO Provider a Palo database must be conform to the following preconditions: 1. Now right-click the dimension which you want to assign the "Measures" function and select "Treat as measures dimension (MDX)" from the context menu. It is possible to define various measures and time dimensions for a database.or Time-dimension. In addition. each Cube has to be assigned with exactly one Measures and one Time dimension.1 Preliminary notes The Palo ODBO provider is included in the normal Palo-All-In-One Setup and will be installed by the selection "Palo 3rd Party Access(ODBO/XMLA)". This can be done in the Modeller of the Palo Excel AddIn: Open the Modeller. .

H stands for half year. for example. M for month W for week and D for day. the D element (day) can take any value between 1 and 31 (day of month). Any position in this structure is optional. Q for quarter. Two detailed examples: With months as N-elements: With days as N-elements: (rows 1-15 like the left snapshot) The suffix for H/Q/M/W/D is not bound to a particular number. However the suffix should be consistent with the context. One can have 2005_D1. . In a structure like 2007_M1_W2_D1 the element D can take any value between 1 and 7 (day of week). For example.Creation of Excel Pivot Tables -190- If there is a time dimension in the cube. in a structure like 2007_M1_D1. or 2005_M2_D15. then this dimension must have a structure like: 2005_H1_Q1_M12_W4_D1.

Palo Client. 8. The IP used here will be the IP the clients use to connect to the provider. Both the Palo Server and the Palo ODBO provider are on the same machine. The configuration file for the Palo ODBO Provider is stored in the Palo folder and has four relevant items: config.2. palo. 2.ini default-Path: C:\Program Files\Jedox\Palo Suite\olap\data Here only one single entry is relevant to the scope of the current paper: http represents both the IP the Palo server is bound to and the port used by the Palo server.Creation of Excel Pivot Tables -191- 8.1 All in one This is the default installation. Here is no need to change ini-files. This item is especially relevant in the case of a multi-IP machine.2 Needed address changes for the ODBO connection There are three possible installation scenarios: 1. PaloPort represents the port used to connect to the Palo Server MDXPort represents the port the clients use to connect to the provider. 3. Palo Client + Palo ODBO Provider on Machine 1 and Palo ODBO Provider + Palo Server on Machine 2.ini default-Path: C:\Program Files\Jedox\Palo PaloAddress represents the IP address the provider expects to find a Palo Server MDXAddress represents the IP address the provider is bound to. . Palo Server and Palo ODBO Provider on the same machine. Connections to the data are executed from the same machine. Palo Client + Palo ODBO Provider on Machine 1 and Palo Server on Machine 2.

1 to the IP of the Machine 2.130.2.130.0. in order to access the data. The Palo Server: Edit the Palo. 8.130. For Example: http 80.1 to the IP of the Machine 2.2.2 Palo server on machine 2 In this configuration the Palo Server is on a remote machine.210 Restart both the local machine and the server for the changes to commit (Alternatively you can restart only the relevant services: Palo and MDX).ini. The Palo Client gets the IP address of Machine 2 while connecting with Palo Server. The machine that connects to the data has the Palo ODBO provider locally: In this case both the Palo Server and the Palo ODBO Provider requires configuration.1 Change here 127.0.0.ini file and look for a construct like: PaloAddress 127.0. The Palo ODBO Provider: Edit the config.3 Palo server and Palo ODBO provider on machine 2 Here the Palo Server and the Palo ODBO Provider are on the remote machine.Creation of Excel Pivot Tables -192- 8. Edit the config.ini file and look for a construct like: For example: MDXAddress 127.210 Change here the address 127.210 7777 For Example: PaloAddress 80. However.72.ini file and look for a construct like: http localhost 7777 Change here localhost to the IP of the Machine 2. Therefore only the Palo ODBO Provider on Machine 2 needs changes in the config. . the machine used for the client has to have installed a second copy of the Palo ODBO Provider: In this case. the provider will be split between a thin client interface on the client machine and the main provider working on the server machine.0.0.1 MDXAddress 80.0.72.0.72. Restart "Jedox MDX Interpreter" under "Start – Control Panel – Administrative Tools – Services" or restart Machine 2 to commit these changes.

Creation of Excel Pivot Tables -193- 8. Select “Data/PivotTable and PivotChart Report…” from Excel menu: Select External data source: .3 Using Palo ODBO Provider with Excel 2003 The following steps describe how you can create Pivot Tables in Microsoft Excel 2003 using the Palo ODBO Provider.

Make sure you choose Palo ODBO Provider. similar to this one. then click on Connect… button: . then select <New Data Source> and click OK button: Fill in the fields in the “Create New Data Source” dialog. The name for the data source is free.Creation of Excel Pivot Tables Click on Get Data: -194- Select Tab "OLAP Cubes" from Choose Data Source dialog.

user name.0. password and the name of the source database: Please enter at "Server Address" the IPAddress of the machine with the "main" Palo ODBO Provider! (look in the previous subsection): This is "127. . Then enter username and password(standard password for user admin is admin. Click on the button "Test Connection" and you receive a message: If this is successful. if there is the "main" Palo ODBO Provider. described in described in the previous subsection. you can click OK. Note: Specify the location of the data means here location of the "main" Palo ODBO Provider! (After the ini-changes.Creation of Excel Pivot Tables -195- After clicking "Connect" you have to enter the server address. make sure you change it accordingly).0. Choose the database to use and Test the connection.1" if the "main" Palo ODBO Provider is on the same machine and the IP-address of machine 2. the "main" Palo ODBO Provider knows the location of the Palo Server with the data).

Creation of Excel Pivot Tables Fill in the missing fields in Create New Data Source dialog: -196- If you are also mark "Save my user-ID and password in the data source definition" you will no longer ask for it. You will get the following dialog: When prompted to save password choose “Yes”. then click OK: So you have now immediate access to the stored connection “Choose Data Source” dialog should now look like this: .

Now you will be asked where you want to display the report: If you haven't mark "Save my user-ID and password in the data source definition" you have to enter the user data once more: .Creation of Excel Pivot Tables Click OK and then click on Finish in PivotTable Wizard dialog: -197- Confirm with "NEXT".

Creation of Excel Pivot Tables With the input of data and click on "OK" is a blank pivot table. Below is an example of such an evaluation: . -198- Here you can draw the entries from the PivotTable Field List into the Page Fields. Column Fields and Row Fields. You will then receive the corresponding PivotTable view.

it is necessary to update the screen to correct display the correct data in the pivot table (via the menu Data or via the context-menu on the right-mouse button): .Creation of Excel Pivot Tables Here you see a comparison between the classical Palo view and the pivot-table view: -199- After changing data in the database.

Select “Data/From Other Sources/From Data Connection Wizard” from Ribbon: Select Other/Advanced and click “Next”: .Creation of Excel Pivot Tables -200- 8.4 Using Palo ODBO Provider with Excel 2007 The following steps describe how you can create Pivot Tables in Microsoft Excel 2007 using the Palo ODBO Provider.

Choose the database to use and test the connection. described in the previous subsection. Note: Specify the location of the data means here location of the "main" Palo ODBO Provider! (After the ini-changes. If this is successful. . Then enter username and password (standard password for user admin is admin. you can click OK.1" if the "main" Palo ODBO Provider is on the same machine and the IP-address of machine 2.0.Creation of Excel Pivot Tables Choose Palo ODBO Provider from the list and click “Next”: -201- Please enter at "Server Address" the IPAddress of the machine with the "main" Palo ODBO Provider! (look in the previous subsection): This is "127. if there is the "main" Palo ODBO Provider. make sure you change it accordingly).0. the "main" Palo ODBO Provider knows the location of the Palo Server with the data).

a description and a friendly name. . You have the option to save your password in this file.Creation of Excel Pivot Tables -202- In the next dialog you can choose which Cube you want to query (if more than one is present): In the next step you can enter a file name for the connection data.

Creation of Excel Pivot Tables -203- Final steps should look like this: .

Creation of Excel Pivot Tables -204- A finished Pivot table in Excel 2007: .

The default folder of the "Standard-Installation" is C:\Program Files\Jedox\Palo Suite\olap\data After completion of installation you will find the info of the location under Start .Control Panel Administrative Tools .ini) is set during the installation process.1 Locations of files and databases on Windows The location of the databases (=location of the palo.ini are stored: .Administration of Palo -205- 9 Administration of Palo 9. When you double-click Palo Server Service you see in the Palo Server Service Properties dialog box the "Path to executable": At the end of this line you will find the path where the databases and palo.Services the service Palo Server Service.

2.ini file The configuration of Palo can be changed in the file palo.168. Rather it is established here over which IP-address(es) access to the server is made possible.sample.0. These settings can be altered already during the installation of Palo.1 (the standard IP-address of your computer. They mean that the http-interface of the server (over which client connections are made) expects connections over IP-address 127. also called "localhost") on port 7777.168. which explains the available parameters briefly.ini file you’ll find the line http "127.0.2.0. you have to modify the file palo.2.ini. If you enter the network-IP of the server (e. This directory also contains a sample file. 192.0. palo. Also several connections can be declared one after the other. then access over all IPaddresses of the server are permitted (e. you will find more information.. for example http "127.1" 7777 http "192. but access of the server itself over the localhost connection would not work any more – the network-IP would also have to be used in the Palo-Client.0.Administration of Palo -206- With regedit..0.100) instead. over different network cards and also over "localhost"). then under HKEY_CURRENT_USER\Software. other computers will have access to Palo over this IP.g.1 (or "localhost") is. In the palo. Quotation marks must be used only if a server name contains blanks or special characters or in case that the server name should be left out completely.\data of the Palo-Server. .1 Client-Connection with a Palo-Server In order to access a Palo-Server over the network.0.g.100" 7778 However. and then in both cases below Jedox\Palo\XlAddin: 9..1" 7777 These are the default settings. under HKEY_USERS\. if you installed Palo only for the current user.ini in the directory . The port number can be selected freely but it cannot yet be in use and must moreover possibly be released in the firewall. different connections must be declared with different port numbers.0. that access to Palo is only possible from the server itself. which is located in C:\Program Files\Jedox\Palo Suite\olap\data by default.DEFAULT\Software. Therefore the meaning of the entry 127. such as where PaloServer. If only two empty quotation marks are declared instead of an IP-address.2 The palo. Bear in mind that this IP address does not specify the address(es) of the clientcomputer(s).ini. 9.log is stored: If you Palo installed for all users.

one time in the command line and one or two times in the "palo. The first option type refers to "switch parameters”.2.2.2.g. the value is switched to "on” or "off” each time.0. open the palo. Then perform the following modification: Below the line: Insert the following new line: http "127.2. either in the command line or in the "palo.100" 7778 Save the file and then start the Palo service of the server again. this file is used in any case. 9.ini”.ini. e.1.1. When you start Palo from the control panel.1" 7777 This setting is done automatically during the installation of Palo.2. the Palo-Server must be started again in order that the modifications become effective.ini: autosave T HH:MM Example entry in palo.ini” file manages all options which are communicated to PALO at start-up. When you start PALO as server service.Administration of Palo -207- Important: After every modification of palo.ini: autosave: T 04:00 Automatic backup every day at a certain time: Entry generally palo. so that only the options in the command line are used and not "palo. it is sufficient to enter the following line in palo.2 Automatic backup In the Palo.0. The following parameters are examples of "switch parameters”: • • Chdir Auto-load . Later.0.ini you can specify that the data from the Palo databases which are in memory of the server are automatically backed up to the hard drive.ini: autosave L HH:MM Example entry in palo.168.ini: autosave: L 02:30 9.2 Palo-Server and Client on different computers Suppose the computer on which the Palo-Server is installed has the network IP-address 192. a default value is used. then you please unlock the corresponding port in the firewall. In order to make communication with the Palo-Server possible for other computers. 9. If any of the options is given more than once. If the connection doesn't work.ini http "127.ini”..2. 9. Therefore you have two options: Automatic backup with a fixed time interval: Entry generally palo. you can add the option "-n”.1 Palo-Server and Client on the same computer If the access should take place only from an Excel-Client. If any of the options are not listed.168.1" 7777 http "192. provided it is not altered explicitly in the corresponding dialog.100 and associated name palosv0001. you can register a new server with these connection data in the Palo-Client. which is installed on the same computer as the Palo-Server.0. We distinguish between three types of options.ini file of the server with an editor.ini”.3 Further options The "palo.

loads these databases and adds them in palo. Determines whether a configuration file is used. it is switched on. All paths listed in the configuration file are relative to the directory in which Palo is executed.g. Default: true • "auto-commit”: Determines whether all changes made to databases in memory should be saved by Palo to the hard disk when shutting down the Server. each parameter is used. once in the command line and once in the configuration file. This means that in case the option is entered several times with parameters.ini”. these include: • • admin http Command Line Parameters These parameters can be abbreviated using individual letters. If we enter this parameter in the command line and in the "palo. "workerlogin” is an option with additional parameters. For example.Administration of Palo -208- The second type is the options with additional parameters. because it is the default value for this option and it is switched off upon first entry in the command line and then switched on again in the configuration file.. this is either relative to the directory where the binary file is stored. The complete names should be used in the configuration file. Be advised that the command line options and then the "palo. only one option. which was set by "datadirectory”. Example for Using Options 1. For example. if we enter the same one twice in the "palo. or relative to the "data-directory”. The option "http” is additive. 3. the last one in the file. the last value read by PALO is used. e. i. the parameters of both entries are used. Default: true . "add-new-database” is a switch parameter. is used with its parameters. Consequently.csv.csv” listed databases that are contained in the directory. The options of the third and last group are an exception to that. In other words. 2. Default: false • "use-cube-worker”: Determines whether a "cube worker” is used. if you enter "http” including parameters several times. Switch Options: • "auto-load”: Determines whether Palo should automatically load all in file "palo. Default: false • "load-init-file”: Only in the command line. Default: true • "add-new-databases”: Determines whether Palo automatically recognizes directories containing OLAP databases in the "data-directory”.e. • "user-login”: Determines whether users must authenticate themselves to log on.ini”. these abbreviations are listed. Here are two examples of the options listed above: • • worker workerlogin The third and last type refers to the options which collect additional parameters and use all of them. enter a user name and password. set by "data-directory”. If you start Palo on the command line with "-?”. Default: true • "chdir”: Determines whether Palo should switch to the directory.ini” are read if both are used. In this case.

0. • "init-file”: Complete path (incl.. Options with Additive Parameters • "admin”: Determines the ports to server browser and online documentation (Important: The admin interface does not require any authentication and thus should be used only in safe networking! ) • "http”: Determines the ports that allow general access to Palo • "legacy”: Determines the ports which allow you to access with the older legacy interface. name) to the configuration file.ini. The default setting of the current ini file is as follows: user-login log . Default: "-" • "verbose"”: Determines how much information Palo writes into the log file. # # .2. to stdout.4 File palo. "auto-commit" # or "chdir" toggle a state from "true" to "false" and vice versa.ini”.if parameters with additional parameters like "worker" or "workerlogin" .sample ### ### PALO configuration file ### ################################################################################ # # Configuration file info: # # . the configuration file is # evaluated after the command line arguments have been processed # # . If you enter "+” as the parameter. if you enter "-”. You can # declare a "toggle" parameter more than once.\.Administration of Palo -209- Options with Non-Additive Parameters: • "data-directory”: Path to data directory that contains the databases and "palo. • "worker”: Complete path to worker binary file. Default: "Data” • "template-directory”: Path to directory that contains online documentation. • "workerlogin”: Determines how much of login tasks are handled by worker. The load-init-file options is ignored if given # in the configuration file. log writes to stderr.the command line arguments are evaluated first.\log\olap_server. This contains the name of the executable file and possible worker arguments.if you start palo with -n or --load-init-file on the command line.parameters without additional parameters like "auto-load". then # the init file is not read.0.a comment starts with a "#" sign # # . Default: "Api” • "log”: The file that Palo log is written to. # # .. Default: No "workerlogin” at all: Palo handles all login tasks.1 7777 verbose info splash-limit 1000 500 100 goalseek-limit 1000 goalseek-timeout 10000 cache-barrier 100000 clear-cache-cells 10000 9.log http 127.

palo changes into the data directory at the program start.the parameters "admin".0\Data # data-directory /home/palo/palo-2. then the option will be true again. # # .Administration of Palo -210- # are given more than once on the command line or the configuration file # only the last definition is valid. # then the option will be set to false. Any path # supplied in the init file is therefore local to the data directory in this # case. # # If the http option is supplied for port A on the command line and for port B # in the configuration file. All the # definitions supplied on the command line / in the init file are used. # # The option "workerlogin" has one additional argument. # (default state is "true") . "http" are treated specially. If you supply # --add-new-database on the command line but not in the configuration file. If you supply # workerlogin on the command line and on the configuration file. If you supply add-new-database in the # configuration file but not on the command line then the option will also be # set to false. then the # value supplied in the configuration will be taken.0/Data # ## directory of online documentation # (default directory is "Api") # # template-directory Binary/Api # ## load all databases on server start into memory which are defined in the # palo. # # For example: # # The default of "add-new-database" is true (see palo -?). as it is # toggled twice. # ################################################################################ ### ############################################################################ ### General options ### ############################################################################ ## path of the data directory # (default directory is "Data") # # data-directory c:\olap\palo-2. then both ports A and B are used.csv (default state is "true") # # auto-load # ## commit all changes on server shutdown # (default state is "true") # # auto-commit # ## change into data directory # if true. If you supply --add-new-database on the command line and in # the configuration file.

csv (default state is "true") # # add-new-databases # ## force users to login # (default state is "false") # # user-login # user-login ## splashing limits in mega byte # generate an error if splashing requires more space than the first number # generate a warning entry if splashing requires more space than the second # number generate a info entry if splashing requires more space than the third # number # # splash-limit 1000 500 100 ## # Goalseek algorithm can be executed on slices with maximum <cell_limit> cells (default 1000).domain.2 7777 # admin localhost 7770 # admin localhost 7777 # .domain. a server name or an internet address ### example address ### "" (for all server internet addresses) ### localhost ### server.1.168. # Algorithm must complete within <timeout> milliseconds (default 10000).net 7777 # admin 192.1.2 ### ### a port is a number ### ############################################################################ ## http interface with server browser and online documentation # # admin "" 7777 # admin localhost 7777 # admin server.168.net ### 192. # # goalseek-limit <cell_limit> # goalseek-timeout <timeout> # # goalseek-limit 1000 # goalseek-timeout 10000 ## maximal growth in area computation -211- ### ############################################################################ ### Server address and port for http interface ### ### an address can be "".Administration of Palo # # chdir # ## try to add directories with OLAP database automatically and add them to # palo.

then no login worker is used # possible values: # information # authentication .php # ## use a worker for login # if not set.log # ## Log-level # levels # error (default) # warning # info # debug # trace # # verbose error # #verbose info ### ############################################################################ ### Worker ### ############################################################################ ## path to the worker # worker <executable> <argument_1> .Administration of Palo -212- ## http interface # # http "" 7779 # http localhost 7779 # ## keep trying # If the HTTP port cannot be opened. # # keep-trying ### ############################################################################ ### Logging ### ############################################################################ ## Logfile # log to stdout (default) # log # # log to stderr # log + # # log to a file # log /var/log/palo.. keep trying until it can be opened. Default # is to give up and exit.. if the ports cannot be opened. <argument_n> # # worker /usr/bin/php5 /home/palo/worker.

Each lock can use # <undo_memory_size_in_bytes_per_lock> bytes in memory and # <undo_file_size_in_bytes_per_lock> bytes in files for storing changes: # # undo-memory-size <undo_memory_size_in_bytes_per_lock> # undo-file-size <undo_file_size_in_bytes_per_lock> # # undo-memory-size 10000000 # undo-file-size 100000000 # ### ############################################################################ ### SSL ### ############################################################################ . # # cache-barrier 0 # clear-cache-cells 0 # ### ############################################################################ ### Undo ### ############################################################################ ## # In a locked cube area it is possible to undo changes.Administration of Palo # authorization # # workerlogin authorization # ## use workers # (default state is "false") # # use-cube-worker # ## enable cell drillthrough # (default state is "false") # enable-drillthrough # -213- ### ############################################################################ ### Cache ### ############################################################################ ## The server side cache is configured to default to 10000 cells per cube. # # cache-barrier <maximum of number_of_cells to store in each Cube cache> # (default 10000) # clear-cache-cells <number_of_cells to purge from cache> (default 1000) # # In order to turn off the cache set "cache-barrier" to "0" and # "clear-cache-cells" to "0".

then no HTTPS support is available. In addition a file with the # diffie-hellman parameters must be supplied.pem dh1024. then each http or # admin command must be followed by a https command containing the HTTPS port to # use. The paths are relative to the data directory.pem # # Diffie-Hellman paramater file: # openssl dhparam -2 -outform PEM -out dh1024. Generate a self-signed certificate use: # # Root-Certificate and Server-Key (<ca> and <private> are identical): # openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout server. The private certificate can be # protected by a password.Administration of Palo -214- ## # Set the encryption type # none # optional # required # # If none is selected.pem 1024 # # key-files server. then you can use HTTPS. All other functions require a HTTPS # connection. # # If you specify optional or required each http or admin command must be followed # by a https command containing the HTTPS port to use. see the # OpenSSL documentation for details. then only # /server/info will function unencrypted. DO NOT USE IN A PRODUCTION SYSTEM ### ############################################################################ ## generates a default session id 0000 # # fake-session # . # # https 7778 ## # The following certificates are need: a root certificate and a private # certificate signed be root authority. If required is selected. # # key-files <ca> <private> <diffie-hellman> # password <private-password> # # The files can be generated using the OpenSSL command line tool.pem -out server. # # encryption none ## # Set the https port # # If you specify optional or required as encryption type.pem server. If optional is # selected.pem ## location of directory containing the HTTPS extension # # extensions <directory> # ### ############################################################################ ### FOR DEBUGGING ONLY.

the server will remove threads till it # reaches one of the two criteria specified above ( less that 50% threads idle . the server will # add the exact number of threads specified in the initial thread pool. # # Q: Is the number of possible (parallel) subjobs limited by the number of cores? # A: One can split this into as many subjobs as desired. # # Q: Is there still a differentiation between processors and cores? # A: Not. after reaching this # limit the server will dynamically increase the pool size # # initial-thread-pool <initial-pool-size> # initial-thread-pool 4 # ## max-subjobs <max-subjobs-size> sets the number or processor cores allocated # for calculating complex jobs # # max-subjobs <max-subjobs-size> # max-subjobs 2 # # Q: How do these options relate to one another? Is a subjob a "child" of a # thread so that 4 threads + 2 max-subjobs = 8 subjobs? # A: Yes. # autosave T HH:MM # # autosave T 23:59 # # autosaves cyclically when a given amount of time elapses. From the software standpoint there makes no sense to do so and it was # removed. On the # other hand. # # Q: Is there a limit for the threading pool after which the server won't # further increase it? # A: Not. if 50% of the threads in the pool do not serve active connections # and the number of threads in the pool is larger than the initial size (the # pool was increased at least once). # autosave L HH:MM # # autosave L 10:10 ### ############################################################################ ### Threading ### ############################################################################ ## initial-thread-pool <initial-pool-size> sets how many concurrent users the # server is prepared to serve immediately after startup. More # precisely to retrieving aggregated cells and only when rules are involved. When # no available treads remain to serve an incoming connection. # In such a case. However. The server will always increase the pool to accept new clients. as a first # hint.Administration of Palo -215- ### ############################################################################ ### Autosave ### ############################################################################ ## autosaves all the databases # # autosaves at an exact time once a day. this applies only to computational intensive jobs. going for more than the number of processors (times two if the # processors support hyper threading) might not lead to performance improvement. a job (the query that requested aggregated cells) will be # split into multiple subjobs. However.

both of them have to be met. # On a large enterprise environment it might be a good idea to start with plenty # of threads. 4 and 2? # A: initial pool size = 10. # # Q: What are the default settings for these options. There # is always a balance to be reached between memory overhead and responsiveness.Administration of Palo # or initial size reached). on a simple. or # when one of them is true? # A: Yes. # # Q: "More precisely to retrieving aggregated cells and only when rules are # involved. maximum subjobs = 2 -216- ### ############################################################################ ### ignore-rule-error ### ############################################################################ ## Ignores arithmetical errors during rule calculation # (like division by zero) and replaces them with 0. # # ignore-rule-error (default state is true) ### ############################################################################ ### maximum-return-cells ### ############################################################################ ## # sets a maximum limit for cells return from an area call # maximum-return-cells <maximum_return_cells> ( default is 20000 ) # # # maximum-return-cells 10000 . Therefore it is best to have as little as possible. More threads means more memory consumed and # some overhead. # # Q: What's the advantage of having more initial threads if the server will # anyhow increase it dynamically? # A: The best operating situation is when the server does not adjust the thread # count and all of them are busy. # creating a new thread means time spent by the server on something else than # serving a client connection so it is good to have one already created. However. desktop only installation one might be enough." Does this mean: when those two conditions combined are true.

Other users first must register once the connection to the PaloServer for using it. 9.3. you click on "Modeller…" in the Palo menu: In the following dialog window you click on the button "Start Palo Wizard …" (red arrow): You get the dialog window "Palo Wizard": Here you click on "Register new server" and then on "Next".3 Connecting Palo-Clients with Palo-Server By default with a client + server installation is only registered the connection to the server for the user. who is logged in during the installation. . Then it is in the server list until unregistered again.Administration of Palo -217- 9.1 Connecting Palo-Client with local Palo-Server In order to register a new server under "localhost".

if the test was successful: Confirm the message with "OK". then click on "Finish" please. . A click on "OK" closes the Palo Wizard. We enter the data as shown below: Click on "Test connection". By default. there exists the user "editor" with the password "editor". You get the confirmation that the server was successfully registered.Administration of Palo -218- In the next step. you enter a name for the connection and enter the remaining data. Make sure that you use a created user’s name only. You get the following message.

0.100) instead of the name (palosv0001) in both the palo.0.100 and associated name palosv0001.168.2. we need in the palo.2.Administration of Palo -219- 9.100" 7778 Then we can establish a connection with the Palo Wizard of the Palo-Client using the following entries: As you can see.2 Connecting Palo-Client with Palo-Server in the network Suppose the computer on which the Palo-Server is installed has the network IP-address 192.0. .0.1" 7777 http "192.ini of the server below the line: the following line: http "127.1" 7777 – has not been replaced. Since the original entry .ini file and in the Palo Wizard.http "127.3. the name in the field "Connection name" is not required to be the network name of the server (palosv00001). the user "Smith" and his password must have been created before in the Palo-Server.2. Remark: The connection is established faster. the server machine has still access through the localhost connection. if you use the IP-address of the server (192. In order to make communication with the Palo-Server possible for other computers. Details about the creation of users in Palo can be found in the chapter "Administration of User Rights” in this manual.168.168. Of course.

Administration of Palo -220- 9.3 Deleting a server-connection In the "Palo Wizard" dialog window you also can delete (unregister) a server-connection: Confirm your selection by clicking "Finish” Then the system asks you to confirm the deletion by clicking "OK”.3. created with the Palo Wizard. there exist an entry in the registry. For each server entry. Palo then reports: "Server successfully unregistered”. .

1" 7778 (the port number must be different from other port numbers used) Important: The admin interface does not require any authentication and thus should be used only in safe networking! Over the Admin-Interface and the http-API of Palo.0. For this purpose you have to enter the server IP address. This is addressed with the prefix "admin" instead of the prefix "http".4 Connection with the API and with the server browser Beside the connections from Excel-Clients. For example.0. in your browser. for access from the server itself: "http://127. This is even possible without an Excel-Client installed. for a connection from the server machine itself: admin "127.0.0. the server can be controlled and data can be retrieved from it. There you find the start page of the API: .1:7778/" or "http://localhost:7778/".ini file. For example. it is also possible to define connections to the AdminInterface of the Palo-Server in the palo. from other computers as well as from the server itself. followed by the port number.Administration of Palo -221- 9.

. you can delete a database via the browser. For example.Administration of Palo -222- You can use the server browser for the administration of the databases via a browser.

Your content may look different. Sample screens are shown below.Administration of Palo If you click the database. you get an overview of the cubes and dimensions. -223- .

0.0.0. .1 protocol.100:7778/ The entry admin "" 7778 would allow access over all IP-addresses of the computer. including 127.1 / localhost. You can also use the Legacy mode to maintain compatibility to Palo 1. You can communicate with the Palo-Server by using the HTTP 1.168.168. You then receive the result in an easy-to-parse CSV display.100" 7778 would allow access over the URL http://192.Administration of Palo You can also find the API documentation on the website: -224- The access from other computers to the API is made possible in an analogous fashion as the access for Excel-Clients. The entry admin "192.2.2.

depending on the level of use. . For each Palo rule there is also a unique csv file which contains the description of the rule. The values currently in storage are registered in the log files.csv. Comma Separated Values (CSV): The structure of the Palo database is set in database. After restarting Palo-Server.csv (entries under [CUBES]) there is in turn its own csv file in which structure and values are specified further. after stopping Palo-Server. You find the following files on the server system under: Windows: Databases: …\Jedox\Palo Suite\olap\data Log files: \Jedox\Palo\Log\ Linux: Databases: /opt/palo/data/ Log files: /opt/palo/Log/ 9. These files contain the currently saved Palo values. Before deleting these files from your database directory. dimensions and elements and their characteristics are described. whereas the data from the csv file will be carried over to the archived files. the values will be transferred from the log file into the csv file.5. you can delete the archived files from the database directory after stopping Palo-Server. If your database takes up a lot of space on the server. log and archived files.Administration of Palo -225- 9. The CSV files contain the data last saved. we recommend that you always do a Backup. the needed archived files will be created anew. There is one folder for each database – the folder is named after the database. For each cube that exists in database. It is sufficient if. It is here that cubes. you copy the databases to another data carrier.1 Database files Palo databases consist of 3 different datatypes: csv. After stopping Palo-Server.5 Data backup We recommend that you backup your databases in a regular basis.

0. 3.4.1."#_#_CUBE_".13."#_GROUP_DIMENSION_DATA_Months". 6.0.0.0.1."#_Years".10.0."#_#_CUBE_".0. 12. 5.3.2.0. 7.0."#_GROUP_DIMENSION_DATA_Products". 12.2.0.0.3.8.12. There is another csv file for each entry.1. 10.3.1.4."#_GROUP_DIMENSION_DATA_Years".1. 3.0.1."#_Measures".0.0.10.1."#_Regions"."#_GROUP_DIMENSION_DATA_Months".6.0.0. Contains the data for the cube ‚Sales’. 7.6.0.2.0.12.0.3.0.14.0.0.0. 13.0.12.csv: [CUBES] 0.0.1.0.3.3.9.6.10.0.7.0.3.0.0.2.8.0.1.5."#_Months"."#_GROUP_DIMENSION_DATA_Regions".0.3.6. 4.0."#_Regions". 10.3.10.Administration of Palo Excerpt from the Palo Demo database with the following entries in database.0.8."#_Products".1."#_Months". 8. These six cubes contain the attribute cube for each dimension: 2.0.1.0.12.2. 11.1."Sales".1.9.4."#_Datatypes".1."#_Datatypes".6.12."#_GROUP_DIMENSION_DATA_Measures". 13.0.11.0."#_GROUP_CUBE_DATA"."#_GROUP_DIMENSION_DATA_Measures".3.3.3.0.0.0.3.11.2.0.12. 5.1.0.4."#_Years".4.0.0.0.8.10.0."#_GROUP_DIMENSION_DATA_Products". 9.8.2.0.0. 14. 9. . 2.13.1.0.14.0.2."#_GROUP_DIMENSION_DATA_Datatypes".0. 1."#_Measures".8.0.1. 6.4. 4.0.1. 11."#_Products". 1.7.0.0.1.1.0. -226- These cubes contain the user group and the dimensions.5. Short description of the individual cubes: 0.0.0.0.0."Sales".1.0.3.0. 8.6."#_GROUP_DIMENSION_DATA_Years".3.0.0."#_GROUP_DIMENSION_DATA_Regions".1.0.0.3. The rights for each element for each group is registered here. 14."#_GROUP_DIMENSION_DATA_Datatypes".10.0. This cube contains the data for the attribute cube for each cube dimension.0.0."#_GROUP_CUBE_DATA".0. Contains the dimension cubes and groups and the rights of the groups to the cubes.

port and username. an entry exists showing the parameters: connected (display of the status of the server connection). A short description of the various levels: • error: Output of fatal errors: If this occurs. Both of these log files can also be deleted or saved after stopping Palo-Server. trace and debug. the value stored in here moves to the respective csv file. These entries. Palo-Server can reinstate it with the archived files. Restarting Palo will create these files anew. The PaloServer.5. warning. The paths to the Import-(CSV) and Export-files (CSV2) can be find under HKEY_CURRENT_USER\Software\Jedox\Palo\XlAddin\MRU (Most recently Used). The commands are: net start PaloSuiteMolapService net stop PaloSuiteMolapService . password. Excel has to be closed and the Palo-Server restarted to make the changes effective. Palo-Server has to be restarted to make the changes effective. Both value changes as well as structural changes are logged together with the name of the user. The default setting is "info". Example: no storage space left on the disc. 9. Palo-Server should be stopped (the Server may stop itself) to correct the error.7 Starting Palo Service via the console Palo Service can be started directly via the Windows Console and Net Start.0. All values entered in Palo are stored directly in this file. info. After changes have been made.ini have been made. In case the database corrupts. A Palo Services restart will create these files anew. to keep the data quantity in the server system low.ini.2 PaloXlAddin. hostname. The different detail levels for this log are: error. However. For each server registered via the Palo Wizard. it should not generally lead to a corrupt DB. the registry editor will open. can be read directly. If the database is saved. The password is encrypted and should not be changed. If you enter regedit on Windows>Start>Run and confirm the command. connected. The detail level of logging can be set in palo.log A log file each exists for the Palo Excel-Addin and the Palo-Server (PaloXlAddin. Palo connections to the servers and the paths to the import/export files are registered in the Registry.log und PaloServer.6 Entries in the Windows Registry of the client Starting with Palo 2.log file can grow in size relatively quickly.log). • info: Output of general notes concerning the mode of operation • trace & debug: This output is very detailed and serves the Palo development After changes in palo. Archived files may be deleted regularly (after a backup).Administration of Palo -227- Log Files: A log file is created for each cube defined in Palo. 9. It is not advisable to ignore the error as it may lead to database corruption. 9. Archived Files: All changes are written into the archived files. port and username. hostname. • warning: Output of warnings: This error as well should be examined.log und PaloServer.

8. The cache improves on this situation by storing previously requested aggregations. Works like clear cache. The general idea behind this parameter is that consolidations with few base elements are less expensive to calculate than those with many. clear-cache-cells: Determines the number of changed based cells (a special kind of invalidation) after which a cube-cache is cleared completely. 9.sample. 9. • cache-barrier: The higher this value. please use the palo.Administration of Palo -228- 9. except that only basecells are considered. the efficiency is higher than when using it to store any kind of aggregation.ini file (palo -? at the command line shows the parameters for the command line input. the smaller the probability that an aggregated cell is cached. The aggregated cells. To set the values for any of the parameters. the performance hit is greater for aggregations whose values are computed from many cells.ini is not used). If the cache is used to store the expensive cell values only. However. • 9. if for some reason the palo.2 Parameters in the palo.9 Multithreading Multithreading means that Processes and tasks can be distributed on multiple processors / cores. have to be calculated whenever their value is requested. The settings can be found at the end of the file palo.ini. The cache is divided into logical cube-caches. Palo-Server is run on a target system with a lot of memory and a fast processor as Palo loads the data into RAM when starting. .8. however. Palo stores the calculated cell value inside the cache.8 Cache settings of the server Ideally. Otherwise it does not. There is one cube-cache for every cube. This ability of the Palo OLAP Server is available only in the Enterprise version.ini There are two parameters that can be changed to improve the Server Side Cache performance of Palo.1 Cube-Caches The base cells of the cubes that have been loaded by Palo are always stored inside the main memory of the machine the Server is running on. The memory capacity depends on the size of the databases and the calculation of consolidated values. Therefore. If the number of base elements of an aggregated cell exceeds the value of cache_barrier. the parameter should not be set to a value that is too high. This will result in the cache not being used to its full capacity.

10 Formatting the display of Palo data in Excel The directory …\Jedox\Palo Suite\xladdin\styles contains a file named "palostyles_Standard_Ice. to control the display of decimal places of numbers.xls". which you can select under "Choose style". The formatting is changed via Format > Style > Modify. This may be necessary.xls. Example: Changing the data display to two decimal places: Open the file "palostyles_Standard_Ice. we recommend that you make a backup of the existing file.xls". close Excel and then start it again.xls". Save the file "palostyles_Standard_Ice. then click on Modify… and change the number format to 2 decimal places. which enables you to control the formatting of Palo data that is retrieved via the "Paste View". . Select Menu/Format/Style…/Style name: _data. The other style sheets palostyles_*. for example. can be changed similarly. Before you open the template in Excel.Administration of Palo -229- 9. For the changes to become effective you have to restart Excel.

The required parameters are described in the table below. This includes the functions on the topics of splash. they enable you to check data structures.1 Classification of functions The Palo functions can be classified as follows: 1. Consequently. If you enter "TRUE" as actual argument here. Simply put. information on and overview of structures c) Calculations and splits 3. which you can use to calculate. will not be displayed – the cell will be "left empty"! . copy and like. if it occurs. The pure splitting functions can only be used via direct entry. you will use them again and again when you work with Palo. These functions are described below. "Palo. there are also numerous functions that primarily serve data management. You can find these above the list of functions. determine dependencies and similar matters. they serve data input and output. In addition to the table functions. various functions have been extended to accept the argument "Empty String". data output b) Data management. one example each. According to their area of use: a) Table functions b) Array functions c) Splitting functions You already learned the most important table functions in the previous chapters.Setdata” is also one of the functions. According to their purpose: a) Data input.Overview of Palo functions -230- 10 Overview of Palo functions 10. Argument "Empty String: In the current version. You can call both table and array functions via the function wizard of Excel. According to how they are called: a) Via the function wizard in Excel (Paste/Function – Category: Palo) b) Direct entry 2. an error message. Array functions help to control and analyze structures. For example.

txt.2 Input parameters You can find parameters and their description in the table below. Name Server/Database Cube: Dimension Element/consolidated element Coordinate Type Weighting factor Delete Position of base element Position Number of consolidated element.) with a semicolon (. you can also use a formula such as A1*B1.. Splash Error Storage location (path) Notes: You might have to replace the comma (. new name Position of the sibling element Value Possible entry A text (Name) such as "localhost/Demo" or a coordinate such as A1 A text (Name) such as "Sales" or a coordinate such as A2 A text (Name) such as "Europe" or a coordinate such as A4 A text (Name) such as "Variance" or a coordinate such as B8 Can be an element. for example: "n" for numeric. Old name.) and the apostrophe (‘) with quotation marks (").Setdata function is executed. two quotation marks ("”) are normally set to generate a blank string. A path such as C:\Documents and Setting\Own Files\Error log.B1.Overview of Palo functions -231- 10.txt” file. Note: the names to be changed are in the coordinates. Then the faulty data records of an import are saved in the "Error log. True or false (true = write in consolidated element) A coordinate. B10. e. A number The coordinate that holds the value to be written.g. Note: Instead of a coordinate such as A1. This is explained in the push rules. . This refers to the cell. "s" for String/Text and "c" for consolidated A number True or false (true if existing entries should be deleted) A number A number A number Two coordinates such as A1. If an argument remains blank in a formula. This depends on the country settings. in which the appropriate Palo.

DATAC. In the screen below.DATAC(Server/Database."Comment”.… Coordinate16.) Returns the value of a data cell from a cube when you use an Excel array formula."Units”) PALO. but the function works even faster because a single array formula is generated for the complete area. Alternatively. Coordinate2. examples are given in the individual functions. Coordinate2."Germany”.g. you can use the coordinates A1.DATAV(Server/Database.2002. all DATAC formulas of a worksheet are calculated at once and it is consequently faster as PALO.DATA("localhost/Demo”."Actual”. Coordinate1.Overview of Palo functions -232- In addition. Use of PALO. Coordinate1."Germany”.… Coordinate16) Reads the value of the descriptive text cell from the cube or returns it. the continuation of the text is displayed in the next cell of the array."Year”. Coordinate1. It is similar to PALO.g.DATAC() or her value may not be used in formulas."Desktop L”. for instance.DATA.: PALO.Cube.Cube. Coordinate2."Desktop L”.DATAV is only possible in related cell areas. e. you see that you can enter "localhost/Demo” or "Sales”. etc.: PALO."All Products”."Total”) This function enables display of more than 255 characters if they are entered in an array function.DATA and PALO. 10.DATAC("localhost/Demo”.DATAT(Server/Database."Sales”."Market”. In this case. as this leads to incorrect results."Units”.Cube.DATA.DATA(Server/Database.g.2002. PALO.… Coordinate16) Reads the value of the described data cell from the cube or writes it back.: PALO."Oct”. ."2006”."Oct”."Actual”. Coordinate1. A2.DATAT("localhost/Demo”. e. PALO.3 Table functions PALO. PALO."Units”) Contrary to PALO.… Coordinate16) Reads the value of the described data cell from the cube or writes it back. This function may only be used to display values from the cube."Sales”. e.Cube. Coordinate2.

Note 2: The function PALO.FALSE) Possible parameters values are 0 (or FALSE)."Years". PALO. Example: PALO.1.ECHILDCOUNT("localhost/Demo”.1.EADD can only be used in connection with an import. if calling the work sheet returns "#NV". PALO.EINDENT("localhost/Demo”.ECHILD("localhost/Demo”. ."c". Note: This function corresponds to the PALO."Regions”. instead of a value.Element) Deletes the described element Example: PALO.ECOUNT("localhost/Demo”."Regions”) returns "Germany”. if the corresponding cell is on the currently active work sheet. PALO. If however.DATAX(Server/Database.EADD("localhost/Demo". because the import wizard recalculates the database.Consolidated Element.ECOUNT(Server/Database. 1 (or TRUE) and 2 0: Removes no elements of the dimension before importing 1: Removes all elements of the existing dimension before importing 2: Removes all existing elements of the C-dimension before importing.Dimension) Returns the total number of elements in the described dimension. PALO."Regions”.FALSE) – consolidated element = BLANK here. Compare the example in the "Importing and Exporting Data” chapter.EINDENT(Server/Database."Months".Dimension. Example: PALO.EFIRST(Server/Database."Italy”) returns "3”."n". in which Excel formulas are processed.ECHILD(Server/Database. the computation is limited to the currently active table.Consolidated Element) Returns the number of base elements in a described consolidated element. coordinate2."South”) returns "3”."”.EDELETE(Server/Database. Example: PALO. Compare the description in the "Importing and Exporting Data” chapter.3) returns "Spain” PALO."South”. Otherwise."Qtr."Regions”. Reason: the sequence.EDELETE can only be used in connection with an import. it may be necessary to manually trigger a re-computation of the work sheet.Dimension.Overview of Palo functions -233- PALO.EADD(Server/Database. cannot be determined.Type. Example 1: PALO.Position of base element) Returns the name of the described base element.Dimension.EDELETE("localhost/Demo”. you switch to a different work sheet and later come back to the work sheet which contains such PALO."2010"."Year". Example: PALO.) Returns the value of the described element from the cube.Weighting factor.Cube. because it is not necessary any more to compute the whole workbook.ECHILDCOUNT(Server/Database. Palo would execute that parameter for the complete dimension that happens to be found first.Dimension."Products”. PALO.DATA-function.… coordinate16.Delete) Adds the described dimension element or structures to a database. During an import the command delete will only be executed one time with the first PALO. basic elements are not deleted.EADD("localhost/Demo”. This will always be necessary.Element. However. Example 2: PALO.EADD () and then it will be ignored.DATAX-formulas. Example: PALO.Dimension.1"."Subnote XK” Note: The function PALO. coordinate1."Years”) returns "8” PALO. Note 1: Make sure that all EADD functions referring to the same dimension use identical parameters (true or false).EFIRST("localhost/Demo”.Dimension) Returns the element in the described dimension. because the deletion is controlled via the import.Element) Returns the hierarchy level of an element within the dimension. This speeds up the computation.Consolidated Element.

PALO.ELEVEL("localhost/Demo”. Number of Consolidated Element) Returns the name of the n th parent of the specified element.A1. PALO. into an error file.ELEVEL("localhost/Demo”.EPARENT("localhost/Demo”.Storage Location. Example: PALO. Example: PALO."Regions”."Italy”) returns "Austria”.2) returns "New Group”. PALO.EPARENT("localhost/Demo”.Cube.Dimension."West”) returns "1”. only the parameter "number" = "1" is possible. Example 1: PALO.Dimension.Coordinate1.Overview of Palo functions PALO.ERROR_LOG (F3.Dimension.Element) Returns the described element in the dimension.C1.E1. -234- Note: If an element occurs only in one consolidation.EISCHILD("localhost/Demo”."Regions”. Note: The function PALO. Compare the example in the "Importing and Exporting Data” chapter."Regions”. Example: PALO.Dimension.Dimension.D1.EPARENTCOUNT(Server/Database."West”.txt".Element) Returns the number of hierarchy levels within the dimension.Element.Element) Returns the number of consolidated elements.Element) Returns the name of the preceding base element.ERROR_LOG(Error. in which the described element is contained. Compare the example in the "Importing and Exporting Data” chapter. Example: PALO."Italy”) returns "1”.Value."Germany”) returns "0”."Notebook TT”.New Name) Renames the described element.EPARENT(Server/Database.EINDEX(Server/Database. because this has been created and "Italy” is consolidated in it. If an element occurs in several consolidations.ERENAME("localhost/Demo”."Regions”."Notebook TS” Renames the element "Notebook TT” to "Notebook TS”."Regions”.ENAME(Server/Database.Dimension."Regions”."Regions”. Coordinate2.B1. because the renaming is controlled via the import.EISCHILD(Server/Database.Dimension.… Coordinate16) Example: PALO. Example: PALO. PALO.EPREV(Server/Database.Element) Checks whether a consolidated element contains the described element. Example 2: PALO."Products”.ENAME("localhost/Demo”."Regions”.Position) Returns the name of the element of a specific position.ERENAME can only be used in connection with an import."Germany”) returns TRUE.EINDEX("localhost/Demo”. the "Number” determines which consolidated element is returned. (The first position is 1) Example: PALO. which follow after the element. Example: PALO. Note: The function PALO. PALO.ENEXT("localhost/Demo”.Element) Returns the name of the following element within the dimension. Example: PALO. Example: PALO.Dimension.SETDATA_Error can only be used in connection with an import.EPREV("localhost/Demo”."c:\Error. PALO. PALO.Old Name. ."Italy”.Consolidated Element."Regions”."France”) returns "2”.ERENAME(Server/Database.2) returns "France”.Dimension.2) returns "2” if there is a consolidated element "New Group” and "Italy” is consolidated in it."Italy”) returns "Portugal”."Italy”.1) returns "South”. which does not adhere to import specifications. PALO.F1) Writes the data records of an import file.ENEXT(Server/Database. PALO. Example: PALO."Regions”.ELEVEL(Server/Database.EPARENT("localhost/Demo”."Regions”."Italy”.EPARENTCOUNT("localhost/Demo”.

. this function writes the values of the elements in the cube – same as PALO. The sibling.2}) After this import command is Jan a C-element.(Server/Database."Regions".{Element.0) returns "Italy". Example: PALO.$A10."Regions".{0. They are written into the cells specified through the coordinates.1) returns "Spain"."localhost/Demo".SETDATA () ."Jun". the name of the element is returned.ESIBLING(Server/Database. PALO. PALO. ."Months"."Greece"."Market". If the element exists.Element) Returns the type of the described element (numeric.Dimension."Jan".1. The "Value” parameter is a cell of the Excel worksheet.$C$1."Portugal".FALSE."Italy".g. The return is in English (numeric. PALO.Cube."Regions”. Example: PALO. Consolidationfactor.0}). if not. e.$E$2.$A$2. Example: PALO.EUPDATE("localhost/Demo".Coordinate2.SETDATA($G$1."Regions”.Splash. string or consolidated)."C".Element.ETYPE(Server/Database.Overview of Palo functions -235- PALO.EUPDATE=("localhost/demo". the sibling found directly above has the position -1.False.) Example 1: PALO.Dimension.Dimension."West”.ESIBLING("localhost/Demo". Example: PALO. the sibling in the hierarchy view found directly below has the position 1. The element itself has the position 0.…) If condition is TRUE. consolidated with 1xFeb and 2xJun."Germany”) returns "1”."Units". etc.$D$2.SETDATA(B10*C10*$D$7. Alternatively.ETOPLEVEL("localhost/Demo".ETYPE("localhost/Demo”. PALO.Value.{"Feb"."Regions".Position of Sibling Element) Returns a sibling element of the specified element. which is to be returned is specified with a position number.ESIBLING("localhost/Demo".SETDATAIF(Condition."N". Otherwise.$A$7.Consolidated Element.Elementype.$A$1.SETDATA(Value. "# Name?" is returned."Portugal".D$9) Writes the values of elements into a cube.Element) Returns the weighting factor of the described element at consolidation. A correction of the last nonsense example would be the following import: =PALO.$B$1) Example 2: Palo.Dimension.Element. A1."Italy”) returns "numeric”. To demonstrate this function here a nonsense example: PALO.and if the condition is FALSE.Coordinate2.Coordinate1."Regions".Cube. PALO."Jan"."Regions”) returns "2”.$A$6..Server/Database. nothing happens.EWEIGHT(Server/Database. PALO.Coordinate1. 0) returns "#Name?". set it to "False”.-1) returns "Italy".ETOPLEVEL(Server/Database.ESIBLING("localhost/Demo". Example: PALO.Element.…}) Updates an element after the specified data.$A$5. Therefore the name of the element and the position "0" is entered.….EWEIGHT("localhost/Demo”.. PALO.$A$1. PALO. Set SPLASH to "True” if you want to write in a consolidated element.ESIBLING("localhost/Demo".Dimension) Returns the number of hierarchy levels in a dimension."Months".EUPDATE(Server/Database.$A$4. etc. it can be a formula.Consolidationfactor.Splash. text or consolidated). Note: This function can also be used to verify whether an element exists in a dimension.

PALO. you must close it with the keyboard shortcut CTRL+SHIFT+ENTER. You are already familiar with this from the comment fields. Conclude the entry by pressing the CTRL+SHIFT+ENTER keys. When you enter the function.DATABASE_LIST_CUBES(Server/Database) Example: PALO. Then the following screen appears: PALO. in an area you define in advance.Cube) Example: PALO.Dimension) Example: PALO.DIMENSION_LIST_CUBES(Server/Database. It is the same for all other functions in principle."Sales") The function lists the dimensions of a cube in an area you define in advance. close it with CTRL+SHIFT+clicking OK using the mouse. you must close it with CTRL+SHIFT+clicking OK using the mouse. The Procedure is explained using the example of PALO. The results are then returned in this area.DIMENSION_LIST_CUBES("localhost/Demo".DATABASE_LIST_DIMENSIONS(Server/Database) Example: PALO. Then enter this function in the first cell of the area. But you can also define the area somewhat bigger. If you call the function via Paste/Function.DATABASE_LIST_DIMENSIONS("localhost/demo") The function lists the dimensions of a database in an area you define in advance. ..CUBE_LIST_DIMENSIONS.g. Define the corresponding area of an Excel worksheet (e.CUBE_LIST_DIMENSIONS (Server/Database. PALO. Cells not required remain blank in the output. If you call the function via Paste/Function.4 Array functions You must absolutely adhere to the following: The array functions require some preparatory steps: 1. in which cubes a dimension is contained.CUBE_LIST_DIMENSIONS ("localhost/Demo". 2.DATABASE_LIST_CUBES("localhost/Demo") The function lists the cubes of a database in an area you define in advance. PALO. You must highlight an empty range in a worksheet. 3."Months") The function lists. B3:B11).Overview of Palo functions -236- 10.

Element) Example: PALO. PALO.SUBSET() as the basic function. Example: In the database "Demo" was created the attribute "Color" for "Products" and nine products have received the attribute "black".Element."Color"."West") The function lists in a predefined area all child elements of a consolidated element. because the index 10 does not exist.Dimension. Empty String) Example: PALO. in an area you define in advance."Color".ROOT_LIST_DATABASES("localhost") The function lists the databases that exist on the server.ELEMENT_LIST_ANCESTORS(Server/ Database.Empty String) Example: PALO.Dimension.TFILTER().ELEMENT_LIST_SIBLINGS (Server/ Database. PALO.PICKLIST()."Products"."months") The function lists. PALO. PALO. PALO.Dimension."Jan") The function lists in a predefined area all parents of an element. PALO.Dimension.DFILTER(). 3) displays the 3rd of the nine products."black". . PALO. which elements are contained in a dimension.Element) The function lists in a predefined area all siblings of an element.DIMENSION_LIST_ELEMENTS("localhost/demo".EALIAS(Server/Database. see the separate chapter "Filter Functions with Subsets".DIMENSION_LIST_CHILDREN("localhost/Demo"."Color". PALO.ELEMENT_LIST_CHILDREN (Server/ Database. In addition."Months". PALO. PALO.SORT() are sub-functions of PALO.ELEMENT_LIST_ANCESTORS("localhost/Demo".Alias.ELEMENT_LIST_PARENTS("localhost/Demo".Element. the function PALO.ELEMENT_LIST_DESCENDANTS(Server/ Database."black") displays this nine products.Attribute."Products".Overview of Palo functions PALO. entry of the server suffices.5 Filter functions The filter functions PALO. 10) displays again the nine products."Monitors") The function lists in a predefined area all children and grandchildren of an element.HFILTER().EALIAS("localhost/Demo".SUBCUBE() is required when using PALO. The comprehensive description of the filter functions. PALO. Note: Even if "Server/Database” is written in the formula editor.Dimension) Example: PALO.ELEMENT_LIST_PARENTS(Server/ Database. PALO.ELEMENT_LIST_DESCENDANTS("localhost/Demo".Index) The function lists.EALIAS("localhost/Demo"."black".Dimension. all elements with the matching alias. They do not work independently.DFILTER() and PALO.Consolidated Element) Example: PALO. but need PALO.AFILTER()."Regions".EALIAS("localhost/Demo".DIMENSION_LIST_ELEMENTS(Server/Database."Products"."Jan") The function lists in a predefined area all ancestors of the given element.ROOT_LIST_DATABASES(Server) Example: PALO. in an area you define in advance."Months". in an area you define in advance. PALO. 10.Dimension.SUBSET ()."Products". -237- PALO.

if the actual data for one year should be used for planning the subsequent year.2006 Please note: When you enter a number with a sign you have to put an apostrophe in front of the sign. you can also use Copy Dimension:Element. Otherwise.6 Splitting functions The splash functions such as COPY and LIKE belong to the splitting functions. As a result.Overview of Palo functions -238- 10. Splash Parameters ! Example: !10 You overwrite all following base elements with this value.2006 Like The Like command contains the COPY command.” If the consolidated element is "0” at entry. Splash Parameters !! Example: !!10 Two exclamation marks followed by a value add this value to the existing values of all subsequent base elements. This can be meaningful.Year Example: 12000000 Like Actual. for example. splitting is according to existing shares. Copy The COPY function copies the contents and splitting structures of a consolidated element into another one. The formula is: Copy Element. Splash Parameters # … % Example: #10% This parameter changes the existing values of a consolidated element by the entered percentage. The formula is: NUMBER Like Element. If you assume that a consolidated element has the value 120 and is composed of 19 base elements. Example: '-12000 Like Actual. Contrary to the previously cited groups. a different value estimate is possible than that in COPY. Splash Parameters # Example: #250 Equally splits the entered value among all subsequent base elements. If you want to enter the description more precisely. the value 341 is replaced in 19 base elements *10 = 190.2006 . It uses the shares of the base elements to split the values placed before LIKE. With "!10”. As a result.Year. Example: Copy Actual.2006 or alternatively: Copy Datatypes:Actual.Year. they cannot be controlled via the function wizard from Excel (Paste/Function). then entry of "!!10” results in 120+10*19 =310. splitting is uniform. 570 becomes with #10% = 627.

If you press ENTER twice one time after another: a) Creation of the new element with the name (e. End the service using the mouse button on the right and clicking "End the Palo service” in the context menu. . "Smith Corp”) is completed. created a new dimension and opened it. a new element is created. Start the service with a right-click and select "Start the Palo service” in the context menu. restarting the PaloSuiteMolapService will not work properly. additional element is created. When you press ENTER the first time.Tips -239- 11 Tips 11. Please note: The name of the database folder may not contain any blanks! Otherwise. Palo stores your databases in the folder C:\Program Files\Jedox\Palo Suite\olap\data In order to copy or rename these databases or to create a backup of them or transfer them to a different computer. you must press ENTER again to confirm. please do the following: Go to the Palo Service Manager icon in the task bar. Go back to the Palo Service Manager in the task bar. Create a copy of the relevant database folder in the same directory (in the same manner as with an ordinary folder).1 Tip 1: Creating database backups By default. this is C:\Program Files\Jedox\Palo Suite\olap\data. the Palo-Server needs more or less time to update its state) 11.. The icon switches to: (Depending on the number and sizes of the databases in the directory …olap\data. As a default.2 Tip 2: Creating new elements You opened the Modeller.g. After you have entered the name. and at the same time b) A new. The icon switches to: Now go to the directory where the Palo databases are saved. It is highlighted and can be replaced by a suitable name.

for example.DATAT. 11. This will allow you to perform all normal calculations using consolidation factors. These figures need to accumulate to get a quarterly report (consolidation factor = 1).5 Tip 5: Copying cell contents (copy & like) This tip refers to copying using the copy command. If you want to cancel the array. Creation of an array: Select the cells in question. Problems sometimes occur with the formula due to spelling of the dimension. But each month is only allocated a share of 1/3 (factor = 0.). In this case.. Conclude this entry by pressing the CTRL+SHIFT+ENTER keys. 11. You cannot easily make changes in this array. The report contains key figures that represent full-time employees. Then click with the mouse in the Formula Bar and press CTRL+CAPS LOCK+ENTER: The array functionality is turned off.3 Tip 3: Display comments in an array You create a comments field. e. you also want to be able to select quarterly or annual results. In the same way. you must ensure that the name matches the spelling of the dimension name exactly. Otherwise. You have now generated an array which can be recognized by the curved brackets (braces). You define an element with the factor "1” for each of the three months and total up the cost.DATAC and change this to PALO.4 Tip 4: Use of consolidation factors You can also use the options.g. a multiple of the workforce would be the result. How you set this up is described in the "Comments” section where we talk about creating or cancelling an array. the number of employees is largely identical each month (permanent workforce). It is longer than 255 characters. Besides monthly results. The second consolidated element has the same months. . for the following task: Imagine a report that is structured variably. you obtain the average number of full-time employees for all three months.g. proceed as follows: Select exactly the cell area of the array-function. Consequently. On the other hand.. Caution: The array is created with the data that are in the cell that you selected first. to the formula. Quarter1 and Quarter1 cum. Click the "C” from PALO. you have cost positions. write "Datatypes” and not "datatypes”.Tips -240- 11. Now you have the correct number in the sum total. Of course. the number of employees may not be added up in a quarterly report. for example. This is required to display text information in a continuous form.25 each. which is composed of these four quarters with a consolidation factor of 0. which consolidation factors offer. As a result. Consequently. Pay attention to the sequence. for example. How can you take this requirement into consideration? Create two different consolidated elements per quarter (e.333). you can now create the other three quarters and a special year element.

EADD together in one worksheet.. set the cell format to the format of the source data or to "String". . On the other hand. Afterwards open the workbook with the SETDATA functions (e.SETDATA and PALO.g. On the other hand. 11. This prevents a possible conflict between the formulas caused by the interdependencies. 11. and change the "PALO.6 Tip 6: Importing text files The basis of this tip is an import using the following pattern (in this example.Tips -241- 11. To prevent this.g. Palo outputs an error message (e. this procedure is not recommended. This can result in problems in dependent forms. data are formatted automatically during the import. Then close this workbook (e.xls). enter the formula "=Value(F1)” in the neighboring cell (here: G1).SETDATA” function correspondingly.SETDATA and PALO. The cell format is created when "Continue” is clicked. But the EADD functions must then end as a mandatory condition at "FALSE”. It also provides a practical benefit. especially if you import the same type of data from other sources at regular intervals. In this case. if you click the "Finish” button.g. It is better if you process both functions in separate workbooks. the critical place is the cell "F1"): The value in this cell is not recognized as a number in a few installations and may be the case even if the field is formatted correctly otherwise. you can import the elements using EADD functions. date.xls) and perform the corresponding imports. "Cannot write text in a numeric cell”). Consequently. it is ignored.EADD You know that you should not use PALO.7 Tip 7: Formatting at import If you use the Data Import Wizard. you only need the EADD functions for the first setup of elements or when importing new elements.g. currency and number format).8 Tip 8: Using PALO. The auto-format in cell A1 sets the other values according to regional characteristics (e. Import Element.. It is possible to use these functions in different worksheets of one workbook. Import Data.. To get around this. If you proceed this way. because you will probably need imports for SETDATA functions more often.

. and click "Next”. you can now define the necessary parameters in the Modeller. but since we plan to develop a new application. In the next step. Then click on "Start Palo Wizard…” to open the "Palo Wizard"-dialog: Select "Create new database”. Confirm with "OK”. The database that you just created can now be used. The Palo Wizard will then close. 12. You will then get a message that the database has been created successfully.1 Creating databases Our example is called "Sample”.Application example with Palo and Worksheet-Server -242- 12 Application example with Palo and Worksheet-Server 12. the first step is to create a database. close by clicking "Finish”. and select the "Palo Modeller”. Enter the name "Sample” next to database in the following dialog window. Open a blank Excel-workbook. Leave the server settings at "localhost”. Click Palo.1. The Palo cube is created in the first part.1 Part 1: Developing of a Palo cube This example is divided into three parts.

You will get a blank view. .2 Selecting databases You know that the Modeller serves as a tool to create and manage data structures with the help of cubes. Open the Modeller. and select the database "Sample”.Application example with Palo and Worksheet-Server -243- 12. and you can enter the new dimensions. dimensions and elements.1.

Months.3 Creating dimensions We need the dimensions Projects. Click on the text ("Hit RETURN to add Dimension…”) and press "ENTER”.Application example with Palo and Worksheet-Server -244- 12. Create all further dimensions accordingly. 1. Resources. the dimension name is created (picture 2). Another "New dimension” is created with the second click. Name this dimension "Projects”. Then double-click "ENTER”. Days and Measures. Creating a new dimension 2. Finally. .1. you can see the just created dimensions in the Modeller (to the right). After the first click. New dimension with the name "Projects” The first new dimension is created and marked to be renamed (picture 1). Name it "Resources”.

second hit will create a new. Assign the name "All Projects”. 12. and you get a new element. Click the dimension "Projects” in the Modeller: Hit "Return”. • 102 Mayer Ltd. Assign the names you see on the right: . they should be consolidated and then displayed hierarchically.1.1 Projects For this dimension you need the structure displayed below: All Projects Internal • 001 Website • 002 Flyer External • 101 Smith & Co. First create all elements displayed above. If necessary. Hit "ENTER” twice. additional element. you can create the respective elements. First hit will change the name.4 Creating elements Once you have dimensions.Application example with Palo and Worksheet-Server -245- 12.1.4. • 103 South Corp.

Select "Internal”. Select the two elements 001 Website and 002 Flyer and add them to the "consolidated elements” window using the blue arrow. -246- You will see the following window in the next step: Close the procedure by clicking the green checkmark.Application example with Palo and Worksheet-Server Now the elements must be consolidated. . Then click "Consolidate elements” at the bottom of the window.

1. This time do not consolidate via the function at the bottom of the window. Press "ENTER” twice. Move it using the arrow buttons to the first place. 12.2 Resources Now create the elements of the dimension "Resources” in the same way. "102 Mayer Ltd. In conclusion.” to "External” in the same way. second hit will create a new. Create the base elements Frank.”. Bill.4. Mike. Click "Resources” to activate the dimension. instead use the context menu (right-click on "All resources”). First hit will change the name. You see the following screen: The employees should now be consolidated to "All resources”. Hit "ENTER” twice.: .” and "103 South Corp. 102 Mayer Ltd. display the elements hierarchically:. Create a new element by hitting "ENTER”. The following screen is displayed at the end: We created "All resources” as the last one. additional element. Compare it with the structure described in the beginning: All Projects Internal • • 001 Website 002 Flyer External • • • 101 Smith & Co. 103 South Corp.Application example with Palo and Worksheet-Server -247- Consolidate the elements "101 Smith & Co. Tom and Bob and consolidate them to "All Resources". Then consolidate "Internal” and "External” to "All projects”. Assign the name "Frank”.

You will see the consolidated elements in the right window. Enter "Jan” 2.Application example with Palo and Worksheet-Server Next select all employees and move them to the right using the blue arrow.3 Months Create the months via the "fill” function in Excel and copy them to Palo. and enter the months "Jan”. Fill out months 3. -248- Display the dimension hierarchically. "Feb” and "Mar” in cell A1:A3.e. and drag the marking down to cell A12.1. Close the consolidation by clicking the green checkmark. . 1. You will see the structure described in the beginning: 12. Months filled out Now highlight these months. i. Mark these cells.4. open a blank Excelworksheet. and copy the marked section using the context menu.

Check the result using the hierarchical display: . Qtr 4 and Year. Qtr.Application example with Palo and Worksheet-Server Open the Modeller. Hit Return to activate the area "Elements”. click the last element and press ENTER. 1. Palo allows you to paste elements via the context menu. and click "Months”. Qtr. "Quarters” and "Year” are still missing. 2.e. Name it: Qtr. Create them in the now familiar way. i. 3. A new element is created. -249- You can see the result below: Now perform the corresponding consolidations.

Application example with Palo and Worksheet-Server

-250-

12.1.4.4 Days
Create days The days are best created via the "Fill” function from Excel. Prepare by providing a total of 31 days.

The days are copied into the dimension "Days”. Use the copy command of the context menu in Excel.

Days have been created.

Then open the Modeller. Click the dimension "Days” and paste the elements via the context menu.

You obtain the following result:

Application example with Palo and Worksheet-Server

-251-

Add an element "All days”, i.e. click element "31”, and press Return. Name the new element "All days”. Then consolidate all days in this element.

You can see the hierarchical display on the right:

Application example with Palo and Worksheet-Server

-252-

12.1.4.5 Measures
This dimension is composed of the two elements "Actual hours” and "Budget hours”. Create these elements:

12.1.5 Creating a cube
Click the "Database” button after you have filled the last dimension with elements. Then you return to the screen with the existing dimensions. Alternatively, you can click "Database card”. The next window displays the dimensions that you created, i.e. Projects, Resources, Months, Days and Measures.

A click on "New cube" will open another window.

Application example with Palo and Worksheet-Server Enter "Timesheet” next to name. Assign the listed dimensions to the cube by selecting them. Click "Projects” and keep the shift key pressed down, then click "Measures”. You will see the selected dimensions as shown below:

-253-

Now click the blue arrow pointing to the right. This is how you assign dimensions to a cube. Click "Finish” concluding the procedure. The cube is created. You can see the result in the screen below:

Application example with Palo and Worksheet-Server If you, after the completion of the cube, want to change the name of the dimension, then open the context menu by a click on the right button of the mouse:

-254-

It sometimes happens that companies change their department or area names. In such cases, it makes sense to be able to change a name without having to reinstall all data. The first task is now solved. End the Modeller by clicking "Close”.

Paste Element and Paste Data Function.1 Inserting structures from Palo Open the "Paste View” dialog. . Paste View.1 Creating project reports Open a blank Excel-worksheet.1. Retrieve the required structures from Palo using the options you know. e. Select the dimension "Projects” for Row titles and "Measures” for Column titles.2.g. Close the dialog by clicking "Paste”..Application example with Palo and Worksheet-Server -255- 12.2. We develop an application with the newly created cube. 12.2 Part 2: Creating Palo worksheets Now let’s get to Part 2. 12.

Then the application appears as follows: Move the consolidated elements downward. Click row 8 to do that. Position the mouse pointer on the element. Hold the SHIFT KEY and the left mouse button down and at the same time drag the row down to the line between rows 15 and 16. so that a crosshair appears. .Application example with Palo and Worksheet-Server The following screen appears: -256- Open the consolidated element "All projects” with a double-click. Proceed in the same way for the two subsequent consolidated elements.

Move them. the shift key combines two procedures.Application example with Palo and Worksheet-Server The elements should be arranged as follows: -257- 1. The cut and paste of the data belonging to "All projects” (row 8 to row 16) and the subsequent delete of the now blank row 8. so that they are inserted above "All projects”. the elements above 15 have been moved from rows 9 to 15 (old) to rows 8 to 14. After moving "All projects” The element "All projects” has now been moved into row 15. The screen shown to the right appears: . In other words. Moving "All projects” 2. Proceed in the same way with the elements "Internal” and "External”. At the same time.

Click "Paste elements” and select "Resources”.Application example with Palo and Worksheet-Server -258- Select the area E7 to I7. Open the "Select All” dialog. and mark the 2: .

Then click field E8 and select the "Paste Data Function” Palo dialog. Then click "Paste”. .Application example with Palo and Worksheet-Server Your screen will look like this: -259- Reduce the size of column D. Make sure that the cube "Timesheet” is selected and also "Guess Arguments”.

Insert a Column graph via Insert/Chart.2.1.2 Inserting charts Select the area A7:C12.Application example with Palo and Worksheet-Server Copy the formula to the range E8:I15. . Your screen then looks as follows: -260- 12.

Application example with Palo and Worksheet-Server Adapt this chart to range A16:I30. The following screen appears: -261- .

double-click "Years". i.2. You will see the following: Now switch the dimension "Year” to "Jan”. Enter the following values: 800. open "Qtr. 600.1” and then select "Jan”. .3 Entering planned hours Enter the number of planned hours for the individual projects in column C ("Budget hours”).Application example with Palo and Worksheet-Server -262- 12. 400.1. Remember that values to be splashed must begin with the special character "#”. 700 and 400.e. The corresponding results in the chart change immediately.

The chart immediately adapts as well. Select the area C7:C15. Select E7:I15. The format is applied automatically. Click the "Format Painter” icon from Excel (brush).Application example with Palo and Worksheet-Server -263- Please note how Palo breaks down the annual values of each project to get a monthly value. Your screen then looks as follows: .

you see the following screen: Expand the display to make "Internal” projects visible. Only the consolidated element is visible for "External”.Application example with Palo and Worksheet-Server -264- 12. Call the Palo "Paste View” dialog. Move the dimension "Projects” into the Column titles and move "Days” into the Row titles.2. Double-click the consolidated element "All days” to get the individual days. Finally. Your sheet should now look like this: . delete row 8 ("All days”).2 Creating time entries Open a new Excel-workbook and create a time entry sheet for current project hours of staff members. After you click "Paste”.

Set the dimension "Year” to the month "Jan” again.2.2.1 Entering times Set "Resources” to the first staff member.Application example with Palo and Worksheet-Server -265- 12. Your sheet should now look like this: .

Application example with Palo and Worksheet-Server

-266-

Frank can now enter his "Actual hours”. Enter Frank’s data for the first three days of the month. Enter the values 8, 4 and 2 under "001 Website” and values 1, 3 und 6 under "002 Flyer”. Observe how the consolidated data change for "Internal” and "All projects”. You can see the result for Frank below.

Now it’s Bill’s turn. Double-click "Frank”, and change the element to "Bill”.

Application example with Palo and Worksheet-Server

-267-

Enter the first three days for him as well: "001 Website” 4, 8, 6 and "002 Flyer” 4, 0, 2. Observe how the consolidated values change here too. In reality, Bill would enter his data on another PC, but nevertheless, the result would be available immediately.

Application example with Palo and Worksheet-Server

-268-

12.2.3 Transferring data entries to reports
The entries for Frank and Bill have been completed. Now return to your report. You can see that the data have been transferred automatically. At the same time, the view has changed.

If you used Excel only, you would use the formula
=SUM([Book2]Sheet1!$D$8:$D$38)

in row 8, for example. In that case, Sheet1 may only contain data for "Bill” (cf. the last view of Book2 and the subsequent excerpt). The value in F8 is 18, which is the sum of the website hours from Bill.

This total 18 comes from here. You would need an identical table for "Frank”. It does not matter in Palo whether the cell A3 displays "Frank”, "Bill” or "All resources”. The PALO.DATAC formula ensures that the correct values are written into the fields of Sheet1. This is the magic of Palo … …. and this completes the 2nd part.

Application example with Palo and Worksheet-Server

-269-

12.3 Part 3: Creating of a web application with Palo, Excel and Worksheet-Server
The next part explains how you can create an Internet solution using a combination of Palo, Excel and Worksheet-Server. You can convert any Excel-workbooks into server-based Web applications (Excel-toWeb) and hence enable you to display and edit Excel-worksheets in Web browsers. This way, you can use enterprise spreadsheets independent of local Excel installations in an Intranet or worldwide on the Internet.

12.3.1 Preparing of the Excel workbook
To simplify our work, we will copy the Excel Worksheets books created in the 2nd part above into one book. Open Book1. Save it as "Timesheet.xls”. Then switch to Book2. You can move the time entry sheet into the "Timesheet.xls” file via Edit/Move or Copy Sheet. Move this overview before Sheet2.

Make the following changes: 1. Change the name of Sheet1 to "Report”. 2. Change the name of Sheet1(2) to "Input”. 3. Delete the table sheets starting with Sheet3. 4. Set the dimension "Year” to "Jan” in "Report” if necessary.

Application example with Palo and Worksheet-Server Your screen now appears as follows:

-270-

The Worksheet-Server requires another change in the formatting. Select the area A16:I30, and link the cells in Format/Cells/Alignment and Merge cells here.

Now switch to the sheet "Input”. hide row 5 (showing "Actual hours”). Hide first two rows. Therefore. Mark the area C8:C15 and click Format/Cells and then register-card "Protection”. .Application example with Palo and Worksheet-Server The first two rows of the report are irrelevant for the Web report. Remove the checkmark in the box "Locked”. in addition. hide them: -271- In the next step. prepare the area C8:C15 ("Budget hours”) for new data entry. Do the same for range A3:A5.

Let’s create the actual menu. Rename Sheet2 "Start”. The table looks as follows: Now add a menu: Use the still blank Sheet2 in this workbook. How about a header "Welcome to your Time Recording-application” and two simple links to both tables? Enter "Welcome to your Time Recording-application” in cell B3.Application example with Palo and Worksheet-Server -272- Then unlock the ranges D8:E38 and A3:A4 (Format/Cells/Protection and the checkmark next to "Locked” is removed). . First move it in front of the sheet "Report”. Click cell C5. and call Worksheet-Server/Insert Hyperlink.

2. Reduce the size of columns A and B. Format the greeting in Arial 14 and bold 3. . -273- Click cell C7. Enter "Project Budgets & Analysis” for a Friendly Name . Switch the field next to Internal Hyperlink to sheet to "Report”. Replace the font colour of the hyperlinks (blue) with black. Then enter "Project Hours” next to Friendly Name . and call Worksheet-Server/Insert Hyperlink again. Then the start-up sheet appears as follows: Finally some cosmetic changes: 1.Application example with Palo and Worksheet-Server Switch the field next to Internal Hyperlink to sheet to "Input”.

Application example with Palo and Worksheet-Server Your start-up sheet now looks as follows: -274- Your application is finished! You can now upload this application to the Worksheet-Server. The application is then available on the Web Server. you may also have your individual path definition of course.3. the folder "kd305016355” should be set up in the directory C:\Programs\Worksheet-Server\WSS\root\folders. A message displays the progress. In the following dialog.2 Creating of the Worksheet-Server application Click Worksheet-Server and then Save.html . set the "Upload” folder as storage location. Leave "Timesheet. The data are transferred to Worksheet-Server. Note: A different path may be defined for new installations of Worksheet Server: C:\Programs\Jedox\Worksheet-Server and. Worksheet-Server confirms the successful transfer shortly afterward. With the installation of Worksheet Server.zip” as file name. "Uploads” is a subfolder of "kd305016355”. regardless of default settings. Browseraddress:http://localhost/folders/kd305016355/timesheet/index. and click Save. 12.

Enter "bill” as user name and password in the following list. you can add Bill as your new user. Then click "Save”.1 Setting up users You can set up and manage users in the next step. First log on as Administrator (admin / admin). You might have to confirm the password. When you click "User and Passwords”. and the Web application opens in a browser. -275- 12. You see the following screen after you click "LOGIN”.3. .2.Application example with Palo and Worksheet-Server Click the indicated path.

It takes you back to the login screen of Worksheet-Server. Log in as Bill. which you defined as your start-up page in the Palo/Excel application. . First login as "Bill” 2. you must confirm or change the password. If you are logging in as "Bill” for the first time.Application example with Palo and Worksheet-Server The view is switched to "Edit User List”.3.2. Dialog for changing the password 12.2 Data entries by users Next you see the page. 1. -276- End this dialog by clicking "Logout” in the upper right.

you might have installed an older version of Worksheet-Server. The following screen is displayed: If not "108” at a minimum. Click "Project Budgets & Analysis”.zip”.Application example with Palo and Worksheet-Server You are now in the Web application. and reopen the file "Timesheet. install a newer version. When you now start Worksheet-Server. . Close Excel.xls” after the installation of Worksheet-Server. check the version by clicking Worksheet-Server/About in Excel. you can see the required information. Save the file once again as "Timesheet. -277- Note: If no values are displayed. In this case.

Application example with Palo and Worksheet-Server -278- 12.3 Comparing the Worksheet-Server and Palo/Excel Compare the views.xls”. Above: The "Report” sheet on the Worksheet-Server. . Right: The same sheet in Excel as "Timesheet.3.

Hit "Back” in the upper left corner and then "Project Hours” in the start-up window. Then you can enter data for Bill. Enter "001 Website” 3. Observe how the consolidated fields change. . 6 for the first two days. In the "Project Hours” page. select "Feb” and "Bill”.Application example with Palo and Worksheet-Server -279- The Web application is linked directly with the Palo Database. 5 and "002 Flyer” 8. In the browser. switch the month from "Jan” to "Feb”.

Select the sheet "Report”.Application example with Palo and Worksheet-Server .xls” file. Call the "Timesheet. Click "Back” and then "Project Budget & Analysis” again. The data that you just entered for "Bill” are contained in the Web application: -280- Now check what is in the Palo/Excel application. The data appear in Excel momentarily. You have now experienced how Palo and Excel can be used via the Internet thanks to Worksheet-Server. . We have reached the end of the 3rd part. Data are always consistent and up-to-date. and switch the month from "Jan” to "Feb”.

239. 105. 95. 77. 88. 83. 87. 85. 71. 40. 67. 231. 104. 235. 58. 264 Deleting a Server-Connection · 220 designer · 108 dimension · 9. 101. 15. 237. 87. 275 Alias · 146. 62. · 153 delete · 29. 82. 94. 247. 63. 250. 248. 223. 249. 12. 34 B backup · 239 base elements · 26. 76. 231. 209. 86. 41. 106. 82. 96. 253 Cube #_CONFIGURATION · 116 Cube #_GROUP_CELL_DATA · 118 Cube #_GROUP_CUBE_DATA · 114 Cube #_GROUP_DIMENSION_DATA_<Name of dimension> · 115 Cube #_GROUP_ROLE · 111 Cube #_ROLE_RIGHT_OBJECT · 109 Cube #_USER_GROUP · 112 Cube #_USER_USER_PROPERTIES · 113 Cube #_USER_USER_PROPERTIES · 112 editor · 108. 85. 89. 76. 242. 21. 233. 232. 119. 231. 54. 233. 234. 238. 257. 240. 237. 56. 236. 147. 82. 104. 240. 125. 86. 94. 15. 77. 258 empty string · 230 enable the array-functionality · 93 errors at import · 58 ETL tools · 57 Excel Pivot Tables · 189 exporting data · 62 F filter functions · 146 Format Painter · 263 Formatting the display of Palo data in Excel · 229 G groups · 238 Guess Arguments · 12. 235. 85. 243. 231. 71. 236. 234. 236. 240 create new database · 20 creating databases · 242 cube · 9. 58. 39. 104. 125. 246. 101. 26. 234. 78.Index -281- 13 Index D A activate the array-functionality · 153 admin · 108 administrator · 120. 156 array-function · 91. 262. 50. 232. 36. 86. 89. 32. 105. 223. 71. 124 element name hide · 116 elements · 9. 28. 255. 80. 19. 23. 29. 44. 35. 69. 248 coordinate · 231 copy · 230. 34. 15. 238 consolidation factor · 26. 31. 10. 42. 239. 35. 73. 252. 153 attribute cube · 68. 81. 63. 68. 62. 158 array-functionality · 93. 264 command line parameters · 208 comments · 89 Connecting Palo-Client with local Palo-Server · 217 Connecting Palo-Client with Palo-Server in the network · 219 Connection with the API · 221 consolidated · 231 consolidated element · 26. 235. 77. 233. 41. 102. 73. 88. 77. 81. 264. 240 context menu · 14. 27. 241. 235. 256. 124 child element · 77 Client-Connection with a Palo-Server · 206 Column titles · 35. 279 database source name · 33 deactivates the array-functionality. 98. 89. 115. 28. 68. 235. 265 directories · 205 disable array-functionality · 94 Drill Palo Rule · 134 DSN · 33. 233. 247. 84. 67. 69. 105. 247. 119. 82. 96. 105. 208. 94. 239. 26. 115. 31. 234. 115. 123. 98 attributes · 67. 89. 27. 238. 94. 222. 255. 21. 36. 89. 43. 223. 74. 28. 94. 19. 105. 244. 82. 95. 156. 243. 245. 21. 238 E C cell data · 119. 12. 80. 245. 55. 87. 105. 78. 19. 73. 233. 33. 62. 55. 75. 248. 239. 39. 252. 120 automatic backup · 207 autosave · 207 Data Import Wizard · 23 database · 9. 242. 259 H hierarchy · 89 hierarchy-level · 155 hierarchy-numbering · 155 . 119. 49. 222. 252. 28. 68. 253.

154 input parameter · 231 installation · 269. 58. 54. 86. 60.ENEXT · 234 PALO. 35. 231 I import · 8. 33.EINDENT · 233 PALO.PICKLIST · 146. 174 R rights · 119. 38.DATABASE_LIST_CUBES · 236 PALO. 43. 39. 233. 18. 30. 153. 84. 259 Paste Elements · 29. 241 importing comments · 18. 29.CUBE_LIST_DIMENSIONS · 236 PALO. 32. 9. 25. 236. 132. 264 path · 205 Pick list · 70 Pick list filter · 147 Pivot Tables · 189 poweruser · 108. 240 locations of files · 205 M marker · 136 marker arguments · 137 marker definition · 136 marker for expressions · 137 Modeller · 21. 26.ELEMENT_LIST_SIBLINGS · 237 PALO. 55.ELEMENT_LIST_PARENTS · 237 PALO.DATA · 41. 124 rights modifying · 120 Row titles · 35. 130. 147 PALO.ECOUNT · 233 PALO. 99. 44. 61. 170 parameters · 209 password · 34. 102. 82. 133. 90. 36. 54. 148. 208. 99. 32. 28. 121.SETDATAIF · 235 PALO. 44. 245. 101. 240 PALO. 53.Index -282PALO. 274. 172 PALO. 183. 55. 276 Paste Data Function · 12. 122.EISCHILD · 234 PALO. 234 PALO. 98.DFILTER · 146. 68. 99. 19 importing elements · 19 Indent · 147. 52. 60. 30.SETDATA · 15.EUPDATE · 235 PALO. 152 PALO.EWEIGHT · 235 PALO. 185 P Palo Error · 14 Palo ETL Server · 57 Palo ODBO provider · 189 Palo ODBO Provider · 192 Palo Service Manager · 239 Palo user names · 107 Palo Wizard · 121. 94. 277 internal loop · 10. 101. 233. 234. 73.DIMENSION_LIST_ELEMENTS · 237 PALO. 81. 49. 232. 127. 123. 32. 89. 147. 255.HFILTER · 147 palo. 50. 240.DATAT · 232. 74 Paste Function · 12 Paste View · 18. 96. 120 push rules · 94. 31. 48.EPARENTCOUNT · 234 PALO. 23. 268 PALO. 28. 121. 240. 167.ini · 206. 147. 41. 57. 62. 95.ROOT_LIST_DATABASES · 237 PALO. 77. 235. 233 PALO.EALIAS · 237 PALO. 209 PALO. 22. 87. 147. 169 PALO. 31. 43.EFIRST · 233 PALO. 48 L like · 230. 208. 15. 47.EINDEX · 234 PALO.ECHILDCOUNT · 233 PALO. 128. 133. 183. 54. 86.ECHILD · 233 PALO. 255.ESIBLING · 235 PALO. 275.EDELETE · 29.EPARENT · 234 PALO. 33 ODBO · 189 ODBO Connection · 191 order of creation · 147.ETYPE · 235 PALO. 249. 103.SORT · 146. 254 Multithreading · 228 N numeric · 68.DATAC · 41. 234 PALO. 78. 42.ERROR_LOG · 58. 46. 239. 231 O ODBC · 10. 250. 39. 101. 76. 58. 28. 67. 174 Rule Editor · 127 Rule Editor (Advanced) · 128 Rule Editor (Advanced) · 128.EADD · 19. 104.DIMENSION_LIST_CUBES · 236 PALO. 178. 148. 47. 125 PALO. 122. 13. 268 PALO. 238.SUBSET · 146. 243.EPREV · 234 PALO. 80. 126. 264 rule · 119. 42. 31. 119. 96. 241 PALO. 232. 35. 241 PALO. 148.DATABASE_LIST_DIMENSIONS · 236 PALO. 44. 102. 129.ELEMENT_LIST_CHILDREN · 237 PALO.ELEVEL · 234 PALO. 88. 56. 234.ETOPLEVEL · 235 PALO.ERENAME · 31.DATAX · 233 PALO. 27. 122. 82.AFILTER · 146. 25.DATAV · 232 PALO. 135 rules processing · 138 S search attributes · 73 . 244.ENAME · 234 PALO.ELEMENT_LIST_DESCENDANTS · 237 PALO. 188 PALO. 85. 55. 207.DFILTER() · 173. 102. 147. 16.TFILTER · 146.

231. 277 Server · 235 Server Browser · 221 server registration · 125 setup · 9 Show all selection tools · 73 Show element selector on double-click · 87 Sorting using ASCII-Code · 158 splash · 102. 77. 182. 231. 208. 171. 276. 123. 208 user rights · 121 V viewer · 108 W Worksheet-Server · 2. 242. 273 . 120. 169. 207. 234. 165. 270. 121. 274. 255 Subset Editor · 149. 86. 68. 105. 125. 173. 122. 274. 272. 241 structures · 9. 230.Index server · 26. 242. 231. 36. 188 subsets · 146 system cube · 115 system-cubes · 113 -283- U user · 121. 186. 26. 236. 238 splash parameter · 238 splashing · 119 string · 89. 217. 117 user name · 107. 224. 233. 233. 209. 273. 179. 125. 121. 235. 278 Worksheet-Server Application · 274 T text · 15. 237. 275. 35. 269. 104. 244. 74. 277. 43. 235. 222. 276 User management cubes · 114. 241. 119. 232.

Sign up to vote on this title
UsefulNot useful