# CreateIncidentReceipt Fields

## Copy Field Maps

{% hint style="info" %}
It is worth copying all relevant OOTB Field Maps as are necessary for your integration before using any of them in your Field Records - thereby mitigating the risk of any potential issues with future upgrades.
{% endhint %}

The Field Maps we shall use for our CreateIncidentReceipt Field records are:

* Message Header
* Receipt Status

To copy the Message Header Field Map, navigate to the **'Field Maps' icon**.

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/ni3CRSJbQhe8vI4AfiEd/baig-createincidentreceipt-fields-1.png)

Click on the **ellipsis** to the right of the **Message Header** Field Map & then click **Copy**.

## Copy Field Map Modal

The fields to edit for the Copy Field Map modal are as follows:

| Field         | Description                                                                                          | Value               |
| ------------- | ---------------------------------------------------------------------------------------------------- | ------------------- |
| Name          | The name of your field map. (If left unedited, it will append the word 'Copy' to the existing name.) | \<Your Name>        |
| Integration\* | The integration this field map is associated with.                                                   | \<Your Integration> |

*\*This field is automatically populated.*

{% hint style="success" %}
*Name: We have chosen to prefix the existing Field Map Name with the initials of our Integration (you are free to choose any appropriate means of identifying/differentiating).*
{% endhint %}

*Your Copy Field Map modal should look like this:*

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/u891r5ZdOwNTy1SYcUDb/baig-createincidentreceipt-fields-2.png)

Click **Copy**.

You will be redirected to the Details page of the newly created Field Map.

{% hint style="success" %}
**Repeat** the process for the **Receipt Status** Field Map.
{% endhint %}

## Field: message.message\_header

From the **CreateIncidentReceipt** Message, navigate to **Message > Fields**. Click **New**.

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/nueNnL18He51qhGybqaA/baig-createincidentreceipt-fields-3.png)

The fields to be configured for our message\_header New Field modal are as follows:

| Field          | Description                                                                             | Value                         |
| -------------- | --------------------------------------------------------------------------------------- | ----------------------------- |
| Message\*      | The Message this Field record is linked with.                                           | 'CreateIncidentReceipt'       |
| Description    | Describe what this field is for and any specific details that might help you in future. | 'The protocol message header' |
| Active\*       | Set to true to use this Field record for processing.                                    | \<true>                       |
| Field map      | The Field Map this Field record is linked with.                                         | 'IG - Message Header'\*\*     |
| Map to field\* | Use this Field record to represent a field on a source/target table.                    | \<false>                      |
| Path           | Where in the payload the data will be placed.                                           | 'message'                     |
| Property       | The property in the payload the data will be written to.                                | 'message\_header'             |
| Inbound\*      | Set to true to use for inbound Messages.                                                | \<true>                       |
| Outbound\*     | Set to true to use for outbound Messages.                                               | \<true>                       |

*\*These fields are automatically defaulted to true, or automatically populated.*

*\*\*Field map: Value may vary. Choose the copy Field Map you created for your Integration.*

*Your 'message\_header' New Field modal should look like this:*

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/rHcnR5Y5xWjIKuHTL6II/baig-createincidentreceipt-fields-4.png)

**Submit** the record.

You will be redirected back to the Fields page of the CreateIncidentReceipt Message.

## Field: message.transaction\_details

Click **New**.

The fields to be configured for our transaction\_details New Field modal are as follows:

| Field          | Description                                                                             | Value                                                 |
| -------------- | --------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| Message\*      | The Message this Field record is linked with.                                           | 'CreateIncidentReceipt'                               |
| Description    | Describe what this field is for and any specific details that might help you in future. | 'Used to send and receive transaction process errors' |
| Active\*       | Set to true to use this Field record for processing.                                    | \<true>                                               |
| Field map      | The Field Map this Field record is linked with.                                         | 'IG - Receipt Status'\*\*                             |
| Map to field\* | Use this Field record to represent a field on a source/target table.                    | \<false>                                              |
| Path           | Where in the payload the data will be placed.                                           | 'message'                                             |
| Property       | The property in the payload the data will be written to.                                | 'transaction\_details'                                |
| Inbound\*      | Set to true to use for inbound Messages.                                                | \<true>                                               |
| Outbound\*     | Set to true to use for outbound Messages.                                               | \<true>                                               |

*\*These fields are automatically defaulted to true, or automatically populated.*

*\*\*Field map: Value may vary. Choose the copy Field Map you created for your Integration.*

*Your 'transaction\_details' New Field modal should look like this:*

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/CaDpxp1NgbCtrCPNxH50/baig-createincidentreceipt-fields-5.png)

**Submit** the record.

You will be redirected back to the Fields page of the CreateIncidentReceipt Message.

## Build

Now that we’ve configured the Field records for the CreateIncidentReceipt message, we are ready to build our message scripts.

*The following Field records should now be in place for your CreateIncidentReceipt messsage:*

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/xRqxemRn2wHSoo8ql6Sm/baig-createincidentreceipt-fields-6.png)

{% hint style="success" %}
**Feature Alert**: In the picture above you will notice that a 'Build Integration' button has appeared in the banner at the top of the page. Whenever a change is made to a Field record that is associated to a Message *(whether that is being created, updated, or deleted)* the button will be available and acts as a visual reminder that changes have been made and Message Script(s) need to be built. We will talk more about this feature in the [Build Integration Level](https://docs.sharelogic.com/unifi/integration-guides/bidirectional-asynchronous-incident-guide/build-integration-level) page.
{% endhint %}

Navigate to **Advanced > Script Editor**.

*When you first open the Script Editor, you will see the following:*

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/VKLCXoSoiAEDKyGR576R/baig-createincidentreceipt-fields-7.png)

{% hint style="success" %}
Having visibility of your message scripts in the one pane makes scripting so much more efficient.
{% endhint %}

Click on **Build Message**.

You will see the 'Message build successful' Info Message.

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/A6DDUWh5UF2lEEP2Q0kJ/v2-fields-createincidentreceipt-5.png)

*Your Script Editor fields should now look like this:*

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/SlNPGMBSPOnHi4YTYYSN/baig-createincidentreceipt-fields-8.png)

You can click **View** to adjust the layout and change the view to show various combinations of, or individual script fields.

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/Zb4foQA3bAoG8PUl5ygJ/baig-createincidentreceipt-fields-9.png)

## Message Scripts

{% hint style="info" %}
The newly auto-generated code will appear between a Begin & End Comment immediately prior to any code that may already be there (pre-existing code will be retained).
{% endhint %}

```javascript
//===== [ws] Begin Unifi Auto Generated Code =====//

/*
 * This code (between the Begin and End comments) is generated from the
 * Field and Field mapping records which are configured as part of the integration.
 *
 * All code either above or below the comments will be automatically maintained
 * through the build cycle.
 *
 * WARNING: Do not edit the Begin or End comments.
 */

(New auto-generated code will appear here)

//===== [ws] End Unifi Auto Generated Code =====//

(Old pre-existing code will appear here)
```

Once you have finished examining the code, click **'Close'** to navigate back to the Fields page of the CreateIncidentReceipt Message.

![](https://content.gitbook.com/content/Dk6VgKBXe6rYT8F9wuaY/blobs/oJvOpHuIBbI2SBKZoPwU/baig-createincidentreceipt-fields-10.png)

We are now ready to configure our **CreateIncident** Message.
