# tSAPHanaBulkExec Standard Properties

These properties are used to configure tSAPHanaBulkExec running in the Standard Job framework.

The Standard tSAPHanaBulkExec component belongs to the Business family.

The component in this framework is available in all Talend products.

## Basic settings

| Database | Select a type of database from the list and click<br>Apply. |
| --- | --- |
| Property type | Select either of the following:<br><br><ul> <li> <span>Built-in</span>: No property stored centrally</li> <li> <span>Repository</span>: Select the repository file in which the                properties are stored. The fields that follow are completed automatically using the                data retrieved</li> </ul> |
| Use an existing connection | Select this check box and in the Component<br>List drop-down list, select the desired connection component to<br>reuse the connection details you already defined.<br><br>Information noteNote: When a Job contains the parent Job and the child Job, if you<br>need to share an existing connection between the two levels, for example, to share the<br>connection created by the parent Job with the child Job, you have to:<br><br><ol> <li> <p>In the parent level, register the database connection            to be shared in the <span>Basic              settings</span> view of the connection component which creates that very database            connection.</p> </li> <li> <p>In the child level, use a dedicated connection            component to read that registered database connection.</p> </li> </ol><br><br>For an example about how to share a database connection<br>across Job levels, see *Talend Studio<br>User Guide*. |
| Host | Add the database server IP address. |
| Port | Add the listening port number of DB server. |
| Schema | Add the table name of the database. |
| Username and Password | Enter the database user authentication data.<br><br>To enter the password, click the [...] button next to the<br>password field, and then in the pop-up dialog box enter the password between double quotes<br>and click OK to save the settings. |
| Table | Enter the name of the table to be written. Note that only one table<br>can be written at a time and that the table must exist for the insert operation to<br>succeed. |
| Action on table | On the table defined, you can perform one of the following operations:<br><br><ul> <li> <span>None</span>: No operation is carried out.</li> <li> <span>Drop and create table</span> </li> <li> <span>Create table</span>: The table does not exist                  and gets created.</li> <li> <span>Create table if not exists</span>: The table is                  created if it does not exist.</li> <li> <span>Drop table if exists and create</span>: The                  table is removed if it already exists and created again.</li> <li> <span>Clear table</span>: The table content is                  deleted. You have the possibility to rollback the operation.</li> <li> <span>Truncate table</span>: The table content is                  deleted. You do not have the possibility to rollback the operation.</li> </ul> |
| Type of table storage | This option is only available if you create (with or without drop)<br>the database table. This option allows you to define the way the data is stored in the<br>table. The following types of table storage organization are available:<br><br><ul> <li> <p> <span>Row</span>: Data is stored in rows. It is                    preferable to use this table type if the majority of table access involves                    selecting a few records, with all attributes selected.: The table is                  removed and created again.</p> </li> <li> <p> <span>Column</span>: Data is stored in columns. It is                    preferable to use this table type if the majority of table access will be                    through a large number of tuples, with only a few selected attributes.</p> </li> <li> <p> <span>History column</span>: Creates a table with a                    particular transaction session type called <em>HISTORY</em>.                    Tables with session type <em>HISTORY</em>: The table is support time travel                    queries. For more information on <em>HISTORY</em> and time travel                    queries, see <a href="http://help.sap.com/saphelp_hanaplatform/helpdata/en/20/d56cd075191014b7ea9e4e77477aae/content.htm" target="_blank">http://help.sap.com/saphelp_hanaplatform/helpdata/en/20/d56cd075191014b7ea9e4e77477aae/content.htm</a>.</p> </li> </ul> |
| Schema | A schema is a row description, it defines the number of fields to be<br>processed and passed on to the next component. The schema is either Built-in or stored remotely in the Repository.<br><br><ul> <li> <p> <span>Built-In</span>: You create and store the schema locally for this component                only.</p> </li> <li> <p> <span>Repository</span>: You have already created the schema and stored it in the                Repository. You can reuse it in various projects and Job designs.</p> </li> </ul> |
| Edit Schema | Click Edit<br>schema to make changes to the schema.<br><br>Information noteNote: If you<br>make changes, the schema automatically becomes built-in.<br><br><ul> <li> <p> <span>View schema</span>: choose this                option to view the schema only.</p> </li> <li> <p> <span>Change to built-in property</span>:                choose this option to change the schema to <span>Built-in</span> for local changes.</p> </li> <li> <p> <span>Update repository connection</span>:                choose this option to change the schema stored in the repository and decide whether                to propagate the changes to all the Jobs upon completion. If you just want to                propagate the changes to the current Job, you can select <span>No</span> upon completion and choose this schema metadata                again in the <span>Repository Content</span>                window.</p> </li> </ul> |
| CSV file on the SAP HANA host | Specify the name of the CSV file on the SAP HANA host. |
| Lines terminated by | Specify the character or sequence of characters used to separate<br>lines. |
| Fields terminated by | Specify the character, string or regular expression to separate<br>fields. |

## Advanced settings

| Additional JDBC Parameters | Specify additional JDBC parameters for the<br>database connection created. |
| --- | --- |
| Error log file name | Enter the file path of the log file. |
| Number of rows to skip | Define the specific number of rows in the import file to skip. |
| Date format | Enter the format of the date strings that are encoded in the import data. You can<br>enter the following values:<br><br><ul> <li>Y: year</li> <li>MM: month</li> <li>MON: name of the month</li> <li>DD: day</li> </ul> |
| Time format | Enter the format of the timestamp strings that are encoded in the import<br>data. |
| Thread size | Specify the number of threads used for concurrent import. |
| Batch size | Define the number of records to be inserted in a commit. |
| tStatCatcher Statistics | Select this check box to gather the Job processing metadata at the Job<br>level as well as at each component level. |

## Usage

| Usage rule | Use this component to increase the performance of loading data to an SAP HANA<br>database. |
| --- | --- |
| **Support** | tSAPHanaBulkExec should be used to interact with the ERP part of<br>SAP, including S4/HANA. |
| Dynamic settings | Click the [+] button to add a row in the table<br>and fill the Code field with a context<br>variable to choose your database connection dynamically from multiple<br>connections planned in your Job. This feature is useful when you need to<br>access database tables having the same data structure but in different<br>databases, especially when you are working in an environment where you<br>cannot change your Job settings, for example, when your Job has to be<br>deployed and executed independent of Talend Studio.<br><br>The Dynamic settings table is<br>available only when the Use an existing<br>connection check box is selected in the Basic settings view. Once a dynamic parameter is<br>defined, the Component List box in the<br>Basic settings view becomes unusable.<br><br>For examples on using dynamic parameters, see [Reading data from databases through context-based dynamic connections](https://help.qlik.com/talend/r/en-US/7.3/components/defining-context-groups/reading-data-from-databases-through-context-based-dynamic-connections) and [Reading data from different MySQL databases using dynamically loaded connection parameters](https://help.qlik.com/talend/r/en-US/7.3/components/context/reading-data-from-different-mysql-databases-using-dynamically-loaded-connection-parameters). For more information on Dynamic<br>settings and context variables, see Talend Studio<br>User Guide. |