# BMC Remedy

## Prerequisites

### User Privileges

No user is required for Remedy connector.

### Custom Field Configuration

The <code class="expression">space.vars.SITENAME</code> requires one special field to be defined on the entity that is being synchronized. This must be set up so that it can track the integration status of each item:

| **Property Name** | **Type** |
| ----------------- | -------- |
| OH\_Last\_Update  | Text     |

#### Web Service Checks

* Create one new web service `OpGetListID` of type `OpGetList` with Qualification as input and the following fields in output:
  * Request\_ID
  * Arrival\_Time
  * Modified\_Date/Modified\_Time
* Operation name in web service should be `OpGet`, `OpGetListID`, `OpSet`, and `OpCreate`.
* `Arrival_Time/Create_Time` and `Modified_Time` should be mapped to the output result in `OpGet` and `OpGetListID` operation.
* `OpGetListID`'s output type should be unbounded.
* There should be no default qualification set for `OpGetListID`.

#### Web Service Checks for Attachment Synchronization

If attachments in Remedy form are configured within the form, then make sure you have the right configuration in Remedy web-service for `OpGet` and `OpSet` operation.

Attachment name, data, and size field should be configured in the following format in `OpGet` and `OpSet` operation of Remedy:

* Attachment name field: `Attachment<Attachment_number>_attachmentName` with data type `String`.
* Attachment data field: `Attachment<Attachment_number>_attachmentData` with data type `base64binary`.
* Attachment size field: `Attachment<Attachment_number>_attachmentOrigSize` with data type `int`.
* For example:\
  `Attachment1_attachmentName`,\
  `Attachment1_attachmentData`,\
  `Attachment1_attachmentOrigSize`.

<div align="center"><img src="https://3739347370-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1a8GpUm2lq3lKbytaYjt%2Fuploads%2Fgit-blob-747f4affca1af1907695562c5e49c0176ff805b5%2FRemedy_Image_1a.png?alt=media" alt="" width="1000"></div>

## System Configuration

Before you continue to the integration, you must first configure Remedy onto <code class="expression">space.vars.SITENAME</code>.\
Click [System Configuration](https://docs.opshub.com/v7.216/integrate/configure-integrations/system-configuration) to learn the step-by-step process to configure a system.

Refer the screenshot given below for reference:

<div align="center"><img src="https://3739347370-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1a8GpUm2lq3lKbytaYjt%2Fuploads%2Fgit-blob-ea7bc421ab260b64576c84bee5ecd9920c424899%2FRemedy_Image_2a.png?alt=media" alt="" width="1000"></div>

<div align="center"><img src="https://3739347370-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1a8GpUm2lq3lKbytaYjt%2Fuploads%2Fgit-blob-3b879793328ea92c9b7275d4411e4c9bb562aede%2FRemedy_Image_3a.png?alt=media" alt="" width="1000"></div>

If the system is deployed on HTTPS and a self-signed certificate is used, then you will have to import the SSL Certificate to be able to access the system from <code class="expression">space.vars.SITENAME</code>.\
Click [Import SSL Certificates](https://docs.opshub.com/v7.216/getting-started/installation/ssl-certificate-configuration) to learn how to import SSL certificate.

## Mapping Configuration

Map the fields between Remedy and the other system to be integrated to ensure that the data between both the systems synchronizes correctly.\
Click [Mapping Configuration](https://docs.opshub.com/v7.216/integrate/configure-integrations/mapping-configuration) to learn the step-by-step process to configure mapping between the systems.

## Integration Configuration

Set a time to synchronize data between Remedy and the other system to be integrated. Also, define parameters and conditions, if any, for integration.\
Click [Integration Configuration](https://docs.opshub.com/v7.216/integrate/configure-integrations/integration-configuration) to learn the step-by-step process to configure integration between two systems.

## Criteria Configuration

### Query

Remedy query can be formed using the name given to field at the time of creating it (e.g., Priority, Status, Create Time, Modified Time).\
The Query Format is: `'Field Name' [Supported Operator] value`\
Supported Operators: `>`, `<`, `=`, `!=`, `AND`, `OR`, `>=`, `<=`\
Value: If the field type is string, then the value should be enclosed in double quotes.

### Sample Query

Examples:\
`'Priority' = "Must"`\
`'Priority' = "Must" AND 'Status' = "New"`\
`'Create Time' > "12/12/2013"`

## Appendix

### Create Custom Field

To create a new custom field in Remedy, follow the steps given below:

* As shown in the image below, right click **Remedy** form to add a new field.

<div align="center"><img src="https://3739347370-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1a8GpUm2lq3lKbytaYjt%2Fuploads%2Fgit-blob-f448204504c772538253a814c1398277fb68d7ff%2FRemedy_Image_4a.png?alt=media" alt="" width="900"></div>

* Add mapping for that field in web-service's operations: `OpGet`, `OpSet`, `OpCreate`.

<div align="center"><img src="https://3739347370-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1a8GpUm2lq3lKbytaYjt%2Fuploads%2Fgit-blob-5c13a5a034481f3f8c0701bd1348d12f95387bbc%2FRemedy_Image_5a.png?alt=media" alt="" width="900"></div>

<div align="center"><img src="https://3739347370-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1a8GpUm2lq3lKbytaYjt%2Fuploads%2Fgit-blob-d1c2ba2aa78bc16e5b4c073f33be5081bb9d8eee%2FRemedy_Image_6a.png?alt=media" alt="" width="900"></div>

* Save web-service and the form.
* Restart the Remedy Tomcat Server.
