MicroStrategy ONE

Drilling in iOS

There are two types of drilling you can use with a MicroStrategy mobile widget. Each type of drilling is handled by a separate method in the widgetHelper class.  

  • Regular drilling

    -(void)handleRegularDrillByAxisType:(AxisType)type andRowIndex:(int)rowandColIndex:(int)col

    With regular drilling, you tap on an attribute in a row in the report grid and it drills using the default drill path set in MicroStrategy Web.

    • If the default drill path is the standard hierarchical drill path, when you tap on an attribute in a row, you drill down to the next attribute in the hierarchy. For example, if you tap on Customer State, you would drill down to Customer City. 

    • If the default drill path is a custom drill path, when you tap on an attribute in a row, you drill down based on the sequence specified in the custom drill path. For example, if you tap on Customer State, you might drill down to Electronics. 

  • Link drilling

    -(void)handleLinkDrillByAxisType:(AxisType)type andRowIndex:(int)rowandColIndex:(int)col

    With link drilling, you tap on an attribute in a row in the report grid and it activates a link. This is the link that was enabled on the report in MicroStrategy Web. 

The kind of drilling specified in the mobile application code must match the kind of drilling set up for the report or report grid in MicroStrategy Web. If there is a mismatch, drilling will not take place in the mobile application. For example, if you specify that the mobile application should perform regular drilling, the report or report grid must be designed in MicroStrategy Web to use a drill path (either the standard hierarchical drill path or a custom drill path). Likewise, if you specify link drilling in the mobile application, you must enable link drilling for the report in MicroStrategy Web.  

The following dataset is used by the code samples in this topic to show how to perform the two types of drilling:

      

There are two different types of axis cells in the grid: 

  • ROW_AXIS cells

    The row axis cells correspond to the attributes that are placed in the rows of the grid. The row index and column index for the cells in the columns of the grid are color-coded in the two left columns of the table below. 

  • COLUMN_AXIS cells

    The column axis cells correspond to the attributes that are placed in the columns of the grid.  The row index and column index for the cells in the rows of the grid are color-coded in the top two rows of the table below.

 

Code samples for performing each type of drilling are shown below:

Regular drilling

  • To perform regular drilling from the element "111" (Country):

    Copy
    [self.widgetHelper handleRegularDrillByAxisType:ROW_AXIS and RowIndex:0 and ColIndex:0]; 
  • To perform regular drilling from the element "bbb" (City):

    Copy
    [self.widgetHelper handleRegularDrillByAxisType:ROW_AXIS and RowIndex:1 and ColIndex:1]; 

Link drilling

  • To perform link drilling from the element "111" (Country):

    Copy
    [self.widgetHelper handleLinkDrillByAxisType:ROW_AXIS and RowIndex:0 and ColIndex:0]; 
  • To perform link drilling from the element "bbb" (City):

    Copy
    [self.widgetHelper handleLinkDrillByAxisType:ROW_AXIS and RowIndex:1 and ColIndex:1];