Sunteți pe pagina 1din 74

1

Analyzer Queries
Training Course

UMTS Radio

The content of this manual is provided for information only, is subject to change without notice, and should not be construed as a commitment by Actix. Actix assumes no responsibility or liability for any errors or inaccuracies that appear in this documentation. Copyright Actix 2007. All rights reserved. All trademarks are hereby acknowledged.

Contents
1 ABOUT THIS COURSE ................................................................................................................... 4 1.1 OBJECTIVES OF THE COURSE .............................................................................................. 4 1.2 COURSE PRE-REQUISITES ................................................................................................... 4 1.3 COURSE STRUCTURE .......................................................................................................... 4 2 WHAT ARE QUERIES? .................................................................................................................. 6 2.1 QUERY TYPES .................................................................................................................... 6 2.2 FILTER QUERIES ................................................................................................................. 6 2.3 HISTOGRAMS ...................................................................................................................... 8 2.4 STATISTICS ........................................................................................................................ 8 2.5 BINNED .............................................................................................................................. 9 2.6 CROSSTAB ....................................................................................................................... 10 2.7 EVENT.............................................................................................................................. 11 3 INTRODUCTION TO THE ANALYSIS MANAGER............................................................................... 12 4 CONFIGURATION ....................................................................................................................... 14 5 QUERY DESIGN......................................................................................................................... 17 5.1 COVERAGE HOLES FILTER .............................................................................................. 17 5.2 COVERAGE HOLES BINNED ............................................................................................. 21 5.3 PILOT POLLUTION 1 BINNED ............................................................................................ 25 5.4 EXERCISE: BINNED QUERY (PILOT POLLUTION) ................................................................. 28 5.5 SOLUTION: BINNED QUERY (PILOT POLLUTION)................................................................. 29 5.6 EXERCISE: BINNED QUERY (INBOUND PILOT POLLUTION PER SC)....................................... 31 5.7 SOLUTION: BINNED QUERY (INBOUND PILOT POLLUTION PER SC)....................................... 32 5.8 CALL SETUP TIME ANALYSIS HISTOGRAM ........................................................................ 33 5.9 DROPPED CALL STATISTICS STATISTICS .......................................................................... 36 5.10 UE ANALYSIS STATISTICS CROSSTAB............................................................................ 37 5.11 SCANNER AND UE ANALYSIS AT CALL SETUP EVENT ..................................................... 44 5.12 DROPPED CALL ANALYSIS EVENT ................................................................................. 48 5.13 CALL SETUP SEQUENCE ANALYSIS CROSSTAB .............................................................. 52 6 REPORT TEMPLATES ................................................................................................................. 57 6.1 SINGLE FILE REPORT TEMPLATE ....................................................................................... 57 6.2 MULTIPLE FILE REPORT TEMPLATE.................................................................................... 60 7 APPENDIX ................................................................................................................................. 63 7.1 STATE() VS. PREV_STATE() ........................................................................................... 63 7.2 LITTLE-KNOWN QUERY COMMANDS .................................................................................... 64 7.2.1 abstime( rounding_factor ) ..................................................................................... 64 7.2.2 delta( parameter ) .................................................................................................. 64 7.2.3 get( parameter, index, message_number )............................................................ 65 7.2.4 default( primary_ expression, secondary_ expression ) ........................................ 65 7.3 SETTING A TIMER STATISTICS USING CROSSTAB QUERIES .................................................... 65 7.4 CELL LOOKUP QUERY FUNCTIONS ..................................................................................... 66 7.5 CELLHANDLE LOOKUP FUNCTION ...................................................................................... 68 7.6 EXAMPLE ......................................................................................................................... 68 7.7 EDITING EXISTING REPORT TEMPLATES .............................................................................. 69 7.8 USEFUL FORMAT GROUPS (FOR FREQUENT USE) ............................................................... 70 7.9 PARAMETERS USED .......................................................................................................... 71

1 About this course


1.1 Objectives of the course
After completing this course, the delegate will be able to:

Select the most appropriate query for the type of analysis Design the query in the most efficient manner Use queries for both structured and ad-hoc analysis methods

This course steps through the different types of queries, teaching each method through real-world scenarios, from simple queries and building in complexity, to give engineers the understanding and confidence to design their own queries from the minute the course ends.

1.2 Course pre-requisites


Delegates must have completed the Platform Training before beginning this Query Training course. This course documentation provides screenshots based on Build 4.04.30142 with specific settings enabled in Tools > Preferences Each PC should be set in an identical manner. Subsequent releases may include differences in averages or message totals due to different features being introduced in the future.

1.3 Course structure


This course is structured over 1.5 days according to the following agenda:

Introduction to the Analysis Manager Query types overview Query building Coverage holes Interference analysis Server dominance analysis

Call setup sequence analysis File and call analysis Dropped Call Analysis Combining two handset data streams into the same expression Call sequence messaging

Commonly-used functions Analysing information held in different Layer 3 messages Formatting results Exporting queries to create report templates Tips and Tricks for faster and more efficient query building

2 What are queries?


The Analyzer Platform includes a sophisticated method of analysing drive-test and protocol data, further than simply visualising the collected measurements on a map/chart/table. Queries are a method for combining collected measurements together, applying thresholds and applying built-in functions to the measurements to highlight radio problems, generate KPI statistics or investigate problems.

2.1 Query types


Queries are available in the following types, each with an increasing level of complexity:

Filters Histograms Statistics Time-Series (called Binned Queries) Multi-Dimensional Statistics (called Crosstab Queries) Event-Triggered Window Statistics (called Event Queries)

2.2 Filter queries


Filters can be very simple, and can be applied in combination to narrow down a problem to a specific area. It is important to note that the filter is applied to each view, meaning that the underlying raw data has not changed, but all maps, charts, tables etc now contain a filtered view, regardless of which parameter is being viewed. For example, if a simple filter of RSSI < -85 dBm is applied to the following chart.

Only the values that meet the filter requirement will be returned.

2.3 Histograms
Histogram query processes data for a single dimension into a bar chart, which is good for producing a high-level view of the data. This data is available for any time-series data displayed in a workbook. It can also be displayed using the Histogram button in a chart. Example below returns the PDF (count) histogram for any parameter or expression, either using the ranges found in the datafile, or by specifying ranges or discrete values for the histogram bars and can only be viewed in the histogram tab of the chart, table and workbook, as can be seen by the following breakdown of In SHO states.

2.4 Statistics
The Statistic query allows you to generate data based on the statistics available for a single dimension. It is useful for generating a high-level view for system metrics purposes. These return the Mean, Mode, Median, Maximum, Minimum, Count, Standard Deviation and Variance of the parameter or expression used. These can only be viewed in the Statistics tab of the table and workbook.

