> For the complete documentation index, see [llms.txt](https://doc.wearepatchworks.com/product-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.wearepatchworks.com/product-documentation/process-flows/building-process-flows/process-flow-shapes/standard-shapes/map-shape/working-with-field-transformations/available-transform-functions/other-transform-functions/custom-boolean-transform-function.md).

# Custom boolean transform function

## Introduction

The **custom boolean** transform function is used to map a value of `true` or `false` to a target field.

{% hint style="info" %}
If you've added/updated a [map shape](/product-documentation/process-flows/building-process-flows/process-flow-shapes/standard-shapes/map-shape.md) before, you'll be used to selecting a **source** field and a **target** field. However, when a **custom boolean** transformation is used we don't select a **source** field - the **custom boolean** transformation is our data source.
{% endhint %}

## Adding a custom boolean transform

**Step 1**\
In your process flow, access settings for your map shape:

<div align="left"><figure><img src="/files/2J95JghF60t6Ewxifg9X" alt="" width="261"><figcaption></figcaption></figure></div>

**Step 2**\
Select the **add transform** button for the required mapping rule - for example:

<div align="left"><figure><img src="/files/arnk2WLETctmf5F9QLWV" alt="" width="375"><figcaption></figcaption></figure></div>

**Step 3**\
Click the **add transform** button:

<div align="left"><figure><img src="/files/yFdk7J6MVBdUQAj84VxH" alt="" width="375"><figcaption></figcaption></figure></div>

**Step 4**\
Click in the **name** field to access a list of all available transform functions, then select **custom boolean**:

<div align="left"><figure><img src="/files/2zQ56JdZcvSR7n6ipaQr" alt="" width="375"><figcaption></figcaption></figure></div>

**Step 5**\
Move down to the **value** field and select your required true/false value - for example:

<div align="left"><figure><img src="/files/L0h7aAiDb5q5UVovrp8J" alt="" width="375"><figcaption></figcaption></figure></div>

**Step 6**\
Accept your changes:

<div align="left"><figure><img src="/files/0Sf1BwmV3CCC5YdbAoxe" alt="" width="375"><figcaption></figcaption></figure></div>

...then save the transformation:

<div align="left"><figure><img src="/files/nlIo8E1LjOGcBI9NLwOk" alt="" width="375"><figcaption></figcaption></figure></div>

**Step 7**\
Now you can select a target field in the usual way - for example:

<div align="left"><figure><img src="/files/c6VznFxuwY33AscoIEf5" alt="" width="375"><figcaption></figcaption></figure></div>

...then:

<div align="left"><figure><img src="/files/wZcBr83KNl6JgEv0YLkU" alt="" width="375"><figcaption></figcaption></figure></div>

...then:

<div align="left"><figure><img src="/files/hnbP6Ay9y5tCEclawQep" alt="" width="375"><figcaption></figcaption></figure></div>

**Step 8**\
Once your mapping is complete, the row should be displayed without a source field - for example:

<div align="left"><figure><img src="/files/fBSzCeSjdXxVmZmeZYnt" alt="" width="375"><figcaption></figcaption></figure></div>

From here you can save changes or add more mapping rules as needed. Next time the process flow runs, the selected **custom boolean** value will be mapped to the given target field.
