# Integrating with Oracle Fusion

## Overview

Drivetrain’s Oracle Fusion connector is able to integrate with the FSCM, HCM, CRM, and ATS applications to extract data and bring them into Drivetrain.&#x20;

## Prerequisites

To integrate Oracle Fusion Cloud Applications with Drivetrain, you need:

* An **Oracle Cloud account**
* An **active Oracle Fusion Cloud subscription**
* Access to the **Oracle Application Console**
* **Security Manager role** to create users & roles
* **Admin Access to Drivetrain** with **permission to add data sources**

## Setup Instructions

### Step 1: Find Your Oracle Fusion Server URL

1. **Log in** to **Oracle Cloud.**
2. **Navigate** to the **Application Console.**
3. **Locate** your **Oracle Fusion application instance.**
4. If you don’t have one, follow [Oracle’s process](https://docs.oracle.com/en/cloud/get-started/subscriptions-cloud/csgsg/create-instance.html) to create it.

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FW0uowwjO318MecrXwb3w%2Funknown.png?alt=media&#x26;token=8bfd7ee7-2a27-49ec-886e-071964b06475" alt=""><figcaption></figcaption></figure>

You need to select the specific application that you want to integrate with Drivetrain.

4\. In the Overview tab of the application, find the Service Environment URL. For example:\
`https://servername.fa.us2.oraclecloud.com`

{% hint style="info" %}
Make a note of this URL. You will need it to configure Drivetrain.
{% endhint %}

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FdCtwvdCwn4UlVyjGDAYX%2Funknown.png?alt=media&#x26;token=417a6e4c-dc6a-4c33-b0a9-c6848f7924dd" alt=""><figcaption></figcaption></figure>

### Step 2: Create a User (Basic Authentication)

Drivetrain uses a **dedicated Oracle user** with **Basic Authentication credentials.**

1. Log in to the **Oracle Fusion Cloud Application instance** for which you want to sync the data.
2. On the left hand navigation page, go to **Tools → Security Console.**

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FYT9rwPuBLFrIIS5NHL8Z%2Funknown.png?alt=media&#x26;token=610761a0-07ab-4ab9-b380-8fd0337e0b39" alt=""><figcaption></figcaption></figure>

3. Navigate to **Users → Add User Account.**

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FLG9rmxykaUEGhpxz8V4a%2Funknown.png?alt=media&#x26;token=530dd61d-724d-4a84-a56b-4d572e2a3b05" alt=""><figcaption></figcaption></figure>

4. On the **Add User Account page**, enter the **User details.**&#x20;
   1. Username (e.g., `DRIVETRAIN_SYNC_USER`)
   2. Password
   3. Email: **Shared by your Drivetrain implementation team**

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2F9y6mVOd2DSqiav9ed4Tx%2Funknown.png?alt=media&#x26;token=33435ef5-9339-4fa1-ba9a-89eb61961471" alt=""><figcaption></figcaption></figure>

5. Click **Save and Close.**

{% hint style="warning" %}
Make a note of the **Username & Password.** These will be required in Drivetrain and in later steps.
{% endhint %}

### Step 3: Create BICC and UCM Roles

1. Log in to the **Oracle Fusion Cloud Application instance** for which you want to sync the data.
2. On the left hand navigation page, go to **Tools → Security Console.**
3. Navigate to **Roles → Create Role.**

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FqC2ycSewDNvEtVox1HQe%2Funknown.png?alt=media&#x26;token=0dfe66c3-362f-4989-b72d-9993f50e82e3" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
You must have the **Security Manager role** to **create a role.**
{% endhint %}

#### 3.1 Basic Information

Fill out the following information:

| Field           | Value                                                 |
| --------------- | ----------------------------------------------------- |
| Role Name       | e.g., BICC\_DRIVETRAIN\_ROLE, UCM\_DRIVETRAIN\_ROLE   |
| Role Code       | e.g., BICC\_ADMIN\_DRIVETRAIN, UCM\_ADMIN\_DRIVETRAIN |
| Role Category   | BI – Abstract Role                                    |
| Predefined Role | Uncheck                                               |

Click **Next** through **Function Security Policies → Data Security Policies.**

#### 3.2 Add Required Role Memberships

On the **Role Hierarchy page** → click **Add Role** → **search and add:**

* **ESS Administrator** (Allows scheduled global extract jobs)
* **BIA\_ADMINISTRATOR\_DUTY** (Allows datastore description, job listing, BICC operations)
* **OBIA\_EXTRACTTRANSFORMLOAD\_RWD** (Allows viewing and downloading extracted UCM files)
* Click **Add Role Membership → Close.**
* Continue **Next** through **Segregation of Duties.**

#### 3.3 Assign the user

On the Users page:

1. Click **Add User.**
2. Select the **Basic Auth** **user** created in [Step 2.](#step-2-create-a-user-basic-authentication)
3. Click **Next** → **Save and Close.**

### Step 4: Configure UCM Storage for BICC

1. Log into **BI Applications Configuration Manager (BIACM)** using your server URL you found in [Step 1.](#step-1-find-your-oracle-fusion-server-url) For example, if the server URL is <https://my-oracle-fusion-cloud.oraclecloud.com>, use <https://my-oracle-fusion-cloud.oraclecloud.com/biacm>.
2. Log in using the **Username and Password** from [Step 2.](#step-2-create-a-user-basic-authentication)
3. Click **Configure External Storage.**

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FJKIjU2NTyiyWw9GiWDWk%2Funknown.png?alt=media&#x26;token=9a0369e2-c377-4079-92d7-7c8826a87fd4" alt=""><figcaption></figcaption></figure>

4. Go to the **UCM Connection tab → click Test UCM Connection.**
5. You should see: **External Storage Connection Succeeded.**
6. Click **OK**.

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2F9ZTGqQRdPlhn1nLvH1jO%2Funknown.png?alt=media&#x26;token=b30e808b-0de2-4466-b0ca-24a787d4ef60" alt=""><figcaption></figcaption></figure>

### Step 5: Select Columns for Extraction

1. Log into **BI Applications Configuration Manager (BIACM)** using your server URL you found in [Step 1.](#step-1-find-your-oracle-fusion-server-url) For example, if the server URL is <https://my-oracle-fusion-cloud.oraclecloud.com>, use <https://my-oracle-fusion-cloud.oraclecloud.com/biacm>.
2. Click **Manage Offerings** and **Data Stores.**

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2Fj29ew33Mo23MkmM7ntjM%2Funknown.png?alt=media&#x26;token=1df0039a-6a26-42cf-aedf-980c26ad2d1c" alt=""><figcaption></figcaption></figure>

3. Open the offering that contains your objects.
4. Select the relevant datastore.
5. Go to **Edit Columns tab.**
6. Select the checkbox under **Select List** for every column to sync.&#x20;
7. Click **Save**.

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FukF3GNaeXtRHzui2Q3je%2Funknown.png?alt=media&#x26;token=49afa5e9-d476-4af4-b616-7667a7a76e67" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Drivetrain can only sync columns that have the **Select List** box checked.
{% endhint %}

### Step 6: Select Primary Keys for Custom Objects (Optional)

To configure:

1. Open the **Data Store Columns** selection page.
2. Check the **Primary Key column(s).**
3. Click **Save**.

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2F0KuXTCErPUHnZqrZi62F%2Funknown.png?alt=media&#x26;token=4cf9b1f3-7980-4287-9eaf-77ee70d74ece" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Tables without **at least one primary key** are excluded from sync.
{% endhint %}

### Step 7: Add Custom Objects to an Offering (Optional)

If a table is not part of an offering, it will not sync.

To add a custom datastore to an offering:\
→ Follow [Oracle’s documentation](https://docs.oracle.com/en/cloud/saas/applications-common/24b/biacc/add-a-data-store-for-an-offering.html#u00180694) for adding custom objects to offerings.

### Step 8: Configure Incremental Filters (Optional)

1. Open the **Data Store Columns selection** view.
2. Locate the **TIMESTAMP** column you want to use for incremental sync.
3. Check:
   1. **Incremental Filter**
   2. **Select List**
4. Ensure the column is **TIMESTAMP** type.
5. Click **Save**.

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FMKBaOD9GoPDrO6Gq6oUg%2Funknown.png?alt=media&#x26;token=3b2f8334-0f8b-414d-9f1a-4e3e03cc060e" alt=""><figcaption></figcaption></figure>

### Step 9: Provide Credentials to Drivetrain

Share the following with your Drivetrain team via a secure document:

* **Server URL**
* **Username**
* **Password**

Your Drivetrain team will complete connector activation and validate access.

## Still stuck? We can help.

If you need assistance **validating your Oracle configuration** or **enabling advanced BICC objects**, your **Drivetrain Solutions team** can help review your setup via a secure screen-share.

## Frequently Asked Questions

<details>

<summary>Do we need JWT or certificate authentication?</summary>

No, Drivetrain uses Basic Authentication for this connector. If you would like to use JWT method for authentication, please reach out to your Drivetrain implementation team.

</details>

<details>

<summary>What happens to tables without primary keys?</summary>

Oracle excludes them; Drivetrain will not receive those tables.

</details>

<details>

<summary>Can custom objects be synced?</summary>

Yes, as long as they are:

* Added to an offering
* Have selected columns
* Have primary keys defined

</details>