2.5 Binned
Binned queries provide a simple way of creating a formula and displaying the results on the map or exporting the results to Excel using the Display on Workbook command (where they appear on the Series Formatted Data tab). These queries can be as simple, or as complex as needed to be, but have the advantage of running at every binned message point in the file, so they can be used to create a new time-series dataset. As you are essentially creating a new time-series parameter, these can be viewed on the map, time view chart, series tab of the table and workbook. However, these will be subject to which ever binning method has been chosen, but it is also possible to override the platform binning setting from inside the expression builder window.

10

2.6 Crosstab
Crosstab queries (also known as multidimensional statistical queries) are used to provide high-level overviews, typically of the state of the network. This type of query can be used to generate statistics against any dimension available, where it process the sequential message data and extract and calculate summary information (called statistics), which is broken down by one or more dimensions (such as region and serving cell). The results will be across the whole file, so the results are not in the time-series domain anymore, but any number of statistics can be returned, from a set of possible options such as Count, Percent True, Last Value or Sum. These have theirs own visualisation tool, the Statistics Explorer. Example below displays 6 statistic columns for each unique Site ID row.

11

2.7 Event
Event queries (sometimes called window queries or triggered queries) are a special type of crosstab query that are used to create a list of individual occurrences of a problem so that users can drill down into the details of what was going at that time. Generally you use an event query to create a list of failure or warning events, such as dropped calls, handover failures, or throughput measurements that are less than a given threshold. You specify the problem you want to list as the trigger (sometimes called the triggering event). This can be any attribute or expression, although typically it will be an event attribute. This type of query is essentially the same as a crosstab query with the difference being that a trigger event is defined first, and an optional window before and after (measured in either time or number of messages) can be defined. It is within these windows that the statistics are calculated.

5000 ms Event trigger

5000 ms Event trigger

5000

10000

15000

20000

Time in milliseconds

12

3 Introduction to the Analysis Manager


The Analysis Manager is the central point for managing queries. It allows new queries to be written, edited and deleted, existing queries to be imported and exported, and event queries to be set to load-time (covered later). There are 6 different types of queries: Crosstab, Binned, Filter, Histogram, Statistic, and Event queries.

It is also possible to view any of the existing queries already embedded into the solution by selecting the second tab Existing Analyses.

13

There are also three other terms which will be used throughout this query training course which, although new to begin with, will become common tools for creating and editing queries, these are: the Expression Builder, Format Group and the Attribute Picker.

Query Name

Format of Results

Attribute Picker

Pre-written Expressions

Expression Builder Window

Quick-Pick Functions

Binning Override

Attribute List

Enumerated List Selector

Function List

The Expression Builder is shown above. You can see the main expression builder window, with the three panels at the bottom for the attribute list, enumerated list selector, and list of available functions. In the top-right corner, it is possible to select a different format for your results, either using the drop-down list of available formats or by using the Attribute Picker (denoted by the button).

14

4 Configuration
Before we begin to design a query, it is important that all PCs are set identically during the training. This is to allow the course instructor to be able to explain any problems as the course progresses. This section contains the settings needed for the remainder of the course. Analyzer Classic will be used to view the throughout of the training course. In the Tools Display Thresholds UMTS Event Control Threshold Editor window, set the following values:

Uu_CallSetupFailure_Num_RRCConnReq = 4 Uu_CallSetupFailure_TimeDelay = 2 Uu_ReEstablishment_wait_timer = 0 Uu_wait_timer_Complete = 0

In the Tool Preference Change Preferences window, set the following values:

Cellrefs file should be set to the CELLREFS_RVS_QUERY.TXT file Note: You are required to restart your Analyzer Classic after a new cellref is set. GPS Interpolation should be disabled Time offsets from GMT should both be set to 0 (switch and mobile) Binning should be set to message with the bin size of 1

15

Decode Settings Scanner Ec/Io Threshold should be set to -30 Scanner Load Mode should be set to Load all scanner data Load Speed Default should be set to Load all

WCDMA SHO simulation settings should be kept at the default values Reporting range Events Hysteresis Events = 3dB Time To Trigger Events Max. Active Set Size = 1000ms =8 = 5dB

16

GPS Transformation should be set to Default (degrees)

17

5 Query Design
5.1 Coverage Holes filter
Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Coverage Holes filter To find areas in the network which have bad RSSI coverage Scanned RSSI < -85 dBm

Step 1: From Analyzer Classic view, load the logfile WCDMA UE + Scanner Drive.SD5. Step 2: Locate the Uu_Scan_RSSI parameter from the Attribute Explorer (under UMTS Other grouping) and by right-clicking on it, display it on a chart. Step 3: By right-clicking on the scanner stream name, select Create new filter.

Step 4: Create the filter with the title as above, and select the Uu_Scan_RSSI parameter using the Attribute Picker button ( ). You will notice that the wizard

automatically puts the state( ) function around the parameter name. This is because not every message contains every parameter. So to include it in a filter, it will need to be held across messages which do not contain the RSSI. Step 5: Selecting the filter type to be strictly less than (<) and enter the threshold coverage level of -85dBm.

18

Title

Attribute Picker Expression Builder

Boolean operator Output format Threshold

Step 6: Click OK to apply the filter. The chart should be filtered to only show the values below -85dBm:

Step 7: Add the CPICH_Scan_EcIo_SortedBy_EcIo_0 parameter to the same chart by dragging it onto the chart (from the UMTS Nth Best grouping). Notice how this parameter has also been filtered. Note: Filters are applied to the whole stream, meaning when you display the best EcIo value on a chart, you are only showing the EcIo values where the RSSI is greater than -85dBm.

19

Step 8: Now open Tools Analysis Manager, select the Filter option and click the New button. This will open the Filter Wizard. Step 9: Give your new filter the title: Poor EcIo. Step 10: Using the Attribute Picker ( ) as before, select

CPICH_Scan_EcIo_SortedBy_EcIo (from the UMTS Nth Best grouping). Step 11: Choose the less than or equal to (<=) option, and enter -10 as the threshold. Step 12: Click OK to close the wizard, and OK again to save your query into the workspace. Step 13: Right-click on the scanner stream name and follow the Filter sub-menu. The new Poor EcIo filter is not selected. This is because it was created from the Analysis Manager, not from the right-click menu of that stream. Step 14: Select your new filter and you will see the chart filtered even further to only show areas where there is both RSSI < -85 AND EcIo <= -10. Step 15: Right-click on the scanner stream name and follow the Filter sub-menu. Select the OR option, and you will see your chart change to look like this:

20

