Exporting Records from OpenAir to NetSuite Using Custom Workflows

You can create custom workflows to export data from a supported OpenAir record type to a record type in NetSuite, including custom record types, using your own field mapping definitions.

Review the best practice guidelines before you follow these steps. See Best Practice Guidelines.

To export records from OpenAir to NetSuite using a custom export workflow:

  1. Go to Administration > NetSuite Connector > Mappings.

  2. Click New workflow then Custom Export. The Custom workflow popup window appears.

    Custom workflow settings popup window.
  3. Enter a Workflow name — the value must be up to 40 characters long and must contain only alphanumeric or underscore characters.

  4. Enter a Display name up to 80 characters long.

  5. Select the OpenAir record holding the data you want to export to the selected NetSuite record type.

  6. Select the ID field for the OpenAir record — this is the field that will hold the internal ID of the matching NetSuite record (typically a custom field). The ID field is required and cannot be changed after you save the custom export workflow configuration.

  7. Select the NetSuite record type you want to export OpenAir data to. To export OpenAir data to a custom record type in NetSuite, select “[Custom Record]”, and select the NetSuite custom record type from the Specify dropdown.

  8. Select the ID field for the NetSuite record — this is the field that will hold the internal ID of the matching OpenAir record (typically a custom field). This ID field is required and cannot be changed after you save the custom export workflow configuration.

    Tip:

    Click Synchronize to update the NetSuite custom fields available for field mapping without leaving the custom export workflow configuration form. This allows you to see the latest list of NetSuite custom field and select a suitable ID field from this list.

  9. Choose the Integration method:

    • Create Only — The workflow lets you create new records in OpenAir first and then export them to NetSuite. However, the workflow does not update the NetSuite record after changes are made to the OpenAir record.

    • Create and Update— The workflow lets you:

      • Create new records in OpenAir first and then export them to NetSuite.

      • Update records in OpenAir and use the NetSuite <> OpenAir integration to update the corresponding record in NetSuite.

    • Replace All.

      Important:

      The Replace All integration method cannot be used when exporting records from OpenAir to NetSuite using a custom export workflow. It can only be used when exporting OpenAir published report data to NetSuite.

  10. Click Save.

  11. Click New workflow then click the display name of the custom export workflow you created. The custom export workflow is added to the list.

    Adding a custom workflow to the list of integration workflows.
  12. Select the custom export workflow from the list of workflows to show the field mappings for this workflow. Custom export workflows are listed after built-in workflows.

  13. Edit the field mappings as per your integration requirements.

    Two mapping rows are shown by default. These required mapping rows are protected and cannot be modified:

    • One row mapping the internal ID of the OpenAir record to the relevant custom field on the NetSuite record.

    • One pullback row retrieving the internal ID of the NetSuite record and storing it in to the relevant custom field on the OpenAir record.

    You must specify at least one additional mapping row before you can save the workflow.

    Filed mapping definition table for a custom workflow.

Best Practice Guidelines

Review the following guideline:

  • Before you create a custom export workflow, make sure you add custom fields to the NetSuite record type and to the OpenAir record type to store the internal IDs of the records integrated using the custom workflow.

  • Before you create a custom export workflow exporting OpenAir records to NetSuite as resource allocation records, you must create a custom CRM field for resource allocation records in NetSuite to hold the internal ID of the matching OpenAir record and specify this ID field for the NetSuite record when creating the custom export workflow.

    Use the following details when creating the custom CRM field in NetSuite:

    • ID: _oa_resource_allocation_id

    • Type: Free-form text

    • Applied to: Resource Allocation

    Note:

    By default, only the standard fields for NetSuite resource allocation records and the custom field described above are available for mapping. To make custom CRM field for resource allocation records other than _oa_resource_allocation_id available for mapping, you must list them on the OpenAir NetSuite Connector administration form. See NetSuite custom fields for resource allocation records in field mapping for custom export.

    When exporting bookings from OpenAir to NetSuite as resource allocations, bookings for both named resources and generic resources are included by default. You can add a filter to exclude bookings for generic resources, if you want to export only bookings for named resources.

    For more information about the Resource Allocations feature in NetSuite, see Resource Allocations (external link to NetSuite SuiteAnswers | Answer ID: 31868).

    For more information about creating a custom CRM field, see Creating Custom CRM Fields (external link to NetSuite SuiteAnswers | Answer ID: 10082).

  • Update the NetSuite custom fields available for field mapping when you create a custom export workflow by clicking Synchronize from the custom export workflow configuration form.

  • Consult NetSuite SOAP schema browser for reference when defining field mapping for custom export workflows. It includes information about any specific requirements for exporting OpenAir data to NetSuite.

    For example, if you are exporting project task records from OpenAir to NetSuite and you want to set the project task start date in NetSuite to match the start date in OpenAir, you need to add the following mapping lines. NetSuite calculates the earliest possible start date based on existing predecessors unless you set constraintType to the value _fixedStart.

    • NetSuite Field: ProjectTask.startDate — OpenAir Field: Project_task.start_date

    • NetSuite Field: ProjectTask.constraintType — OpenAir Field: =”_fixedStart”