Pages

2011/12/19

Increasing Functionality of the NetSuite Component for Talend Data Integration

Overview
Since discovering tNetsuiteInput (read about it here)
on Talend Exchange, the integration team here at ERP Guru have dedicated resources to build new functionalities for it. The baseline concept of the component was good, however it was lacking certain key features that would greatly benefit any project. Consequently, this is why our integration team has added multiple functionalities, such as:
  • Between and NotBetween search operator support
  • Die on error option
  • Request level authentication
  • Support for Multi and Enum type search
  • Support for CustomRecord search
  • Support for joined search
So let's walk through the steps required to build a simple project with both input and output components. We will first search for an Employee with a specific email address, then take its internal ID to update the email in our NetSuite instance. (NOTE: This process would normally take hours to develop but with the new components it will only take a few minutes)

Steps

1. Import components from Talend Exchange

To begin, open Talend Integration Suite and create a new project. Once this step is completed, you need to uninstall any previous version of the component and then download both the Input and Output components from Talend Exchange.

You can download both components from the Talend Exchange website, or, alternatively, using the interface in Talend Studio as shown in the image below. Please ensure that you download the latest revision of the components.



Please note that at this point, some issues may app
ear. If you where using the old version of the component, there may be a conflict between the old and new version. You can trigger the Reinitialization of the Generation Engine by hitting Ctrl+Shift+F3 keys and changing the WorkSpace.

2. Add components to job


In the component palette, navigate to Business > NetSuite, you can now drag and drop both NetSuite componenta to your job. For the purpose of this walk through, you may also add three other components: two tLogRow and one tMap. Arrange them as shown in the following image.

The component tNetSuiteInput_1 will be used to fetch data according to the values defined in the user interface. These values allow you to search for normal body fields but also custom fields. In this version, you can now add even more filtering options by defining a record to join to the search.

3. Configure components


Some configuration of the components is required. You need to set the valid credentials of a NetSuite account for both Input and Output components. The employee used to access the NetSuite instance must have Web Services rights enabled with the proper role. For this example, you will select Employee for Record Type. The schema then need to be edited.
Delete every field except for InternalId, ExternalId, Email and ExpenseLimit, so that only those fields will be propagated into the Main Flow of Talend.


You then need to define what are your search criteria. Here, we are going to search for an Employee with the ExpenseLimit between 200.0 and 800.0.


With this step done, you can now double-click on the tMap_1 component. For this example, propagate only InternalId, ExternalId, and ExpenseLimit to the right-hand side, then click on the field row2. ExpenseLimit and write an equation that adds 25.



You now need to tell the Output component which operation to do. In this case, we will want to set the new ExpenseLimit to the Employee that we just found. In the Output component, click on the Action drop down list and select "update" you will also need to change the Record Type to "Employee" to match the Input type.




4. Run job

Now that we have finished the configurations of our components, we can run it!


You can see a similar result in your Run console. In this case, we only had one Employee that was matching the search criteria. The Output component automatically adds two columns to the main flow that will help you debug your Job by providing a Boolean according to the success of the Action performed. Should the action fail, a simple message is returned to the component for debug purpose.


Do not hesitate to contact us for more information on these components and on our offerings regarding NetSuite integrations.

1 comment:

  1. Great article. I can't seem to find the NetSuite component in the palette section. Have downloaded both components from the exchange. Any help?

    ReplyDelete