# Logic Point

Learn how the Logic point can be used and see it in action with the sample projects.

## What is the Logic point?

The Logic point can be used to add conditional logic to your projects that can show/hide points and store a value when the conditions have been met. This point is especially useful in hiding points until another pre-requisite point has been completed or to display additional information if a point has a specific value.

### Key Features

• Can be used to control the visibility of other points.
• Can output different values, depending on the current state of the conditional logic.
• Supports a variety of condition types.
• Can be configured with two conditions with the option of requiring one or both conditions to be be met.
• More conditions can be added by chaining multiple Logic points together. ### Available Condition Types

The types of conditions that are available are list below:

#### Equals `(=)`

Checks if the selected point's value is equal to the conditional value.

#### Less than or Greater than `(<>)`

Checks if the selected point's value is less than or greater than the conditional value but not equal to it.

#### Less than `(<)`

Checks if the selected point's value is less than the conditional value.

#### Greater than `(>)`

Checks if the selected point's value is greater than the conditional value.

#### Less than or Equal to `<=`

Checks if the selected point's value is less than or equal to the conditional value.

#### Greater than or Equal to `>=`

Checks if the selected point's value is greater than or equal to the conditional value.

#### Contains `contains`

Checks if the selected point's value contains the conditional value.

#### Does not contain `!contains`

Checks if the selected point's value does not contain the conditional value.

### Chaining Multiple Logic Points

Multiple Logic points can be used together to create a chain of conditions, effectively allowing you to create as many conditions as desired. This can be done by adding a new Logic point which uses a previous Logic point in one of its conditions and adding a second condition. This point can then be re-used in another Logic point in the same fashion and can be done repeatedly to create a chain of logical conditions. This can be seen in more detail in the provided sample projects .

### Saving a Value to Session Data

By default, the Logic point does not save any data to the session. This feature can be enabled from the `General` tab, in the Logic point's properties window, by ticking the `Include in Data` checkbox. If this option is enabled, you will also be required to assign the point with an `ID Name` on the same tab.

Haven’t installed the Mobile Data Anywhere Designer?
You can get started by downloading the Mobile Data Anywhere Designer below or read through our Quick Start Guide to learn how to get started with Mobile Data Anywhere.

## Configuration and Settings

The Logic point can be configured in the Mobile Data Anywhere Designer to customise the behaviour of the point. Below is an example of the properties window for a Logic point, opened in the Mobile Data Anywhere Designer. ### Conditions

The first section of the properties window allows you to create logical conditions which can be used to show/hide points and change the output value of the Logic point. Each condition has three fields which can be set. From left to right:

• Target Point
This determines which point's value will be used to check against the condition and value.
• Condition Type
This is used as the operator for the comparison between the target point's value and the conditional value.
• Conditional Value
This is the value that will be compared with the target point's value, using the selected condition type.

Two conditions can be added to a Logic point with the option to require both conditions to be met, by ticking the `And` checkbox, or to require only one of the two conditions to be met, by ticking the `Or` checkbox.

### Show Points

The second section is where you can select which points will become visible when the Logic point's conditions are met. To select a point, double click on the point in the list. Each select point will automatically be set to invisible when the condition is not met and will change to visible when the condition is met.

### Output Value

This is used to determine the output value of the Logic point, which can be stored in the session data or used in other points, such as another Logic point. There are three optional output values that can be set for a Logic point which are used for each of the three states of a Logic point:

• Conditions are met
If the conditions are met, then the first output value will be used.
• Conditions are not met
If the conditions are not met, then the second output value will be used.
• Indeterminate
If the conditions can be determined, either due to an empty target point value or incompatible value type, then the last output value will be used.

Only one output value will be used at one time and the value can be completely customised or can be selected from a list of pre-defined values such as; `Yes/No, True/False, 1/0` .

## Sample Projects

The `Basic Points Sample` project contains examples of how to use many of the various points that are available. This project also contains a page that demonstrates some of the ways that this point can be used in your projects.

Sample Projects
You can download the sample project for this tutorial or import the projects directly into your account.

### Sample 1: Logic Point

In the sample project `basic_point_samples.ppc` there is a `Logic Point` page which demonstrates a variety of uses for the Logic point. Open this project in the Mobile Data Anywhere Designer for a closer at how each point has been customised on each point's properties window. 