Wiki source code of 07c. ETL Package
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | {{box cssClass="floatinginfobox" title="**Contents**"}} | ||
| 2 | {{toc/}} | ||
| 3 | {{/box}} | ||
| 4 | |||
| 5 | The ETL Package Wizard encompasses a number of Data Sources to facilitate the creation of data structures in a single screen. | ||
| 6 | |||
| 7 | Rather than creating separate Indexes and processing them to create more Indexes, the ETL Wizard can be used to connect to and process data resulting in a single Data Source, Data Source Group and Index. | ||
| 8 | |||
| 9 | Navigate to the ETL Package Wizard screen by clicking **Wizards**, then **ETL Package**. | ||
| 10 | |||
| 11 | Click the **New** button to begin the process. | ||
| 12 | |||
| 13 | = Details = | ||
| 14 | |||
| 15 | Enter the name in the **Name** textbox. This name must be unique. | ||
| 16 | |||
| 17 | Use the **Tags** textbox to add associated search terms to the data source. This allows access via customised strings when using the search bar. | ||
| 18 | |||
| 19 | To automatically restrict access to the Index once built, enable the **Sensitive** option. Only users with explicit permission will be able to access the Index. | ||
| 20 | |||
| 21 | Use the **Notes** textbox to enter additional information for other administrator users to view when editing the structure. | ||
| 22 | |||
| 23 | The **Index Method** drop-down list specifies the build method to be used when building the Index. | ||
| 24 | |||
| 25 | The **Complete** option will result in all items in a data source being indexed when a refresh takes place. Once refreshed, a new version number is applied to the Index. Each run completely refreshes the Index. | ||
| 26 | |||
| 27 | Building an **Incremental** Index enables an optimised refresh process when rebuilding Indexes to account for any changes. Rather than rebuilding the entire Index, only data that has been modified or added will be processed. New and changed records are added as new rows. This maintains the history of a record that may have changed over time, and no de-duplication is applied. When selected, the **Incremental Identifier** drop-down list is revealed. This is required to identify changes, using the selected field to detect when new data is greater than the previous highest value. | ||
| 28 | |||
| 29 | The **Cumulative** option works the same as an **Incremental** build, but replaces duplicates as well as adding new data. Duplicate records are removed from the result set based on the **Increment Identifier** and **Primary Key**. | ||
| 30 | |||
| 31 | Use the **Index Size** drop-down list to specify the expected number of records the resulting Index will contain. This is an indicative value and does not need to be exact. | ||
| 32 | |||
| 33 | Finally, specify the the Search Engine the Index will be added to from the **Search Engines** drop-down list and the Collection from the **Collections** drop-down list. | ||
| 34 | |||
| 35 | = Stages = | ||
| 36 | |||
| 37 | To add a new stage to the Index, click the **+** icon. This will present a list of the available Data Sources. | ||
| 38 | |||
| 39 | Indexes built as stages in the ETL Wizard will not appear in any other screen, and are treated as 'temporary' Indexes that facilitate the final output from the wizard. | ||
| 40 | |||
| 41 | To create a copy of a stage, click the **Cog** icon and click **Copy**. To move a stage, click the **Cog** icon and click the required move option. Please note that stages that reference values from a previous stage will require changes to ensure the structure of the processing is conserved. | ||
| 42 | |||
| 43 | To delete a stage, click the **Cog** icon and click **Remove**. | ||
| 44 | |||
| 45 | == Amalgamated == | ||
| 46 | |||
| 47 | Using the Amalgamated Data Source, two or more existing Indexes can be joined based on a number options to de-duplicate and filter the resulting output. | ||
| 48 | |||
| 49 | For more information, please refer to the Amalgamated Data Source Wizard chapter. | ||
| 50 | |||
| 51 | == Calculations == | ||
| 52 | |||
| 53 | This stage is used to create additional fields using the Data Source Group calculations functionality. | ||
| 54 | |||
| 55 | Please note that any field required for a calculation must be included in a prior stage. | ||
| 56 | |||
| 57 | For more information regarding the available calculation functions, please refer to the [[Calculation Builder>>doc:Technical Documentation.Legacy Documentation.CXAIR 2020\.2.User Guide (2020\.2).02\. Reporting.2c\. Crosstabs.2ci\. Calculation Builder.WebHome]] chapter. | ||
| 58 | |||
| 59 | == Calendar Assistant == | ||
| 60 | |||
| 61 | The Calendar Assistant Data Source adds rows to the provided Index created from intersections in the specified date ranges. | ||
| 62 | |||
| 63 | Select a source value from the Index drop-down list to populate the Start Date and End Date drop-down lists with the required date fields. The Use Today If End Date Is Null option, when checked, will replace the End Date with the current system date if the End Date is NULL. | ||
| 64 | |||
| 65 | Enable the Build Daily Calendar option if an automatic daily refresh the data source is required, or the Months option to instead add values on a monthly basis. | ||
| 66 | |||
| 67 | == Data Mart == | ||
| 68 | |||
| 69 | The Data Mart Data Source allows users to extract a portion of an existing Index and incorporate the data into a standalone Data Source. | ||
| 70 | |||
| 71 | By saving a query within an Index that restricts the data at the required level, this query can then be selected to create an independent data source with a view to increasing performance and removing any irrelevant entries for the end user. | ||
| 72 | |||
| 73 | A Data Mart cannot be built from an unstructured Index. | ||
| 74 | |||
| 75 | Click the **Select Query** button to open the Load screen, where a previously saved Query can be selected, the results of which will drive the Index records. | ||
| 76 | |||
| 77 | == Database == | ||
| 78 | |||
| 79 | The Database Data Source contains the options to create Index structures from a number of database types along with advanced options such as procedural correction and derived dates. | ||
| 80 | |||
| 81 | For more information regarding the available options, please refer to the Database Data Source Wizard chapter. | ||
| 82 | |||
| 83 | == ETL == | ||
| 84 | |||
| 85 | By creating an Index that contains a number of techniques to loop through the data, flags can be returned that can be used to manipulate the underlying records. | ||
| 86 | |||
| 87 | This is achieved using the Extract, Transform and Load (ETL) Data Source to identify and amend target data through a number of configurable stages. | ||
| 88 | |||
| 89 | Select the required Index from the **Index** drop-down list to reveal the options below. | ||
| 90 | |||
| 91 | === Stage Management === | ||
| 92 | |||
| 93 | Check the **Disable Stage** textbox to retain the tab and all settings, but not apply it to the output. | ||
| 94 | |||
| 95 | === Mandatory === | ||
| 96 | |||
| 97 | Select fields from the **Keys** drop-down list that will be used to identify each unique record when looping through the data. Click the **X** icon next to a selected field remove it. | ||
| 98 | |||
| 99 | Select fields from the **Order** drop-down list that define the ordering of the data when the looping though the records. This also impacts the ordering in the [[Query>>doc:Technical Documentation.CXAIR.User Guide.02\. Reporting.2a\. Query.WebHome]] screen once the Index has been built. | ||
| 100 | |||
| 101 | === General === | ||
| 102 | |||
| 103 | Enable the **Squash** option to filter the data to a single record for the defined Key. When using **Squash**, only fields added to the drop-down lists in the **Copy** tab will appear in the next stage (or final ETL output if there are no subsequent stages). As such, the field(s) selected as the primary key from the **Keys** drop-down list will be automatically added to the **Distinct** list found in the **Copy** tab. This is to prevent zero fields being present in the output. Please note that a transpose stage cannot follow a squash, and this function will need to be performed in a separate Index. | ||
| 104 | |||
| 105 | Enable the **Others** option to copy all documents that do not matched a defined Saved Query and append them to the bottom of the Index. | ||
| 106 | |||
| 107 | The **Saved Query** option can be used to subset the data within an Index. This is applied before the looping techniques. | ||
| 108 | |||
| 109 | === Display Field Mapping === | ||
| 110 | |||
| 111 | Each tab in this section enables the user to perform a number of different tasks. Any tab that has had an option set will be highlighted with a star in the top right corner. | ||
| 112 | |||
| 113 | ==== Flags ==== | ||
| 114 | |||
| 115 | These functions will return a value of ‘True’ or ‘False’ against every specified field for each row in the Index. The data is not filtered, only a flag is set. | ||
| 116 | |||
| 117 | Select individual values using the relevant drop-down list, or click **All** to apply the flag to all fields. Delete individual selections by clicking the **X** icon next to the relevant field, or clear all selections by clicking **None**. | ||
| 118 | |||
| 119 | The following flags are available: | ||
| 120 | |||
| 121 | (% border="1" cellspacing="0" class="MsoTableGrid" style="border-collapse:collapse; border:1pt solid windowtext; width:1024px" %) | ||
| 122 | |(% style="background-color:#ed7d31; background:#ed7d31; border-style:solid; border-width:1pt; width:274px" width="279" %)((( | ||
| 123 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 124 | (% style="color:white" %)Function | ||
| 125 | )))|(% style="background-color:#ed7d31; background:#ed7d31; border-bottom-style:solid; border-bottom-width:1pt; border-left:1pt solid; border-right-style:solid; border-right-width:1pt; border-top-style:solid; border-top-width:1pt; width:749px" width="287" %)((( | ||
| 126 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 127 | (% style="color:white" %)Description | ||
| 128 | ))) | ||
| 129 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 130 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 131 | Has Null | ||
| 132 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 133 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 134 | Returns true against all the key if any values of the specified field(s) contain a NULL. | ||
| 135 | |||
| 136 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 137 | Based on the field(s) that have been set to use this option, a new column called HASNULL will be created. It will populate the column with a value of true for all values of the key is any row contains a NULL (for the key). | ||
| 138 | ))) | ||
| 139 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 140 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 141 | Is Minimum | ||
| 142 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 143 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 144 | (% style="color:#1a1c1e" %)Returns true for each minimum value of the specified field(s). | ||
| 145 | |||
| 146 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 147 | (% style="color:#1a1c1e" %)Based on the field(s) that have been set to use this option, a new column called ISMIN will be created. It will populate the column with a value of true for the minimum value(s) it finds in the specified field. If it finds duplicate minimum values, it will flag true against each one. | ||
| 148 | ))) | ||
| 149 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 150 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 151 | Is First minimum | ||
| 152 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 153 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 154 | (% style="color:#1a1c1e" %)Returns true for the first minimum value of the specified field(s). | ||
| 155 | |||
| 156 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 157 | (% style="color:#1a1c1e" %)Based on the field(s) that have been set to use this option, a new column called ISFIRSTMIN will be created. It will populate the column with a value of true for the first minimum value it finds in the specified field (based on the order of the data). | ||
| 158 | ))) | ||
| 159 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 160 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 161 | Is Last Minimum | ||
| 162 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 163 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 164 | (% style="color:#1a1c1e" %)Returns true for the last minimum value of the specified fields(s). | ||
| 165 | |||
| 166 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 167 | (% style="color:#1a1c1e" %)Based on the field(s) that have been set to use this option, a new column called ISLASTMIN will be created. It will populate the column with a value of true for the last minimum value it finds in the specified field (based on the order of the data). | ||
| 168 | ))) | ||
| 169 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 170 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 171 | Is Maximum | ||
| 172 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 173 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 174 | (% style="color:#1a1c1e" %)Returns true for each maximum value of the specified field(s). | ||
| 175 | |||
| 176 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 177 | (% style="color:#1a1c1e" %)Based on the field(s) that have been set to use this option, a new column called ISMAX will be created. It will populate the column with a value of true for the maximum value(s) it finds in the specified field. If it finds duplicate maximum values, it will flag true against each one. | ||
| 178 | ))) | ||
| 179 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 180 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 181 | Is First Maximum | ||
| 182 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 183 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 184 | (% style="color:#1a1c1e" %)Returns true for the first maximum value of the specified field(s). | ||
| 185 | |||
| 186 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 187 | (% style="color:#1a1c1e" %)Based on the field(s) that have been set to use this option, a new column called ISFIRSTMAX will be created. It will populate the column with a value of true for the first maximum value it finds in the specified field (based on the order of the data). | ||
| 188 | ))) | ||
| 189 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 190 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 191 | Is Last Maximum | ||
| 192 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 193 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 194 | (% style="color:#1a1c1e" %)Returns true for the last maximum value of the specified field(s). | ||
| 195 | |||
| 196 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 197 | (% style="color:#1a1c1e" %)Based on the field(s) that have been set to use this option, a new column called ISLASTMAX will be created. It will populate the column with a value of true for the last maximum value it finds in the specified field (based on the order of the data). | ||
| 198 | ))) | ||
| 199 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 200 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 201 | Is First | ||
| 202 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 203 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 204 | (% style="color:#1a1c1e" %)Returns true for the first value found in the specified field(s). | ||
| 205 | |||
| 206 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 207 | (% style="color:#1a1c1e" %)Based on the field(s) that have been set to use this option, a new column called ISFIRST will be created. It will populate the column with a value of true for the first value it finds in the specified field (based on the order of the data). | ||
| 208 | ))) | ||
| 209 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 210 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 211 | Is Last | ||
| 212 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 213 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 214 | (% style="color:#1a1c1e" %)Returns true for the last value found in the specified field(s). | ||
| 215 | |||
| 216 | |||
| 217 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 218 | (% style="color:#1a1c1e" %)Based on the field(s) that have been set to use this option, a new column called ISLAST will be created. It will populate the column with a value of true for the last value it finds in the specified field (based on the order of the data). | ||
| 219 | ))) | ||
| 220 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 221 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 222 | Is Greater Than Zero | ||
| 223 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 224 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 225 | Returns true for each value of the specified field(s) where the value of the field is greater than zero. | ||
| 226 | |||
| 227 | |||
| 228 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 229 | Based on the field(s) that have been set to use this option, a new column called ISGREATERTHANZERO will be created. It will populate the column with a value of true for each instance it finds where the specified field is greater than zero. | ||
| 230 | ))) | ||
| 231 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 232 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 233 | Is Greater Than One | ||
| 234 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 235 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 236 | Returns true for each value of the specified field(s) where the value of the field is greater than one. | ||
| 237 | |||
| 238 | |||
| 239 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 240 | Based on the field(s) that have been set to use this option, a new column called ISGREATERTHANONE will be created. It will populate the column with a value of true for each instance it finds where the specified field is greater than one. | ||
| 241 | ))) | ||
| 242 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:274px" width="279" %)((( | ||
| 243 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 244 | Is Working Day | ||
| 245 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:749px" width="287" %)((( | ||
| 246 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 247 | Returns true for each value of the specified field(s) where the date value falls on a working day, as specified in the [[System Settings>>doc:Technical Documentation.CXAIR.Administration Guide.Status Monitoring.System Settings.WebHome||anchor="Working Days"]]. | ||
| 248 | |||
| 249 | |||
| 250 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 251 | Based on the field(s) that have been set to use this option, a new column called ISWORKINGDAY will be created. It will populate the column with a value of true for each instance it finds a date matching the specified working days. | ||
| 252 | ))) | ||
| 253 | |||
| 254 | ==== Copy ==== | ||
| 255 | |||
| 256 | |||
| 257 | (% border="1" cellspacing="0" class="MsoTableGrid" style="border-collapse:collapse; border:1pt solid windowtext; width:1024px" %) | ||
| 258 | |(% style="background-color:#ed7d31; background:#ed7d31; border-style:solid; border-width:1pt; width:273px" width="282" %)((( | ||
| 259 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 260 | (% style="color:white" %)Function | ||
| 261 | )))|(% style="background-color:#ed7d31; background:#ed7d31; border-bottom-style:solid; border-bottom-width:1pt; border-left:1pt solid; border-right-style:solid; border-right-width:1pt; border-top-style:solid; border-top-width:1pt; width:750px" width="283" %)((( | ||
| 262 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 263 | (% style="color:white" %)Description | ||
| 264 | ))) | ||
| 265 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:273px" width="282" %)((( | ||
| 266 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 267 | Copy | ||
| 268 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:750px" width="283" %)((( | ||
| 269 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 270 | Copies all values of the specified field(s) into a single record. | ||
| 271 | |||
| 272 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 273 | Based on the field(s) that have been set to use this option, a new column called COPY will be created. It will populate the column with all value(s) it finds in the specified field against every row for that specified key. | ||
| 274 | ))) | ||
| 275 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:273px" width="282" %)((( | ||
| 276 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 277 | Analyzed | ||
| 278 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:750px" width="283" %)((( | ||
| 279 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 280 | (% style="color:#1a1c1e" %)Copies all values of the specified field(s), ordered by the Order value. | ||
| 281 | |||
| 282 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 283 | (% style="color:#1a1c1e" %)Based on the field(s) that have been set to use this option, a new column called ANALYZED will be created. It will populate the column with all value(s) it finds in the specified field against every row for that specified key. The order of the values will be set based on the Order value. The fields will be analyzed to enable free text searching | ||
| 284 | ))) | ||
| 285 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:273px" width="282" %)((( | ||
| 286 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 287 | Unique | ||
| 288 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:750px" width="283" %)((( | ||
| 289 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 290 | (% style="color:#1a1c1e" %)Copies all unique values of the specified field(s), ordered ascendingly, into a single record. | ||
| 291 | |||
| 292 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 293 | (% style="color:#1a1c1e" %)Based on the field(s) that have been set to use this option, a new column called UNIQUE will be created. It will populate the column with all unique value(s) it finds in the specified field against every row for that specified key. The order of the values will be in ascending order. | ||
| 294 | ))) | ||
| 295 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:273px" width="282" %)((( | ||
| 296 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 297 | Transpose | ||
| 298 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:750px" width="283" %)((( | ||
| 299 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 300 | Turns every unique value in a column into its own field. | ||
| 301 | |||
| 302 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 303 | Based on the field that has been set to use this option, new columns will be created. It will populate the columns with all the corresponding values from the field specified by "Transpose Values". | ||
| 304 | ))) | ||
| 305 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:273px" width="282" %)((( | ||
| 306 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 307 | Flattened Transpose | ||
| 308 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:750px" width="283" %)((( | ||
| 309 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 310 | For example if a value 'A' in Flattened Transpose Headers corresponds with the values "B" and "C" in Flattened Transpose Values then two columns will be created "A B" and "A C". | ||
| 311 | |||
| 312 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 313 | The fields in the created columns are populated with a "Y" or left blank. | ||
| 314 | |||
| 315 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 316 | Based on the field(s) that have been set to use this option, a new column called DISTINCT will be created. It will populate the column with all distinct value(s) it finds in the specified field against every row for that specified key. The order of the values will be set based on the Order value. | ||
| 317 | ))) | ||
| 318 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:273px" width="282" %)((( | ||
| 319 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 320 | Distinct | ||
| 321 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:750px" width="283" %)((( | ||
| 322 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 323 | Copies all distinct values of the specified field(s), ordered by the Order value. | ||
| 324 | |||
| 325 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 326 | Based on the field(s) that have been set to use this option, a new column called DISTINCT will be created. It will populate the column with all distinct value(s) it finds in the specified field against every row for that specified key. The order of the values will be set based on the Order value. | ||
| 327 | ))) | ||
| 328 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:273px" width="282" %)((( | ||
| 329 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 330 | Concatenate | ||
| 331 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:750px" width="283" %)((( | ||
| 332 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 333 | Concatenates all values (comma separated) from the selected field based on the specified key(s). | ||
| 334 | |||
| 335 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 336 | Based on the field(s) that have been set to use this option, a new column called CONCATENATE will be created. It will populate the column with a concatenated, comma separated string of all values found in the selected field based on the specified key. It displays all values, not all unique values. | ||
| 337 | ))) | ||
| 338 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:273px" width="282" %)((( | ||
| 339 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 340 | Concatenate Literal | ||
| 341 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:750px" width="283" %)((( | ||
| 342 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 343 | Concatenates all values (no spaces) from the selected field based on the specified key(s). | ||
| 344 | |||
| 345 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 346 | Based on the field(s) that have been set to use this option, a new column called CONCATENATE will be created. It will populate the column with a concatenated string of all values found in the selected field based on the specified key. It displays all values, not all unique values. | ||
| 347 | ))) | ||
| 348 | |||
| 349 | ==== Positional ==== | ||
| 350 | |||
| 351 | |||
| 352 | (% border="1" cellspacing="0" class="MsoTableGrid" style="border-collapse:collapse; border:1pt solid windowtext; width:1024px" %) | ||
| 353 | |(% style="background-color:#ed7d31; background:#ed7d31; border-style:solid; border-width:1pt; width:271px" width="282" %)((( | ||
| 354 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 355 | (% style="color:white" %)Function | ||
| 356 | )))|(% style="background-color:#ed7d31; background:#ed7d31; border-bottom-style:solid; border-bottom-width:1pt; border-left:1pt solid; border-right-style:solid; border-right-width:1pt; border-top-style:solid; border-top-width:1pt; width:752px" width="284" %)((( | ||
| 357 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 358 | (% style="color:white" %)Description | ||
| 359 | ))) | ||
| 360 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 361 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 362 | First | ||
| 363 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 364 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 365 | Writes the maximum value of the specified field(s) based on the selected key. | ||
| 366 | |||
| 367 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 368 | Based on the field(s) that have been set to use this option, a new column called MAX will be created. It will populate the column with the maximum value it finds in the specified field against every row for that specified key. | ||
| 369 | ))) | ||
| 370 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 371 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 372 | Last | ||
| 373 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 374 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 375 | Writes the last value of the specified field(s) based on the selected key and the order of the data. | ||
| 376 | |||
| 377 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 378 | Based on the field(s) that have been set to use this option, a new column called LAST will be created. It will populate the column with the last value it finds in the specified field against every row for that specified key (based on the order that has been set). | ||
| 379 | ))) | ||
| 380 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 381 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 382 | Previous | ||
| 383 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 384 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 385 | Writes the previous value of the specified field(s) based on the selected key and the order of the data. | ||
| 386 | |||
| 387 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 388 | Based on the field(s) that have been set to use this option, a new column called PREVIOUS will be created. It will populate the column with the previous value it finds in the specified field against the specified key (based on the order that has been set). | ||
| 389 | ))) | ||
| 390 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 391 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 392 | Next | ||
| 393 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 394 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 395 | Writes the next value of the specified field(s) based on the selected key and the order of the data. | ||
| 396 | |||
| 397 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 398 | Based on the field(s) that have been set to use this option, a new column called NEXT will be created. It will populate the column with the next value it finds in the specified field against the specified key (based on the order that has been set). | ||
| 399 | ))) | ||
| 400 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 401 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 402 | Lower | ||
| 403 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 404 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 405 | Writes the lower value of the specified field(s) based on the selected key and the order of the data. | ||
| 406 | |||
| 407 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 408 | Based on the field(s) that have been set to use this option, a new column called LOWER will be created. It will populate the column with the next value it finds in the specified field against the specified key (based on the order that has been set). | ||
| 409 | ))) | ||
| 410 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 411 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 412 | Higher | ||
| 413 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 414 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 415 | Provides an incremental number against several rows of data based on the specified key(s) and the data containing dates that overlap. | ||
| 416 | |||
| 417 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 418 | Based on the field(s) that have been set to use this option, a new column called OVERLAP will be created. It will populate the column with a numeric value starting from 0 and incrementing by 1 for each subsequent group of records that have dates that overlap. | ||
| 419 | ))) | ||
| 420 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 421 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 422 | Overlapping Dates Sequence | ||
| 423 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 424 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 425 | Writes the higher value of the specified field(s) based on the selected key and the order of the data. | ||
| 426 | |||
| 427 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 428 | Based on the field(s) that have been set to use this option, a new column called HIGHER will be created. It will populate the column with the next value it finds in the specified field against the specified key (based on the order that has been set). | ||
| 429 | ))) | ||
| 430 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 431 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 432 | Sequence Starting from 0 | ||
| 433 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 434 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 435 | Provides an incremental number against each row of data based on the specified key(s) and the order of the data | ||
| 436 | |||
| 437 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 438 | Based on the field(s) that have been set to use this option, a new column called SEQUENCE0 will be created. It will populate the column with a numeric value starting from 0 and incrementing by 1 for each subsequent record for the specified key. | ||
| 439 | ))) | ||
| 440 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 441 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 442 | Sequence Starting From 1 On Value Change | ||
| 443 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 444 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 445 | Provides an incremental number against each row of data based on the specified key(s) and the order of the data. | ||
| 446 | |||
| 447 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 448 | Based on the field(s) that have been set to use this option, a new column called SEQUENCEVALUECHANGE will be created. It will populate the column with a numeric value starting from 1 and incrementing by 1 for each subsequent record where the value changes for the specified key. | ||
| 449 | ))) | ||
| 450 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 451 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 452 | Sequence Starting from 1 | ||
| 453 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 454 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 455 | Provides an incremental number against each row of data based on the specified key(s) and the order of the data. | ||
| 456 | |||
| 457 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 458 | Based on the field(s) that have been set to use this option, a new column called SEQUENCE1 will be created. It will populate the column with a numeric value starting from 1 and incrementing by 1 for each subsequent record for the specified key. | ||
| 459 | ))) | ||
| 460 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 461 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 462 | Descending Sequence Ending With 0 | ||
| 463 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 464 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 465 | Provides a descending number against each row of data based on the specified key(s) and the order of the data. | ||
| 466 | |||
| 467 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 468 | Based on the field(s) that have been set to use this option, a new column called REVERSESEQUENCE0 will be created. It will populate the column with a numeric value starting from the number of records minus one and decrementing by 1 for each subsequent record for the specified key. | ||
| 469 | ))) | ||
| 470 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 471 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 472 | Descending Sequence Ending With 1 | ||
| 473 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 474 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 475 | Provides a descending number against each row of data based on the specified key(s) and the order of the data. | ||
| 476 | |||
| 477 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 478 | Based on the field(s) that have been set to use this option, a new column called REVERSESEQUENCE1 will be created. It will populate the column with a numeric value starting from the number of records and decrementing by 1 for each subsequent record for the specified key. | ||
| 479 | ))) | ||
| 480 | |||
| 481 | ==== Aggregations ==== | ||
| 482 | |||
| 483 | |||
| 484 | (% border="1" cellspacing="0" class="MsoTableGrid" style="border-collapse:collapse; border:1pt solid windowtext; width:1024px" %) | ||
| 485 | |(% style="background-color:#ed7d31; background:#ed7d31; border-style:solid; border-width:1pt; width:272px" width="281" %)((( | ||
| 486 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 487 | (% style="color:white" %)Function | ||
| 488 | )))|(% style="background-color:#ed7d31; background:#ed7d31; border-bottom-style:solid; border-bottom-width:1pt; border-left:1pt solid; border-right-style:solid; border-right-width:1pt; border-top-style:solid; border-top-width:1pt; width:751px" width="284" %)((( | ||
| 489 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 490 | (% style="color:white" %)Description | ||
| 491 | ))) | ||
| 492 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:272px" width="281" %)((( | ||
| 493 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 494 | Minimum | ||
| 495 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:751px" width="284" %)((( | ||
| 496 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 497 | Writes the minimum value of the specified field(s) based on the selected key. | ||
| 498 | |||
| 499 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 500 | Based on the field(s) that have been set to use this option, a new column called MIN will be created. It will populate the column with the minimum value it finds in the specified field against every row for that specified key. | ||
| 501 | ))) | ||
| 502 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:272px" width="281" %)((( | ||
| 503 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 504 | Maximum | ||
| 505 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:751px" width="284" %)((( | ||
| 506 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 507 | Writes the maximum value of the specified field(s) based on the selected key. | ||
| 508 | |||
| 509 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 510 | Based on the field(s) that have been set to use this option, a new column called MAX will be created. It will populate the column with the maximum value it finds in the specified field against every row for that specified key. | ||
| 511 | ))) | ||
| 512 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:272px" width="281" %)((( | ||
| 513 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 514 | Count | ||
| 515 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:751px" width="284" %)((( | ||
| 516 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 517 | Provides a count of all non-NULL values in a specified field for a selected key. | ||
| 518 | |||
| 519 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 520 | Based on the field(s) that have been set to use this option, a new column called COUNT will be created. It will populate the column with a count of all non-NULL values it finds in the specified field based on the specified key. | ||
| 521 | ))) | ||
| 522 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:272px" width="281" %)((( | ||
| 523 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 524 | Count All | ||
| 525 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:751px" width="284" %)((( | ||
| 526 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 527 | Provides a count of all (including NULL) values in a specified field for a selected key. | ||
| 528 | |||
| 529 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 530 | Based on the field(s) that have been set to use this option, a new column called COUNT will be created. It will populate the column with a count of all (including NULL) values it finds in the specified field based on the specified key. | ||
| 531 | ))) | ||
| 532 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:272px" width="281" %)((( | ||
| 533 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 534 | Count Unique | ||
| 535 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:751px" width="284" %)((( | ||
| 536 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 537 | Provides a count of unique values in a specified field for a selected key. | ||
| 538 | |||
| 539 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 540 | Based on the field(s) that have been set to use this option, a new column called COUNTUNIQUE will be created. It will populate the column with a count of unique values it finds in the specified field based on the specified key. | ||
| 541 | ))) | ||
| 542 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:272px" width="281" %)((( | ||
| 543 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 544 | Sum | ||
| 545 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:751px" width="284" %)((( | ||
| 546 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 547 | Aggregates the data based on the specified key(s). | ||
| 548 | |||
| 549 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 550 | Based on the field(s) that have been set to use this option, a new column called SUM will be created. It will populate the column with a sum of the field based on the specified key. | ||
| 551 | ))) | ||
| 552 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:272px" width="281" %)((( | ||
| 553 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 554 | Cumulative Sum | ||
| 555 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:751px" width="284" %)((( | ||
| 556 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 557 | Aggregates the data based on the specified key(s). | ||
| 558 | |||
| 559 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 560 | Based on the field(s) that have been set to use this option, a new column called CUMULATIVESUM will be created. It will populate the column with a cumulative sum of the field based on the specified key. | ||
| 561 | ))) | ||
| 562 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:272px" width="281" %)((( | ||
| 563 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 564 | Average | ||
| 565 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:751px" width="284" %)((( | ||
| 566 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 567 | Averages the data based on the specified key(s). | ||
| 568 | |||
| 569 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 570 | Based on the field(s) that have been set to use this option, a new column called AVERAGE will be created. It will populate the column with an average of the field based on the specified key. | ||
| 571 | ))) | ||
| 572 | |||
| 573 | ==== Banding and Ranking ==== | ||
| 574 | |||
| 575 | |||
| 576 | (% border="1" cellspacing="0" class="MsoTableGrid" style="border-collapse:collapse; border:1pt solid windowtext; width:1024px" %) | ||
| 577 | |(% style="background-color:#ed7d31; background:#ed7d31; border-style:solid; border-width:1pt; width:271px" width="283" %)((( | ||
| 578 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 579 | (% style="color:white" %)Function | ||
| 580 | )))|(% style="background-color:#ed7d31; background:#ed7d31; border-bottom-style:solid; border-bottom-width:1pt; border-left:1pt solid; border-right-style:solid; border-right-width:1pt; border-top-style:solid; border-top-width:1pt; width:752px" width="283" %)((( | ||
| 581 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 582 | (% style="color:white" %)Description | ||
| 583 | ))) | ||
| 584 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="283" %)((( | ||
| 585 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 586 | Band | ||
| 587 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="283" %)((( | ||
| 588 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 589 | Creates bands for the data by diving the range of the numbers by 10. It is advised to use this function only when there are more than 10 unique values. | ||
| 590 | |||
| 591 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 592 | e.g if there are 100 entries, the bands would be 1-10, 11-20, 21-30 etc. | ||
| 593 | ))) | ||
| 594 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="283" %)((( | ||
| 595 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 596 | Ranking | ||
| 597 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="283" %)((( | ||
| 598 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 599 | Ranks the values from 1 the highest to n the lowest. | ||
| 600 | ))) | ||
| 601 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="283" %)((( | ||
| 602 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 603 | Rank Within | ||
| 604 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="283" %)((( | ||
| 605 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 606 | Ranks the values from 1 the highest to n the lowest within the current set of records. | ||
| 607 | ))) | ||
| 608 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="283" %)((( | ||
| 609 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 610 | Range Band | ||
| 611 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="283" %)((( | ||
| 612 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 613 | Bands the values in 10 groups, the banding is calculated by adding 2 standard deviations to the mean value, subtracting the 2 standard deviations from the mean value, and then dividing this range into 10. | ||
| 614 | ))) | ||
| 615 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="283" %)((( | ||
| 616 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 617 | Percentile Frequency | ||
| 618 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="283" %)((( | ||
| 619 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 620 | Bands the values in 10 Percentile groups depending on the frequency of the values, ideally each group will have 10 percent of the values. | ||
| 621 | ))) | ||
| 622 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="283" %)((( | ||
| 623 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 624 | Percentile Value | ||
| 625 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="283" %)((( | ||
| 626 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 627 | Bands the values in 10 Percentile groups depending on the sum of the values, ideally each group will have 10 percent of the values. | ||
| 628 | ))) | ||
| 629 | |||
| 630 | ==== Calculations ==== | ||
| 631 | |||
| 632 | Using the Calculations tab, custom calculations can be added. | ||
| 633 | |||
| 634 | Give the calculation a name in the **Label** textbox, and click the **...** icon next to the Calculation box to open the [[Calculation Builder>>doc:Technical Documentation.CXAIR.User Guide.02\. Reporting.2c\. Crosstabs.2ci\. Calculation Builder.WebHome]]. Enter the required calculation and click **Apply** to save the changes made, or **Cancel** to discard changes. Please refer to the [[Calculation Builder>>doc:Technical Documentation.CXAIR.User Guide.02\. Reporting.2c\. Crosstabs.2ci\. Calculation Builder.WebHome]] chapter for more detailed information regarding the functionality and available options. | ||
| 635 | |||
| 636 | To add additional calculations, click **Add**. To remove an added calculation, click the **X** icon next to the relevant entry. | ||
| 637 | |||
| 638 | Please note that any field required for a calculation following a Squash stage must be selected in either the **Copy**, **Distinct** or **Unique** lists as part of that stage. | ||
| 639 | |||
| 640 | ==== Additional ==== | ||
| 641 | |||
| 642 | Additional Display Field Mapping options will become available if a value has been set for the **Is First Minimum**, **Is Last Minimum**, **Is First Maximum** or **Is Last Maximum** flags. | ||
| 643 | |||
| 644 | (% border="1" cellspacing="0" class="MsoTableGrid" style="border-collapse:collapse; border:1pt solid windowtext; width:1024px" %) | ||
| 645 | |(% style="background-color:#ed7d31; background:#ed7d31; border-style:solid; border-width:1pt; width:271px" width="282" %)((( | ||
| 646 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 647 | (% style="color:white" %)Function | ||
| 648 | )))|(% style="background-color:#ed7d31; background:#ed7d31; border-bottom-style:solid; border-bottom-width:1pt; border-left:1pt solid; border-right-style:solid; border-right-width:1pt; border-top-style:solid; border-top-width:1pt; width:752px" width="284" %)((( | ||
| 649 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 650 | (% style="color:white" %)Description | ||
| 651 | ))) | ||
| 652 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 653 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 654 | <Flag Name> <Field Name> | ||
| 655 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 656 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 657 | Based on the flag chosen, this outputs the value(s) in the field(s) selected as they appear where the flag is true, against each row for that key. | ||
| 658 | ))) | ||
| 659 | |(% style="border-style:none solid solid; border-top-color:initial; border-width:1pt; width:271px" width="282" %)((( | ||
| 660 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 661 | <Flag Name> <Field Name> Offset | ||
| 662 | )))|(% style="border-bottom:1pt solid windowtext; border-left:none; border-right:1pt solid windowtext; border-top:none; width:752px" width="284" %)((( | ||
| 663 | (% style="padding:0cm 5.4pt 0cm 5.4pt" %) | ||
| 664 | Allows an offset value to be returned. For example, entering **1** will return the next value in the list, and entering **-1** will return the previous value in the list. | ||
| 665 | ))) | ||
| 666 | |||
| 667 | == Reverse Transpose == | ||
| 668 | |||
| 669 | Use the Reverse Transpose Data Source to transpose values within rows into columns. | ||
| 670 | |||
| 671 | Use the **Primary Key** dropdown list to specify what will be used to identify the columns to be transposed. | ||
| 672 | |||
| 673 | Enter a row name in the **Transpose Field Name** textbox, and a name for the associated values in the **Transpose Value Name** textbox. | ||
| 674 | |||
| 675 | By default, blank fields are not included as part of the reverse transpose process. Enable the **Include Blank Fields** option to include them in the output. | ||
| 676 | |||
| 677 | == Rules == | ||
| 678 | |||
| 679 | A Rules data source will use pre-set rules to validate or update data. | ||
| 680 | |||
| 681 | Rules can be applied to individual fields and the output will inform the user of the number of rules that have passed or failed. Rules are categorised as either major or minor to allow the output to be split based on priority. | ||
| 682 | |||
| 683 | Please refer to the [[Rules>>doc:Technical Documentation.CXAIR.Administration Guide.Data Warehouse.a\. Rules.WebHome||anchor="Rules"]] section of the [[Data Warehouse>>doc:Technical Documentation.CXAIR.Administration Guide.Data Warehouse.WebHome]] for chapter more information. | ||
| 684 | |||
| 685 | == Store in Index == | ||
| 686 | |||
| 687 | Use this stage to specify a subset of data that will be used to create the resulting Index. This can be used at multiple times within a structure to create separate Indexes at a certain point in the order. | ||
| 688 | |||
| 689 | Specify the name of this subset Index using the **Create as Name** textbox, and specify the fields that will be included using the **Display Fields** drop-down list. | ||
| 690 | |||
| 691 | Finally, specify the maximum row count that the subset Index can contain using the **Number to Index** option. | ||
| 692 | |||
| 693 | == Transpose == | ||
| 694 | |||
| 695 | Use the Transpose Data Source to transpose values within columns into rows. | ||
| 696 | |||
| 697 | Use the **Primary Key** dropdown list to specify what will be used to identify the rows to be transposed. | ||
| 698 | |||
| 699 | Specify the fields in the **Field 1 (Column Headers)** dropdown list that will be transposed into column headers once the Index has been created. The fields specified in the **Field 2 (Values)** dropdown list will populate these new columns based on the primary key value. To include additional fields in the new Index, select them from the **Extra Fields (Distincts)** dropdown list. | ||
| 700 | |||
| 701 | If the fields specified in the **Field 2 (Values)** dropdown list contain multiple values, enabling the **Flatten** option will split these values into separate columns. | ||
| 702 | |||
| 703 | = Configure Index = | ||
| 704 | |||
| 705 | Once one or more stages are added, the **Configure Index** tab will be revealed. These options control the Index-level output that can be configured prior to completing the wizard. | ||
| 706 | |||
| 707 | For more information regarding the available options, please refer to the [[Creating an Index>>doc:Technical Documentation.CXAIR.Administration Guide.4\. Manual Index Creation.c\. Creating an Index.WebHome]] chapter. |