Using the Premium OData Destination Component

The Premium OData Destination Component is an SSIS data flow destination component that can be used to write to OData endpoints. There are three pages that can be configured and worked with in the Premium OData Destination Component:

  • General
  • Columns
  • Error Handling

General

The General page can be used to configure the general configuration settings for the Premium OData Destination component.

SSIS OData Destination Component

Connection Manager

A Connection Manager is required for the OData Destination component to connect to the endpoint. A list of available connection managers will populate the drop-down.

Binding Entity

The Binding entity available in the endpoint can be chosen in this field. Depending on the kind or type of these entities, the allowed and available action would be populated in the OData Destination component. The following entities are supported:

  • Unbound action
  • Collection of entities
  • Entity
Additional Bindings
Additional Bindings will populate here. And more can be added, or removed by clicking on the "+" or "-" buttons.
  • Binding Entity: The Additional binding entity
  • Binding Fields: The binding fields associated with the binding entity
Action

The Action that is allowed on the chosen entity would be available here. The typically supported actions are:

  • <Create>
  • <Delete>
  • <Link>
  • <Unlink>
  • <Update>
  • Bound actions
Navigation Property (Available only for <Link> and <Unlink> action)

The Navigation Property shows the available navigate properties in the drop-down for the entity to link or unlink.

Navigation Binding (Available only for <Link> and <Unlink> action)

The available navigation binding properties are shown in the drop-down.

Batch Size

The Batch Size option allows you to specify how many records you want to submit to the target server at a time (each service call).

Multipart Headers

The multipart header to be sent can be specified here.

  • Add a New Multipart Header (+): This can be clicked to add a new Multipart header.
  • Remove this multipart header (-): This can be used to remove the specific Multipart header.

The grid consists of the below columns:

  • Name: Name of the Multipart header.
  • Value: The value to be specified as the header.
Target Details
Binding Path
The path based on the binding and additional binding.
Refresh Component Button

Clicking the Refresh Component button causes the component to retrieve the latest metadata and update each field to its most recent metadata.

Expression fx Button

Click the fx button to launch SSIS Expression Editor to enable dynamic updates of the property at run time.

Generate Documentation Button

Click the Generate Documentation button to generate a Word document that describes the component's metadata including relevant mapping, and so on.

Columns

The Columns page gives the metadata-related details for the Premium OData Destination component, based on the endpoint it is connected to, and other properties that were specified in the General page.

SSIS OData Destination Component - Columns

The Columns page grid consists of:

  • Input Column: You can select an input column from an upstream component for the corresponding OData field.
  • OData Field: The field that you are writing data to.
  • Entity Type: The entity type of the field.
  • Data Type: The data type of this field.
  • Unmap: This column can be used to unmap the field from the upstream input column, or otherwise it can be used to map the field to an upstream input column by matching its name if the field is not currently mapped.

Error Handling

The Error Handling page allows you to specify how errors should be handled when they happen.

SSIS OData Destination Component - Error Handling

There are three options available.

  1. Fail on error
  2. Redirect rows to error output
  3. Ignore error

When the Redirect rows to error output option is selected, rows that failed to write to the OData endpoint will be redirected to the 'Error Output({PrimaryInputName})' output of the Destination Component; rows from the Child Input that failed to find the parent records will be redirected to the 'Orphaned Children Error Output' output of the Destination Component. As indicated in the screenshot below, the blue output connection represents rows that were successfully written, and the red 'Error Output{PrimaryInputName}' and 'Orphaned Children Error Output'.

SSIS OData Destination Component - Error Output

Error Output
  • ErrorCode: Contains the error code that is reported by the endpoint or the component itself.
  • ErrorColumn: Contains the name of the column that is causing the error. Note that this column may or may not be populated.
  • ErrorMessage: Contains the error message that is reported by the endpoint or the component itself.
Orphaned Children Error Output
  • ErrorCode: Contains the error code that is reported by the target endpoint or service, or the component itself from the Child Inputs.
  • ErrorColumn: Contains the name of the column that is causing the error from the Child Inputs. Note that this column is not always populated.
  • Input Name: Contains the name of the Child Input that is having the issue.
  • Column Name: Contains the name of the column that is having the issue in the specific Child Input.
  • Column Value: Contains the value of the column that is having the issue in the specific Child Input.
  • Parent Input Name: Contains the Parent Input name of the specific Child Input.
  • Parent Column Name: Contains the name of the column that is having issue in the specific Parent Input.
  • ErrorMessage: Contains the error message that is reported by the endpoint or the component itself.

On the Error Handling page, there is also an option that can be used to enable or disable the following output fields for the destination component:

  • The primary field for the record based on the Binding entity chosen would be available as the default output field. This can be then used downstream for further processing.
  • @odata.etag: The Etag value returned from the <Create> or <Update>action.