This is because you are now filtering for all areas where either RSSI < -85 OR EcIo <= -10. You have displayed the RSSI and EcIo on the chart, and are now showing all areas where either of these 2 filters has been triggered. Step 16: Disable both the filters by de-selecting it in the filter list again. (When filters are enabled, they have the small tick displayed next to them.)

Important Note about filters: Regardless of which parameter you use to filter the device stream, all parameters you view on the map, chart, table etc. will also be filtered.

21

Therefore, it is best to use the Attribute Picker(

) to choose your parameter,

because RVS will automatically add the state( ) function around your filter parameter, to hold it across all other messages that do not contain that parameter. See the Annex in page 63 for a more detailed description of the state( ) function.

5.2 Coverage Holes binned


Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Coverage Holes binned To find bad pilot coverage areas within the network Strongest RSCP < -90 dBm

Step 1: Unless it was opened in the previous exercise, open logfile WCDMA UE + Scanner Drive.SD5. Step 2: Open the Tools menu and select Analysis Manager. Note: This can also be performed by the hotkey CTRL-A Step 3: Select the Binned Query type and click the New button. Step 4: Type the name Poor Coverage (scanner) into the Description field. Step 5: Click the left mouse button to place the cursor into the expression builder area Step 6: In the Attribute List, scroll down to find the UMTS grouping. Then from inside the Nth Best grouping, double-click on: CPICH_Scan_RSCP_SortedBy_EcIo Step 7: You will notice that the parameter has been added to the expression builder panel, but with a difference, where there are two square braces after it and the cursor has been placed between them. This denotes that the parameter is actually an array. It can contain many RSCP values all at the same message point, but it is sorted by the relative EcIo value of each. This sorted array contains the strongest signal at array

22

position 0, the next strongest at position 1, and so on, for all values scanned at a particular message point.1 Step 8: Type 0 (zero) between the square braces (to indicate the strongest signal), and complete the expression by typing the equality check: CPICH_Scan_RSCP_SortedBy_EcIo[0] < -90 Step 9: You will also notice that the Format in the top-right corner has automatically jumped to WCDMA RSCP. This is now incorrect, as we have just created a Boolean expression an expression that can only evaluate to either FALSE or TRUE, represented internally as 0 or 1. Step 10: To change the format of the result to match the expression, it is possible to either scroll through the list until you find it, or if you know another parameter with the same units you can select it from the Attribute Picker( ). It is also possible to type directly into the format box, and it will automatically index the search on what you type. Select the format box, and type b and o and you will notice that you have already selected Boolean. Step 11: Click OK to close the Binned Query builder, and OK again to save your query into the Analysis Manager. Step 12: Inside the scanner stream in the Workspace Explorer, you will be able to find your new Binned Query, which you can display on the map.

1 Arrays can be either sorted arrays where the array elements are sorted from 0..n (where n is the number of valid measurements) or sparse arrays which are indexed according to a different parameter, such as Scrambling Code.

23

Step 13: This gives a good overall picture of where the problem lies, but it would be better to only show the points where the holes existed. We will now modify our query to remove the orange false points. Right-click on the query name in the Workspace Explorer:

24

