Dynamic Cell Access Tips and Tricks

Dynamic Cell Access (DCA) controls the access levels for line items within modules. It is simple to implement and provides modelers with a flexible way of controlling user inputs. Here are a few tips and tricks to help you implement DCA effectively.

Access control modules

Any line item can be controlled by any other applicable Boolean line item. To avoid confusion over which line item(s) to use, it is recommended that you add a separate functional area and create specific modules to hold the driver line items. These modules should be named appropriately (e.g. Access – Customers > Products, or Access – Time etc.). The advantage of this approach is the access driver can be used for multiple line items or modules, and the calculation logic is in one place. In most cases, you will probably want read and write access. Therefore, within each module it is recommended that you add two line items (Write? and Read?). If the logic is being set for Write?, then set the formulas for the Read? line item to NOT WRITE? (or vice-versa). It may be necessary to add multiple line items to use for different target line items, but start with this a default.

Start simple

You may not need to create a module that mirrors the dimensionality of the line item you wish to control. For example, if you have a line item dimensioned by customer, product, and time, and you wish to make actual months read-only, you can use an access module just dimensioned by time. Think about what dimension the control needs to apply to and create an access module accordingly.

What settings do I need?

There are three different states of access that can be applied: READ, WRITE, and INVISIBLE or hidden. There are two blueprint controls (read control and write control) and there are two states for a driver (TRUE or FALSE). The combination of these determines which state is applied to the line item. The following table illustrates the options:

    1. Only the read access driver is set:
        Read Access Driver
      Driver Status True False
      Target Line Item READ INVISIBLE
    2. Only the write access driver is set:
        Write Access Driver
      Driver Status True False
      Target Line Item WRITE INVISIBLE
    3. Both read access and write access drivers are set:
        Read Access Driver Write Access Driver
      Driver Status True False True False
      Target Line Item READ INVISIBLE WRITE Revert to Read*
      *When both access drivers are set, the write access driver takes precedence with write access granted if the status of the write access driver is true. If the status of the write access driver is false, the cell access is then taken from the read access driver status.

The settings can also be expressed in the following table:

  WRITE ACCESS DRIVER
TRUE FALSE NOT SET
READ
ACCESS
DRIVER
TRUE Write Read Read
FALSE Write Invisible Invisible
NOT SET Write Invisible Write

Note: If you want to have read and write access, it is necessary to set both access drivers within the module blueprint. 

Totals

Think about how you want the totals to appear. When you create a Boolean line item, the default summary option is NONE. This means that if you used this access driver line item, any totals within the target would be invisible. In most cases, you will probably want the totals to be read-only, so setting the access driver line item summary to ANY will provide this setting. If you are using the Invisible setting to “hide” certain items and you do not want the end user to compute hidden values, then it is best to use the ANY setting for the access driver line item. This means that only if all values in the list are visible then the totals show; otherwise, the totals are hidden from view.

The content in this article has not been evaluated for all Anaplan implementations and may not be recommended for your specific situation.
Please consult your internal administrators prior to applying any of the ideas or steps in this article.
Comments

Hi,

 

With ALM, DCA works in Dev, but will not allow you to sync the model to Production. The problem was that the boolean line item used for DCA had too many conditions and would only work if it had one argument. Is there any way to fix this issue?

 

Thanks,

Lauren

@lauren.levine

Hi - There is a known issue which means the DCA line item needs to be created in one revision, the models sync'd and then applying the driver done in another revision, but could you log this with support so that our product team can investigate fully

Thanks

David

Labels (2)
Contributors