--- title: Create Extract Transform Load \(ETL\) definitions description: Create ETL definitions to extract data from a source table, transform the data as desired, and load the data into multiple target tables. ETL definitions also support nested data structures. locale: en-US canonical_url: https://www.servicenow.com/docs/r/australia/integrate-applications/system-import-sets/create-etl-definitions.html release: australia product: System Import Sets classification: system-import-sets topic_type: task last_updated: "2026-03-12" reading_time_minutes: 2 breadcrumb: [Robust Import Set Transformers, Import sets, Imports, Workflow Data Fabric] --- # Create Extract Transform Load \(ETL\) definitions Create ETL definitions to extract data from a source table, transform the data as desired, and load the data into multiple target tables. ETL definitions also support nested data structures. ## Before you begin Role required: import\_transformer ## Procedure 1. Navigate to **All** > **System Import Sets** > **Administration** > **ETL Definitions**. 2. Click **New**. 3. Complete the form.
| Field | Description |
|---|---|
| Name | Name of the ETL definition. |
| Description | Description of the ETL definition. |
| Copy empty fields | Option to copy empty field values. If the incoming data has a field with an empty value, you can either copy the empty value or ignore it and keep the existing value. |
| Execute onBefore script | Option to run a script before inserting or updating data.The onBefore script has three parameters. - **source**: The source data from the import record. - **target**: The transformed data from the import record. In the onBefore script, this parameter accesses transformed data before it's inserted into the target table. - **importLog**: The log that records information about data import activity. The onBefore script has two variables. - **ignore**. Type: Boolean. When **true**, the specified import set row is ignored. - **ignore\_reason**. Type: String. Message describing why the import set row was ignored. |
| Execute onAfter script | Option to run a script after inserting or updating data.The onAfter script has three parameters. - **source**: The source data from the import record. - **target**: The transformed data from the import record. In the onAfter script, this parameter accesses transformed data after it's inserted into the target table. Once a record is inserted or updated, it has a sys\_id. - **importLog**: The log that records information about data import activity. |
| Application | Application scope for this record. |
| Active | Selected if the ETL definition is active. Unselected if the ETL definition isn't active. |