Step 14: Modify the expression to place an if( ) function around it2: if( CPICH_Scan_RSCP_SortedBy_EcIo[0] < -90, 1, NULL ) Step 15: Save the query again and re-display it on a map. You will notice that all the points are now visible (some may have been hidden by false values previously.

2 Notice the commas separating the elements of the statement, and the use of the keyword NULL to create an empty bin for the query at that message point. This works in the same way as MS Excels conditional statement: if( condition, true statement, false statement)

25

5.3 Pilot Pollution 1 binned


Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Pilot Pollution 1 To find areas where there are too many good quality signals. For every point in the map, find and locate the count of the number of EcIo values that are greater than -14dBm and test whether it is > 3.

Step 1: Create a new binned query and enter the title Pilot Pollution 1. Step 2: Click inside the expression builder panel to move the cursor and scroll down inside the functions list on the right-hand side until array_count is found. Step 3: Double-click on array_count and you will notice that it has been added to the expression builder with placeholders for the various elements of the function. This function needs a parameter, a test and a constant expression: array_count( <<attribute[]>> , <<operation>> , <<expr>> ) Notice how you are prompted for an array-parameter by the square braces. Step 4: With the <<attribute>> part still highlighted, scroll down inside the attribute list inside the UMTS grouping and inside Nth Best and double-click on the parameter: CPICH_Scan_EcIo_SortedBy_EcIo Step 5: Now select the operation marker in the middle of the function and type > and select the expression marker at the end of the function and type -14. Step 6: Your expression should look like this: array_count(CPICH_Scan_EcIo_SortedBy_EcIo[], > , -14) Step 7: Once you have saved your query, display it on the map (ensuring you select it from the scanner stream of the file, not the UE stream!)3

Notice how the legend has its highest range as above 0 and all values are concentrated into this range. This is because the format automatically set itself when we selected the sorted EcIo parameter.

26

Step 8: Edit your query and change the format to Count, and your results should be as follows. The important thing to note is that the results are still the same, but the formatting of the results is much more meaningful.

27

Step 9: Now we have displayed the count of scanned values above -14 dBm, edit your query to repeat the addition of the if( ) statement from the earlier example and tighten the definition to only show the areas where there is pilot pollution according to the original aim of the query. Your query expression should look like: if((array_count(CPICH_Scan_EcIo_SortedBy_EcIo[]) , > , -14 ) > 3, 1, NULL)

28

5.4 Exercise: Binned Query (Pilot Pollution)


Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Pilot Pollution 2 To find areas where there are too many signals within 6dB of the strongest SC. For every point in the map, find and locate the areas where there are 4 or more scanned signals within 6 dB of the strongest scanned signal.

Hint: Modify your query in the previous example, which look as below: array_count(CPICH_Scan_EcIo_SortedBy_EcIo[], > , -14) Make sure the end result shows you the areas, which contains >=4 scanned signals within 6 dB of the strongest scanned signal. Expected Result: With the new expression youve modified, you should be able to spot out the badly affected areas, which contains >=4 scanned signals within 6 dB of the strongest scanned signal.

29

5.5 Solution: Binned Query (Pilot Pollution)


Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Pilot Pollution 2 To find areas where there are too many signals within 6dB of the strongest SC. For every point in the map, find and locate the areas where there are 4 or more scanned signals within 6 dB of the strongest scanned signal.

Solution 1: Build up your query as in the previous examples, until you have the following expression:

This should display results as follows (after a legend re-format):

30

Badly affected area

>= 4 scanned signals within 6dB of the strongest scanned signal

31

5.6 Exercise: Binned Query (Inbound Pilot Pollution per SC)


Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Pilot Pollution 3 To find poor quality Scrambling Codes in good coverage areas For every point in the map, find and locate the SC, where the EcIo was worse than -14 dBm and RSCP better than -100 dBm.

Hint: For this query, use the strongest scanners (not handset) Nth Best grouping (sorted by EcIo) parameter and make sure the following information is included:

Strongest EcIo is < -14, and Strongest RSCP is > -100 Return the strongest SC value at message points where this is true,

Your expression should look like: If ((Strongest EcIo is < -14) AND (Strongest RSCP is > -100), display strongest SC value, NULL) Expecting Result: The map legend results should show most of the pilot pollution is affecting a small number of cells, such as 266, 267, 269 and 271. This is all concentrated around the same area.

32

5.7 Solution: Binned Query (Inbound Pilot Pollution per SC)


Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Pilot Pollution 3 To find poor quality Scrambling Codes in good coverage areas For every point in the map, find and locate the SC, where the EcIo was worse than -14 dBm and RSCP better than -100 dBm.

Solution: For this query, use the strongest scanners (not handset) Nth Best grouping (sorted by EcIo) parameter. Your solution should look like: if ((CPICH_Scan_EcIo_Sorted_EcIo[0] < -14) AND (CPICH_Scan_EcIo_Sorted_EcIo[0] > -100), CPICH_Scan_Sc_Sorted_EcIo[0], NULL) Your final result should look like the map below:

33

Interpretation of the results: The map legend results show that most of the pilot pollution is affecting a small number of cells such as 266, 267, 269 and 271. This is all concentrated around the same area.

5.8 Call Setup Time Analysis histogram


Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Call Setup Time Hist To display the distribution of the call setup time between the RRC Connection Request and the call start. Show the counts of setup time in 1 second steps up to 6 seconds, and then group all times greater than 6 seconds together.

Step 1: Press CTRL-A to display the Analysis Manager. Step 2: Double-click the Histogram Query icon to open the Histogram Wizard. Step 3: Enter the histogram querys name: Call Setup Time Hist Step 4: From the Attribute Picker ( Uu_TimeBetweenRRC_REQandCallStart (from the UMTS Statistics Data grouping.4) ) , select:

4 You will notice that the state( ) function has not been added this time. This is because we are performing more of a statistical analysis of only the setup times themselves, and do not require the value to be held across subsequent messages.

34

Title

Attribute Picker Expression Builder

Histogram Type

Column settings Manually create & edit columns Number of autogenerate columns

Filter

Auto-generate columns

Step 5: Select the 3rd option of histogram types I want to specify ranges for my histogram bars.. Step 6: Set the minimum value to be 0. Step 7: Set the maximum value to be 6000, and select the Inclusive checkbox. Step 8: Type 6 as the number of columns to generate and click the Generate button to generate these columns.

Step 7: You will see your 6 ranges appear in the box above. Notice how they are all set to be non-inclusive on the lower range, but inclusive on the upper range. This is important to note, as it will stop values from being counted twice.

35

Step 8: Now we want to set our final rangetype 6000 in the minimum value. Step 9: Disable the inclusive box from before, and click the Add button. Your range of Greater than 6000.0 will be added at the end of the list. Step 10: Click OK to end the wizard, and OK to save you query. Step 11: From the Query section in the Workspace Explorer (ensuring you are looking at the handset device stream now), open the Histogram grouping, right-click on your new histogram and display on a table. Step 12: Change the view to the Histogram tab in the middle, and you will see your results displayed.5

5 To improve the efficiency of this query, edit the query, and select the Filter button. Build the following filter: Uu_TimeBetweenRRC_REQandCallStart > 0 This will only trigger the query on message points where there are values for the call start time. It will not affect the results, but the query will be more efficient in terms of speed and memory usage

36

5.9 Dropped Call Statistics statistics


Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Dropped Call Stats To display the count of the dropped calls. Generate statistics for the dropped calls, to show the total count.

Step 1: From the handset device stream, right-click on the Queries item in the Workspace Explorer and choose Create a New Query. Step 2: Select the Statistic query wizard and click the New button. Step 3: Enter the statistic querys name: Dropped Call Stats. Step 4: Choose the Uu_CallDopped parameter using the Attribute Picker ( the UMTS Event Data Call grouping. ) from

Step 5: Keep the default option of not excluding any data from the calculation. This option should only be used if the engineer is certain that the beginning of end of the collection contains useless information, or for example, the drive test trace started while being served by a micro-cell in an underground car-park which should be excluded from the statistics. Step 6: Select OK to exit the wizard and OK to save your query.

37

Step 7: From the Workspace Explorer, open your query onto a Workbook.6

5.10 UE Analysis Statistics crosstab


Logfile Name Aim Definition Nemo Pilot Pollution.dt1 File and UE statistics To generate statistics for each call which is contained in the logfile Generate file and call statistics for each call, indexed using the call ID, using UE parameters collected during the calls.

This set of examples will build up a large crosstab query to return overview information for the logfile and also call-by-call statistics such as setup time, setup procedure outcome, average quality and SHO overhead. To define the initial query, first we have to define a set of file statistics such as the start & end time, file-size, and relate these to the filename. In another word, it can be expressed as: Return statistics x, y & z per file. This statement is divided into 2 parts: the statistics (X, Y & Z) and the dimension (File). So our crosstab query is built up from these basic objects a dimension and a set of statistics. The dimension will be used to create a set of unique rows, and the columns will contain the statistics results.
6 Notice that it has been created into a sheet called Statistic Formatted Data. All statistics will be added to this sheet. Similar sheets are created for histograms, time series binned queries and crosstab/event queries.

38

Step 1: Load file Nemo Pilot Pollution.dt1 Step 2: Open the Analysis Manager and select the Crosstab query wizard. Step 3: Enter the crosstab querys name: File and UE statistics Step 4: Choose the dimension of FileName from the Attribute Picker ( ) from the

Independent File Info grouping.7 Note that the title shows (last valid value). Note that the state( ) function has been added around your dimension to make sure that the FileName attribute is held across the whole file (so you can ask for any statistics from any Layer 3 or proprietary message, and they will still be calculated for the filename).

Title

Dimension Attribute Picker

Dimension List

Statistics List

Reorder & Copy Buttons

Crosstab Global Filter

Step 5: Click on the New Statistic button to add a new statistic. Step 6: Enter the statistics name: File Size.

7 By using the Attribute Picker, state( ) will always be placed around the parameter. If the Expression Builder is used, the function should be manually added to the expression before choosing the dimension parameter.

39

Title

Attribute Picker

Expression Builder Statistic Type Statistic filter

Step 7: Each statistic can take one of a number of pre-defined types, but for this case, we will be using the Last Valid Value statistic to return the most recent value. Step 8: Choose the FileSize parameter from Attribute Picker (inside Independent File Info). Step 9: Click OK to save the statistic, OK to exit the Crosstab wizard and OK to save the query. Step 10: From the Nemo Pilot Pollution file, right-click on the new Crosstab query and display on the Statistics Explorer. You can see the Filename dimension is displayed in an unique row right on top, and the File Size column as the statistic.

40

Step 11: The file size units are still bytes, so edit the query and select the File Size statistic. Step 12: Click the Edit Statistic button, and then click Edit to open the Expression Builder for the expression. Step 13: Divide the FileSize by 1024, and set the format to Unsigned 64-bit integer. Step 14: Save the modification and select the query again in the Statistics Explorer. Note: Your filesize will now be formatted in Kb. Step 15: Add 2 new statistics: Mean EcNo (0), and Mean Lin. EcNo (0). These should be both using the Uu_ActiveSet_EcNo parameter from the UMTS Downlink Measurements grouping. The statistics types to be used as Mean, and Mean (linear) respectively. Step 16: Your Statistics Explorer should now display the following results.8

8 The Mean statistic simply averages using the arithmetic mean of all valid values. Mean (linear) value converts the values into the Watt scale, performs the average and then converts the values back into dBm scale.

41

Step 17: Now we want to create sub-dimensions, so we can calculate the statistics for each call inside the file, so we add another dimension of Uu_Call_ID. Edit the query and use the Attribute Picker ( ) to add the Uu_Call_ID as a second dimension.

Step 18: Now add the following statistics on your own (see over the page at Step 19 for the Format to use in each case):

Count of drops, Setup Time (s), SHO Overhead, and Call start

42

Step 19: The formats of the statistics should be set as follows: Count of drops = Count Setup Time (s) = Float SHO Overhead = Percentage Call Start = TimeOfDay

43

This can be done by editing the statistic parameter and setting the Format option in the Expression Builder manually. This should give results formatted as follows:
Filter by dimension Mean statistic gives average for whole file, but accurate per call

HH:MM:SS:sss

Only Valid at start of file

6 decimal places

2 decimal places

Interpretation of the results:

There were a total of 11 calls (call ID starts from 1 at the first call), where 8 of them were dropped calls. Out of the 3 remaining calls, none of them was set up successfully. Just over 4% of the whole file was spent in SHO (>1 SC in the Active Set). Individual calls can be analysed by selecting the row and clicking the Filter button all other views (Message Browser, Map, Chart etc) will only display that call. The number in brackets after the dimension refers to the number of messages from the file, which was identified by that dimension. Eg: call 10, which failed to set up only had 78 messages between (and including) the RRC Connection Request and the failure.

44

5.11 Scanner and UE Analysis at Call Setup event


Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Merged Call Setup Analysis To generate statistics at each call setup which contains UE and synchronised scanner data Create event query triggered on RRC Connection Request, reporting UE and scanner statistics, indexed using the UEs call ID.

With the scanner and UE collecting data at the same time, it is important to be able to analyse both at the same time. To allow queries to be constructed so that both devices can be analysed at the same time, they can be merged using the Superstream function (under the Tools Create Superstream menu, or use the hotkey Ctrl-U). An event query will be used for this example, which is a special type of crosstab query, with a trigger condition and window applied to it. Step 1: Open the Analysis Manager and select the second tab: Existing Analyses. Step 2: Select the previous query File and UE Statistics and click the Export button to save your query. We will be using it later. Step 3: Superstream the scanner and handset device streams from the above file, using the default merge settings (based on timestamps). It is possible to merge on the timestamps as both devices were connected to the same collection unit.

Step 4: Press CTRL-A to open the Analysis Manager, and double-click the Event Query wizard.

45

Step 5: Create the trigger Uu_RRC_MsgType== 202 (RRC Connection Request), use a window setting of 5000ms before the event.

Trigger Attribute Picker Trigger Expression Builder Window Options

Window Size

Protocol Discriminator

Discriminator Attribute Picker

Step 6: Click Next > and the usual crosstab query wizard will be displayed, with the EventTime dimension added automatically. This is the function event_time() in relative milliseconds from the beginning of the file, and will uniquely identify the event on a row. Step 7: Enter the title Merged Call Setup Analysis, and create the first statistic as the Last Value of state(Uu_Call_ID). Step 8: Click OK to close the wizard, and OK to save your query. Display the query on the Statistics Explorer from the Queries Crosstab grouping.9

9 The query will only evaluate when the trigger condition is fulfilled. A window before and/or after the trigger condition in a number of messages or milliseconds is created, and the crosstab query will be evaluated only during the window. The discriminator is mainly used to distinguish between calls on protocol interfaces, but it can also be used to extract individual calls from a drivetest file.

46

Call ID = 0, indicating RRC Connection Request for another reason

Repeated call ID, indicating retry

We will now filter for only the requests for Establishment Causes of MOC. Step 9: Edit the trigger to also trigger on all establishment causes valid for MOCs.

Step 10: Click Next to display the crosstab details.

47

Step 11: Add new statistics for:

Scanned EcIo (Mean of CPICH_Scan_EcIo_SortedBy_EcIo[0]), and UE EcNo (Mean of Uu_ActiveSet_EcNo[0])

This is the important step in this exercise because you have merged the handset and scanner into the same stream, where you can access the parameters from both devices in the same query.

You can see here that there are a different number messages being analysed in each 5-second window before each connection request message. This is due to the fact that each window may contain more handset mode messages than another, but the scanner messages should be uniform (to the logging frequency set in the scanner device). Step 11: Open the Analysis Manager and switch to the second tab: Existing Analyses. Step 12: Highlight all queries created so far and click the Export button. Save your queries to your desktop. We will be using these queries later.

48

5.12 Dropped Call Analysis event


Logfile Name Aim Definition Nemo Pilot Pollution.dt1 UE Dropped Call Query To analyse each dropped call to report possible diagnosis Create event query triggered on dropped call event, to analyse Pilot Pollution, and Missing Neighbours.

This event query will concentrate around the Uu_CallDropped events in the file. We will create 2 windows this time, one with 10 seconds before and 5 seconds after the drop. We will compare the SC before and after the drop, use the definition of pilot pollution already covered in an earlier example, and also the difference between the RSSI and RSCP. These will give us a good diagnosis of possible contributors to the drop. Step 1: Ensure that the Nemo Pilot Pollution.dt1 file is loaded. Step 2: Create an event query that triggers on the Uu_CallDropped event, and create 2 windows, 10000ms before and 5000ms after the trigger Note: Do not merge the windows Step 3: Do not choose a discriminator, but click the Next > button. Step 4: Change the Format of the EventBefore dimension to Before After. This returns text in the Statistics Explorer that is easier to understand.10

10

This 2nd dimension allows us to separate out the window around the trigger event into strictly before, and on or after the event, allowing us to analyse statistics around the event.

49

Step 5: Create the other statistics to match the following:

New Automatic Dimension

Step 6a: The Drop time statistics should be the Last Value of: reltime2abstime( event_time() /1000 ) with a format set to TimeOfDay. Step 6b: The Mean EcNo(0) statistics should be the arithmetic mean of the strongest EcNo value in the Active Set. Step 6c: The parameter to use for the Recent IntraFreq Event statistics can be found in UMTS Uu_RRC UL-DCCH Measurement Report: Uu_RRC_IntraFreqEventResults_eventID Step 6d: The % Pilot Pollution statistic is a Percent True statistic, with the equation set to: array_count(Uu_MonitoredSet_EcNo[], > , Uu_ActiveSet_EcNo[0]-6) > 0 with the format set to Percentage.

50

Step 6e: The Recent Active Set SC(0) statistic is a Last Value statistic, of the SC of the strongest cell (strongest according to the EcNo). Step 6f: There is also a rough Missing Neighbour detection statistic, comparing the difference between RSSI and strongest (in terms of EcNo) RSCP. The % (RSSI-RSCP) > 15 statistic is a Percent True statistic, with a format of Percentage. The expression should look like: (UTRA_UE_CarrierRSSI Uu_ActiveSet_RSCP[0]) > 15 Step 7: Add a new statistic, called Count MR and set the type to Count. This is the final statistic of Measurement Reports within the window. Step 8: Open the Expression Builder and choose the parameter Uu_RRC_MsgType from UMTS Uu_RRC grouping.

Step 9: The Format will automatically change to match the enumerated type, but reset it to be Count to match the statistic we are creating.

Step 10: Click the OK button to close the Expression Builder, and click Edit to open the filter Expression Builder.

51

Step 11: Here you will be creating a filter, to only trigger the statistic at certain messages. Click on Filters Edit button to create the following expression: Uu_RRC_MsgType == 9 This has created a filter to be applied inside the window, and count the number of messages that satisfy the filter criteria. When the query is evaluated, it will trigger on the dropped call and run the statistics inside the defined windows. Note: This statistic will only be run when the Measurement Reports are found, and then the messages will be counted. Step 12: Click OK to close the wizard and OK to save the query. The results of the query should be as follows when analysed in the Statistics Explorer.

Missing Neighbour problem? Or was it Pilot Pollution, and a network problem in adding to the Active Set?

Interpretation of the results:

The drop expanded (at event time 627999) was on SC 482 before the drop, and SC 282 just after the drop. The difference between RSSI and RSCP was greater than 15dB for 70% of the before window. The pilot pollution (defined as the percentage of time when there were SCs in the Monitored Set within 6dB of the strongest in the Active Set was at 30%.

52

There was also an average strongest EcNo of -17.1dBm during the 10 seconds before the drop. However, there were no requests made by the UE to modify the Active Set.

Two of the drops also contained an Intra frequency event (RRC_e1b) Measurement Report within the 10-second window before the event, and the count of Measurement Reports within the windows is shown.

5.13 Call Setup Sequence Analysis Crosstab


Logfile Name Aim Definition Nemo Pilot Pollution.dt1 Call Sequence Analysis To analyse the Layer 3 messaging for call setup procedures Create a crosstab query to display the RRC Connection sequence, CM Service Request and CC Alerting messages for each call setup sequence.

To create this query, we shall keep the final result in mind to guide us through our query design. In another word, we want to see the individual messages in their sequence to spot any problems in each call in our results. This implies that your query will contains a dimension of Call ID, and a set of columns to hold each RRC / NAS message in the sequence. Step 1: Open the Analysis Manager and double-click on the Crosstab query wizard. Enter the querys title Call Sequence Analysis Step 2: Create the dimension of Uu_Call_ID from the Attribute Picker( Last Valid Value after the name. Next, we will create our statistics columns: RRC message type, and NAS messages. Step 3: Create a new statistic, returning the Uu_RRC_MsgType parameter. We set the statistic type to Last Value. 11 ), and add

If you open the Expression Builder for this parameter, you will see the format set to WorkingSetUu_RRC99Proj. This will format the numerical code number to the correct text.

11

53

Step 4: Repeat this process for the GSM_Um_Msg_Type parameter (from GSM Dedicated Radio Link grouping). Step 5: Now click OK to close the query wizard and OK to save your query, and display the results so far on the Statistics Explorer:

Not a call attempt Too many messages included for our purposes

54

You can see that although we have returned a unique row for each call, we have not isolated the exact RRC messages we wanted to find, and looking at the number of messages in brackets after the call ID, we can see that we have actually included all messages in each call in the search. To isolate the individual messages, we will add a global crosstab filter. Step 6: Right-click on your query name and choose Edit Analysis Definition. Step 7: Click on the Filter button on the bottom left corner and you will be presented with the Expression Builder. Step 8: Build the following filter.
Filter only for valid calls (no Location Updates) Only trigger on messages we are interested in

Note the AND / OR Boolean logic

Step 9: Save your query and check the results in the Statistics Explorer. Notice how the number of messages being checked has significantly reduced.12

Fewer messages

12 This filtering method is useful for improving the efficiency of your query, but it should be used with care, as it can influence the results of averaged statistics, as the query is only evaluated at message points where the filter criteria is satisfied.

55

We have still not isolated individual messages on unique rows though. To achieve this we need to identify another parameter to include in our dimension one that uniquely identifies each message point, and that is Time. Step 10: Add a second dimension of Time (from the Independent > Message Info grouping) and re-save your query.

Single messages

Now we can see that as well as filtering our query for only specific messages, we have identified each of these on their own row (this can be seen by verifying the number of messages in brackets after the dimension). This has made our query much more efficient too, as the number of messages scanned for the query has reduced from over 10500 to just 46! Compare the successful call setup 1 and failure 4. Step 11: Open the Protocol Stack Browser (at the streamname) for the UMTS Radio Interface view, and tile the two windows horizontally.

56

Step 12: Highlight the top level of call 4 as in the screenshot above, and click the Filter button in the Statistics Explorer:

You will now see only call 4 extracted into the Protocol Stack Browser, so you can isolate all the messaging in that call. In fact, all views (map, chart, table, Message Browser etc) will now be filtered for this call, allowing you to concentrate on only this call. To disable this ad-hoc filter, simply toggle the filter button OFF in the Statistics Explorer.

57

6 Report Templates
6.1 Single File Report Template
Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Single File Report Template To create a report template that will return KPIs from one file. Create a report template from existing parameters and queries which can be run on any file. This will return the total number of dropped calls, a histogram of the handoff state, the average call setup time, mean (linear) RSCP for the strongest SC in the Active Set and total call duration for all calls in the whole file.

Step 1: Ensure the above Nitro file is loaded. Step 2: First we look at the requirements for the report. These can be separated into existing parameters and those we need to generate through queries. Existing KPIs

Average call setup time Dropped call total

New KPIs

Handoff State histogram Mean (linear) RSCP from the strongest Active Set SC Total call duration for the whole file.

The Handoff State may already be a parameter, so it could be possible to add this to a workbook to obtain the automatic histogram view of the data, but we are trying to create a generic report template to be run on other files. To use the automatic view, the legends will be controlled through the format group of the parameter and may filter out ranges not found in the file. For this reason, we need to force the number of ranges used in the histogram through a query.

58

Step 3: Find the call setup time parameter Uu_TimeBetweenRRC_REQandCallStart (from UMTS Statistics Data grouping). Display it on a workbook by right-clicking on the parameter. Step 4: Keeping the workbook open, switch back to the RVS solution and find the Uu_CallDropped parameter from the Events grouping and from the right-click menu, add or displaying it to the existing workbook (active workbook).

Step 5: Notice how all 3 views from these two parameters have been added to the workbook (Series, Histogram and Statistic Formatted Data tabs). Save the workbook to your desktop. Step 6: Now we need to create the queries to add to the report. Create a histogram query using the Uu_UE_HandoffState parameter, and creating discrete values from 0 (inclusive) to 6 (inclusive). Step 7: Create a crosstab query with FileName from the Attribute Picker( dimension, and add 2 new statistics for: ) as the

Mean (linear) of Uu_ActiveSet_RSCP[0] formatted as WCDMA RSCP, and Sum of Uu_CallDuration formatted as Time.

Step 8: Save your query into the workspace and check the results are accurate. Step 9: Open the report template through the Workbook Open Workbook/Report menu option, and choose to run it on the Nitro file. Step 10: From the right-click menu, find your new query and display it on the existing workbook. It will be added to a new sheet called Crosstab Formatted Data. Step 11: These tabs will contain the results from whatever file you run the report template on. Open Sheet 1 and create your KPI statistics here as follows:

59

Holding Time or Mean Time Between Failures = call duration / drops (roughly)

From Statistics results

From Crosstab results

From Histogram results

Step 12: Now go back into the all other sheets and delete the raw data from row 2 downwards. This cleans the report template so that it can be run on any other file, of varying size. Step 13: Save your report template. Step 14: Open the Nemo Pilot Pollution log file and run the report template on this file as you did in step 9. Compare the results.

60

6.2 Multiple File Report Template


Logfile Name Aim Definition WCDMA UE + Scanner Drive.SD5 Nemo Pilot Pollution.dt1 Multi-File Report Template To create a report template to be used to compare KPIs from 2 files. Add a previous query onto a workbook and convert it into a report template using Excel links and formulae.

For this exercise, we will build up a report template using both of the above files and the previous query that we saved: File and UE Statistics. Step 1: If you have closed the workspace since writing the previous query, open the Analysis Manager and import the query again. Step 2: Find the query from the handset device stream of the WCDMA UE+Scanner Drive file. Right-click on the File and UE Statistics query and choose Display on Workbook. Note: The sheet is automatically named Crosstab Formatted Data.

Step 3: Leaving the Excel workbook open, right-click on the query from the Nemo Pilot Pollution file and select Display on Workbook (Active).

61

Step 4: You will notice that query results from both files have been added to the Excel workbook, separated by a blank column. Change to Sheet 1 and create the following template:
=MAX('CrossTab Formatted Data'!B:B)

Threshold

='CrossTab Formatted Data'!A2

=SUM('CrossTab Formatted Data'!Q:Q)/Sheet1!C7*100

=IF(D7>$G$4, "Fail", "Pass")

Step 5: Switch sheets back to the Crosstab Formatted Data sheet. Step 6: Highlight all rows from 2 downwards, and delete the data from the queries.13 Step 7: Close your report template and save it to your desktop. Step 8: From the Workbook menu, choose Open Workbook/Report, and select your report template. Step 9: You will be presented with the following dialog, where it prompts you the most recent file is used to create the report. This time, choose the WCDMA UE+Scanner Drive file first and click OK.

13 This might seem a little strange, but we have already embedded the query definition into the workbook and set up the front sheet template. Now we need to make sure the data used to create the template does not affect the statistics next time it is run.

62

Step 10: The dialog will re-appear, but this time prompting to replace the WCDMA UE+Scanner Drive file. Choose the Nemo Pilot Pollution file stream and click OK. Step 11: The report will be regenerated, but this time with the handset results reversed.

You have now created and run your first report template, successfully running it on different handsets. The Dropped Call Rate threshold can be modified inside the report template, and each file will be analysed individually against this threshold value.

63

7 Appendix
7.1 state() vs. prev_state()
Due to the nature of how the information elements are reported in different Layer 3 messages, useful engineering parameters such as signal strength and quality may not be at the same message point as events such as dropped calls or call setup failures. Therefore, any query such as an Event query that triggers on a dropped call may trigger on an idle-mode System Information message, or a CC Disconnect message with an abnormal cause code. If the most recent EcNo or ServRxLev are required, it is necessary to look back in the message sequence to the exact message where they were reported. This is performed using the state() function. This function starts by looking in the current message for the parameter, but if it does not find a valid value, it iterates back in the message sequence until it finds the first valid value. The prev_state() function works in exactly the same manner, but the difference is, it begins its search at the previous message. This is illustrated by the following two screenshots:

64

Where the selected message is the Measurement Report where SerRvLevSub = 71dBm, the stateform shows that the prev_state() function still returns -75. However, when the following message is selected.

Both values are the same. This can be used to easily identify GSM cell-reselections where: state( ServCI ) != prev_state( ServCI )

7.2 Little-known query commands


7.2.1 abstime( rounding_factor )
This function can be used as a dimension in Event Queries. The window defined before and/or after the event trigger will be sub-divided into rounded seconds. The rounding factor (seconds) is used to subdivide the window by starting at the event time and creating bins just before the event (rounded down). Eg: abstime( 0.5 ) creates half-second sub-dimensions throughout the defined window, rounded down to the nearest half-second. This can also be used as a statistic for an event query, to return the absolute time. A useful tip when you choose this as a dimension, is to set the Format Group to TimeOfDay which formats the results as HH:MM:SS.mmm.

7.2.2 delta( parameter )


This function (for crosstab and event queries) returns the difference between the current value of the parameter and the previous value. Essentially, this command performs the following: state( parameter_x ) prev_state( parameter_x )

65

7.2.3 get( parameter, index, message_number )


For example, when used as a statistic in an Event Query, CPICH_AllSets_UE_EcNo_For_SC[ state( get(Uu_ActiveSet_SC, 0, event_message()) ) ] extracts the zero array position (strongest) of the Active Set Scrambling Code at the time of the event trigger, and then uses that SC value to lookup the EcNo value in the CPICH_AllSets_UE_EcNo_For_SC[ ] array.

7.2.4 default( primary_ expression, secondary_ expression )


This function is used in expressions when it is not possible to guarantee that the primary_expression contains a value. If this was not used, any message points where the primary_expression evaluates to NULL would cause the expression to fail. By using the default() function, if the primary_expression is NULL, the secondary_expression will be used. The secondary_expression should be numerical to ensure the same situation does not arise. Eg: Uu_ActiveSet_EcNo[0] default( Uu_MonitoredSet_EcNo[0], 0 )

7.3 Setting a timer statistics using crosstab queries


This method requires a trigger message, and a search message, and the result is then the time offset between the two. The design of the crosstab query requires a filter, dimension and a statistic. In the following example, we will calculate the duration of a soft-handoff event in WCDMA, starting at the UL Measurement Report, and terminating at the UL Active Set Update Complete message. The method we use is to trigger the query on the last message in the sequence, and then look backwards in the file for the first message in the sequence. Trigger message = UL_Active_Set_Update_Complete Search message = UL_Measurement_Report

Dimension = Time (this returns a row for each unique trigger message) Statistic Type = Last Value

66

Expression = Time prev_time_where(Uu_RRC_MsgType == 9) Format = Time Filter = <blank> (our trigger message)

Crosstab Filter = Uu_RRC_MsgType == 1

The problem with this method is that it assumes that the message sequencing in the logfile has no abnormal cases. If the logging tool missed an UL_Measurement_Report, the query would trigger on the UL_Active_Set_Update_Complete message but the search message would actually be the UL_Measurement_Report of the previous soft-handoff event, so the timer will be incorrect.

7.4 Cell Lookup Query Functions


It is possible to search the cell database for extra data added to the cellrefs file (using an edited .INI file). The following functions can be used in Crosstab and Event queries to give even more useful information to the engineer to help investigate the problem. These functions return elements of a specific GSM serving site or sector:

GSMServingSiteLookup( parameter, MCC, MNC, LAC, CI )

67

GSMServingCellLookup( parameter, MCC, MNC, LAC, CI )

These functions return elements of the nearest neighbour site or sector:

GSMNeighbourSiteLookup( parameter, Lat, Long, MCC, MNC, BCCH, BSIC ) GSMNeighbourCellLookup( parameter, Lat, Long, MCC, MNC, BCCH, BSIC )

These functions return elements of a specific WCDMA site or sector:

WCDMASiteLookup( parameter, Lat, Long, SC ) WCDMACellLookup( parameter, Lat, Long, SC )

For example, if your cellrefs file had the following extra columns added to it: Antenna_Type Mech_Tilt = String

= Integer

These columns could be accessed as statistics in an Event query as follows:

WCDMACellLookup("Antenna_Type", Latitude, Longitude, state(Uu_ActiveSet_SC[0]))

using FormatGroup set to String, and

WCDMACellLookup("Mech_Tilt", Latitude, Longitude, state(Uu_ActiveSet_SC[0]))

using FormatGroup set to Short. The Latitude and Longitude of the triggering dropped call are used, as is the most recently reported strongest SC value.

68

7.5 CellHandle Lookup Function


CellHandle Lookup Function is a much faster function than the corresponding technology-specific cell lookup functions. This function returns a named parameter for a given site or cell:

CellHandleLookup( "Parameter", CellHandle )

This function returns the WCDMA site ID:

CellHandleLookup("SiteID", ServingSiteHandleBySC[CPICH_Scan_SC_SortedBy_EcIo[*]])

This function returns the WCDMA sector ID:

CellHandleLookup("Sector_ID", ServingSectorHandleBySC[CPICH_Scan_SC_SortedBy_EcIo[*]])

Note: ServingSiteHandleBySC attribute is used to return the identifier for the site. This array attribute is indexed by scrambling code, and so the CPICH_Scan_SC_SortedBy_EcIo attribute is used to return the scrambling code. These examples use the array indexer suntax ([*]) to return all of the values stored in the CPICH_Scan_SC_SortedBy_EcIo array attribute at each message point.

7.6 Example
A Crosstab query that uses these two expressions to define two of its three dimensions (the first dimension is based on the scrambling code). The Azimuth and Downtilt statistics also use the CellHandleLookup function, as follows:

CellHandleLookup("Azimuth", ServingSectorHandleBySC[CPICH_Scan_SC_SortedBy_EcIo[*]]) CellHandleLookup("Tilt", ServingSectorHandleBySC[CPICH_Scan_SC_SortedBy_EcIo[*]])

69

7.7 Editing existing report templates


Actix solutions use Excel as the standard reporting tool in fact, by displaying any parameter or query on a workbook, you have created a report template which can be run on other files or superstreams. This is because the workbook actually stores the name of the parameter and any query definitions inside itself, and also the name of the most recent file the report was ran/created against. This is useful when sharing report templates, as the embedded queries do not need to be distributed with the report template they are automatically loaded and evaluated when the report is run against a new file. However, to modify the queries embedded inside a report template, a particular process needs to be followed: Step 1: Load a data file. Step 2: Run the old report template against the file. This will load the queries embedded in the report template into the workspace. Step 3: Close the report template. Step 4: Modify the queries and check the results are correct. Do not change the query names. Step 5: Re-run the report template. The old queries in the template will be replaced with the modified versions. Step 6: Save the report template again. The next time it is run against a file, the new query definitions will be used. If you need to add a query to a report template, first run the report, and then by right-clicking on the query, choose Display on workbook (Active).

70

7.8 Useful Format Groups (for frequent use)


Format Group
Unsigned 64 bit integer String Percentage Boolean Before After Time TimeOfDay Count Float

Description
For integer values greater than zero For returning string values on the map Formats floating point numbers to 2 decimal places Converts 0 to False and 1 to True Converts 0 to After and 1 to Before Relative milliseconds Formats absolute times into HH:MM:SS.sss Integer values of zero and greater Formats floating point numbers into 6 decimal places

If you know the units of the parameter you want, and know it is the same as another parameter, it may be easier to use the Attribute Picker button, and choose a similar parameter. This way, your results will be formatted to match the ones you chose.

71

7.9 Parameters Used


While there are various features allowing users to search for, and save parameters as favourites, this screenshot can be used as a reference for the various parameters used in this course. [Scanner parameters] [UE RSSI and Active Set]

72

[Call ID and Handoff State]

[NAS message type]

73

[RRC Messages]

[Dropped Call and call statistics]

74

S-ar putea să vă placă și