Tag Archives: boomi

We Did: WordPress WooCommerce and Netsuite

Challenges

Customer is hosting a website where visitor are allow to register and login. Visitor and existing users are allow to make purchase through the website too but the transactions and payment would need to be tracked through Netsuite.

Solution:

Purpose To sync product, website users and sales transaction between website (WordPress WooCommerce) and Netsuite
Applications WordPress (WooCommerce)
Netsuite
Versions WordPress
Netsuite
Tool Boomi
Information Netsuite Non-Inventory Sales Item > Woocommerce Product
Woocommerce User > Netsuite Customer
Netsuite Customer > Woocommerce User
Woocommerce Orders > Netsuite Sales Order
Netsuite Sales Order > Woocommerce Orders
Data Formats JSON and XML
Volumes ~100/day
Process When customer register a login through website, customer information needs to be stored in Netsuite as well. When a items are added and maintained in Netsuite, the product needs to be made available in the website for people to purchase. And when customer make a purchase through website, the transaction needs to be in returned tracked in Netsuite for shipping and reporting purposes.
Schedule Every 2 minutes
Complexity Medium

WEDID: Boomi Advanced User Security

Challenges

Customer has the requirement to restrict Boomi login users to have certain privileges when performing development and/or monitoring the processes logs. For example, a developer should not be given privilege to see production logs but he/she is allow to at least perform development as well as viewing logs/data processes deployed in a non-production environment.

Solution:

Purpose Create more restrictive privileges for different Boomi login users of an account.
Applications Dell Boomi Atomsphere
Tool Dell Boomi Atomsphere
Information Enable the Boomi Advanced User Security feature. This allows creation of custom roles with combination of different privileges. Assign the different custom roles setup to the appropriate user as well as assigning the respective custom roles to only the environment which the user is allow to see.
Complexity Low

Boomi: Handling Additional Parameters when extending OAuth 2 details

Boomi allows extending OAuth 2 details for example in a HTTP Client Connector.

http_extension

When defining the connection details in the development mode, you are allow to build the Authorization and Access Token URL with additional parameters via the “Add Authorization Parameter” and “Add Access Token Parameter” section:

additional_params

There is no way to extend the additional parameters portion as of today.

An alternative approach is to consider building the parameters directly through the “Authorization Token URL” and “Access Token URL” directly instead.

For example: ${the_authorization_url}?response_type=code&resource=……

In this case, you can then overwrite the parameters through the “OAuth2 Authorization Token URL” and “OAuth2 Access Token URL” in the extension.

This is something to be considered when you are planning to extend the OAuth 2 details for a connector.

Wedid: Boomi Atom Installation and Processes Transfer

Challenges

Customer has been using the Boomi Atom Cloud to run their integration processes and would like to shift to an on-premise atom to have better control over the atom configuration.

Customer would have difficulty transferring all the processes into the new production environment as well when the on-premise atom is available.

Solution:

  • Installed a 64-bit on-premise atom hosted in Linux server
  • Assisted in transferring existing processes into the new production environment
  • Updated the environment extension as well as redefine the integration schedule
Purpose Install on-premise atom and transfer the existing integration process to ensure all processes utilises the on-premise atom instead
Tool Boomi
Complexity Low

 

Boomi: SAP Integration Tips

This guide is not to help you to build a brilliant integration, but it gives you an important head start if you are integrating to SAP by using the Boomi SAP Connector.

Installation

  1. Before the installation, please make sure that you have installed the Java JDK (not JRE) in the server although Boomi Atom installer will download the Java JRE into the Atom installation directory (e.g, C:/Boomi Atomsphere/Atom – WDCi Atom/jre) if you do not have one in the server. Unfortunately, the Java JRE is not sufficient to run the SAP connector.
  2. You need to create a JAVA_HOME environment variable to point to the Java JDK directory and also include the JAVA_HOME/bin into the global path environment variable.
  3. After the installation, you will need to download the additional SAP library from the official site (service.sap.com/connectors > SAP Java Connector > Tools & Services) and extract the content into the <Boomi atom installation folder>/userlib/sapjco folder (e.g, C:/Boomi Atomsphere/Atom – WDCi Atom/userlib/sapjco).
  4. Once the above is done, please restart the Atom service in order for the changes to take effect.

Notes: If you would like to use SAP IDoc Listener (for real time integration), Boomi SAP connector requires a database (for tracking purpose) and you will need to download the required JDBC driver and place in the userlib/ folder.

Operation Profile

After importing the operation, please make sure that the date data type field has the correct date format in both Request and Response profile. The format used by the connector is:

  • Date = yyyy-MM-dd
  • Time = HH:mm:ss

