> For the complete documentation index, see [llms.txt](https://knowledgebase.fabricdata.com/xytech/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://knowledgebase.fabricdata.com/xytech/calendar-integration-setup/calendar-integration-configuration.md).

# Calendar Integration configuration

### **Xytech Configuration - Web Client** <a href="#xytechconfigurationwebclient" id="xytechconfigurationwebclient"></a>

This article describes settings required to trigger invites for the Calender Integration. Below is an example of the basic configuration required within the UI.

{% hint style="info" %}
Pre-requsite: Calendar Integration has been [setup with a master calendar from Google or Microsoft](/xytech/calendar-integration-setup/calendar-integration-setup-of-master-calendar-on-ms-azure-or-google.md)&#x20;
{% endhint %}

To enable sending invitations from Xytech to recepient calendars (e.g. Google / Microsoft), log in to the Xytech Web client as a super user or a user with access to the appropriate areas.

### **Enable Event Trigger Invitations**

The following need to be set

* **Scheduling Preference:** Scheduling Preferences need to be set to use Event Triggers
* **Scheduling Resource:** Scheduling Resource needs to be configured for Exchange Server Calendar invitations
* **Phases:** Phases will need to be enabled for the Exchange Server
* **Event Triggers:** Event Triggers will be needed for conditions and rules of sending the Invitation.

### Scheduling Preference

Ensure the following setting is enabled:

1. Navigate to Scheduling > Setup > Preferences-Scheduling
2. Ensure the checkbox for **Configure Calendar Invitations using Event Triggers** is checked for the global division and / or separately for each division.

***

### Scheduling Resource  <a href="#schedulingresource" id="schedulingresource"></a>

Ensure your Resource is set to 'Exchange Server'&#x20;

1. Navigate to Scheduling > Scheduling Resources&#x20;
2. Open a Resource of your choice
   * E-Mail Booking: Exchange Server Meeting Request
   * E-Mail Address: Enter the email address of the resource

***

### Phases  <a href="#phases" id="phases"></a>

Determine which phases should be included in the Exchange Server Calendar Integration and enable the setting for each phase.

#### **Steps to Enable:** <a href="#h_01jm8wwpyvqth8hk7ba2mjvy6v" id="h_01jm8wwpyvqth8hk7ba2mjvy6v"></a>

1. Navigate to Job Management > Setup > Phases
2. Select the relevant phase
3. Click on the Details tab
4. Set the following options:
   * Schedule in Exchange Server: **On**
   * Show Exchange Server Time As: **Busy**

***

### **Event Triggers**

Create Event Triggers to Send Notifications

To create an Event Trigger which sends messages:

1. Navigate to **System**, then **Event Triggers**.
2. Click the **(+)** (Append a New Record) button.
3. On the **Event Trigger** tab, set the properties as follows:
   * Active: Selected (checked)
   * Event Code: **DOCUMENT** (or enter a custom code for easy identification)&#x20;
   * Event: **Send invite on new confirmed transaction**
   * Event Type: **INSERT**
   * Document: **Work Order Transactions**
   * Doc Table Name: **Transaction Header**
   * Send To Queue: **Un-selected (un-checked)**

<figure><img src="/files/PL41mzNWFdKez0lKJNqG" alt=""><figcaption></figcaption></figure>

4. On the **Conditions** tab, set the properties as follows:

* Table Name: **Transaction Header \[c\_trx\_header]**
* Column Name: **Phase \[phase\_code]**
* Column Source: **modified**
* Operator: **=**
* Compare Value: **Confirmed**

<figure><img src="/files/8cy4Pf96Wt6ISY7a2pN4" alt=""><figcaption></figcaption></figure>

\
5\. On the **Notifications** tab, set the properties as follows:

* Description: **New Notification&#x20;*****todays\_date***
* Notify Type: **INVITE**
* Active: **Selected/checked**

<figure><img src="/files/LLgaeUzOY0aKaYZ9qRb5" alt=""><figcaption></figcaption></figure>

6. On the **Notification Template** tab, set the properties as follows:

* Meeting Subject: **Order: \[WO.wo\_no\_seq]**\
  Note: from the Template Fields list, dragging the **Order (wo\_no\_seq)** item from under Order Transactions displays this as \[jm\_wo\_transaction.wo\_no\_seq].
* Meeting Location: **Location**

<figure><img src="/files/lpednQIpe6mXUD9O7uOw" alt=""><figcaption></figcaption></figure>

7. Click **Save and Close**.
8. Edit the new event trigger, and on the **Notification Template** tab, click **Meeting Body** and enter the following block:

   ```
   Job ID:          [WO.jm_job_job_no]
   Event Type:      [WO.jm_job_job_type_no_desc]

   Work Order:      [TRX.wo_no_seq][WO.wo_desc]
   Setup Time:      [TRX.setup_time]
   Start Date/Time: [WO.wo_begin_dt]
   End Date/Time:   [WO.wo_end_dt]
   Bumper Time:     [TRX.bumper_time]
   Role:            [TRX.group_desc]
   ```

<figure><img src="/files/9gkk98IiXLgA8W8EL71P" alt=""><figcaption></figcaption></figure>

9. Repeat the process for the Event Trype of **UPDATE** and modify the values as necessary. A DELETE trigger is not required, as once invitations are sent, the adapter will automatically handle cancellations when transactions are removed.

### **Invitation Process** <a href="#invitationprocess" id="invitationprocess"></a>

When configured to send transaction-triggered invites, the following process :

* Each new transaction booking will be sent as calendar invites to the email address of the resource.
* Transaction Invitation Status is set to ‘Sent’. (Recipients do not need to be Google or Microsoft  Calendar users to be sent an invitation.)
* When a recipient ‘Accepts’ the invitation, the Invitation Status on the transaction is updated to ‘Accepted’.
* When a recipient ‘Declines’ the initial invitation, the Invitation Status is updated to ‘Declined’.
* Any changes by the recipient to change their original acceptance, will not be reflected on the transaction.  If changes are made to the transaction that trigger an update invite, the recipient then the user has the opportunity to respond again.

### **Troubleshooting** <a href="#troubleshooting" id="troubleshooting"></a>

Review the calendar adapter log file for error messages.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://knowledgebase.fabricdata.com/xytech/calendar-integration-setup/calendar-integration-configuration.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
