Executing non-Talend objects and operating system commands
Often, when running a schedule, it is necessary to execute a mixture of Talend and non-Talend objects, such as database scripts, batch files, or shell scripts. This exercise shows how this is easily achieved using Talend.
Note
Note that this exercise is for Windows only.
Getting ready
Open the job jo_cook_ch11_0080_systemCalls
.
How to do it…
- Drag a
tSystem
component onto the canvas. - Set the Command to the following:
"cmd /c"+context.cookbookData+"/batchFiles/jo_cook_ch11_0080_batchFile.bat"
- Add a
tJava
component, and add the following code:System.out.println("Return code"+((Integer)globalMap.get("tSystem_1_EXIT_VALUE")));
- Link the two components using and
onSubjobOk
trigger and then run the job.
How it works…
The tSystem
component sends a call to the operating system to execute a native command. In our case, the command is to execute a .bat
file that we have coded.
When the .bat
file completes...