Failing to configure the date in the Request profile would cause the connector to always returns all data from SAP.

Get Operation

Mostly, you will query the data by using last updated date time. The date/time format for the query operation is:

  • Date = yyyy-MM-dd (this is different from the format being used in SAP BAPI Tester, dd.MM.yyyy)
  • Time = HH:mm:ss

Send Operation

If you are sending information to SAP via a BAPI operation, it is best to double check with the SAP developer to see if they require Boomi SAP Connector to send “Commit Transaction” as part of the BAPI call. If yes, please make sure that the “Commit Transaction” option is checked in the SAP operation.

Wedid: Microsoft Dynamics AX & Salesforce Integration

Challenges

With the introduction of Salesforce in the company, the customer would like to move the maintenance of customer and merchant records from Microsoft Dynamics AX to Salesforce. However, some of the users (e.g, accountant) will still be maintaining the customer records in Microsoft Dynamics AX. Besides, the customer would like to sync the Sales Order information to Salesforce so that they can utilise the powerful reporting engine to generate the Sales report.

Solution:

dynax_sf_merchant

Purpose To sync the customer and merchant information between Microsoft Dynamics AX and Salesforce
To Sync the sales order to Salesforce
Applications Salesforce
Microsoft Dynamics AX
Versions Salesforce Enterprise
Microsoft Dynamics AX 2012
Tool Boomi
Information Microsoft Dynamics AX Customer <-> Salesforce Account (Customer)
Microsoft Dynamics AX Merchant < Salesforce Account (Merchant)
Microsoft Dynamics AX Sales Order > Salesforce Order and Order Line
Data Formats XML/td>
Volumes ~100day
Process Bi-directional sync of Customer record between Microsoft Dynamics AX and Salesforce
Microsoft Dynamics AX Sales Order to create/update Salesforce Order and Order Line
Schedule Every 15 minutes
Complexity Low

 

Boomi Connector: Using JSON Schema

In the latest Boomi connector SDK, you can now write a custom connector to work with JSON profile instead of using the convention XML profile. So how to do this?

Let’s take the following JSON schema as an example:

{  
   "$schema":"http://json-schema.org/draft-04/schema#",
   "title":"Product set",
   "type":"array",
   "items":{  
      "title":"Product",
      "type":"object",
      "properties":{  
         "id":{  
            "description":"The unique identifier for a product",
            "type":"number"
         },
         "name":{  
            "type":"string"
         },
         "price":{  
            "type":"number",
            "minimum":0,
            "exclusiveMinimum":true
         }
      }
   }
}

The main object element in the JSON schema is “item”. In the connector browser, we just need to declare “item” as the element name (or they call in pointer in the connector) and specify the input and output type as below:

ObjectDefinition objDef = new ObjectDefinition();
objDef.setElementName("/" + elementName);
objDef.setInputType(ContentType.JSON);
objDef.setOutputType(ContentType.JSON);

objDef.setJsonSchema(jsonStr);

That’s all! Happy coding 😀

Boomi Tips: Retrying Error Document for Sub Process

In Boomi, we often design the integration process to run in a serial mode by having a Parent process that invokes Sub process.

Parent Process

This is really helpful if we have a business flow which we need to make sure that the parent record (e.g, Customer) is synced into the target system before the related record (e.g, Sales Order) is being synced. However, this design is not that handy when it comes to retrying error document. As you all know that Boomi allows you to retry an error document in the Process Monitoring console. This only works for the document that is related to the Boomi process that is attached to an environment directly and deployed.

As a workaround, you will need to attach and deploy the related Sub process to an environment and just let it sit there without having any scheduler.

Wedid: Inventory Reconciliation Report (CSV format)

Challenges

Client requested for a report to outline the discrepancies between the inventory items between the warehouse management system (SCALE) and the ERP system (Netsuite). Both stock list will be uploaded to FTP server based on the schedule set. And in return, a report in CSV format is require to outline the items’ quantity from both system as well as the variance between the quantity on hand.

Solution:

ftp_ftp

Purpose To produce a daily Inventory Reconciliation Report that outline the variance between 2 systems’ item quantity on hand.
Applications FTP
Versions FTP
Tool Dell Boomi Atomsphere
Information SCALE Stock List File (FTP) + Netsuite Stock List File (FTP) > Inventory Reconciliation Report (FTP)
Data Formats Flat File
Volumes ~20000/day
Process Both stock list files are retrieved from the FTP server daily which then they will be processed to generate a csv format reconciliation report.
Schedule Daily
Complexity Low