Showing posts with label Integration. Show all posts
Showing posts with label Integration. Show all posts

Tuesday, September 15, 2020

Cost Comparison for Point-2-Point and Middle ware based integration



Point-to-point integration, also known as one-to-one integration is the simpler of the two integration models. Point-to-point integration is very tightly coupled and is used when a sender has to send a message to a single receiver (that is, a 1:1 relationship).
While adequate for simple integration, this model is quickly unmanageable for larger integration requirements because of the n(n-1) connections rule (also referred to as the n-squared problem).
As an example, assume that four different systems have to be integrated. This means that the total number of connections can be up to 12 (a bi-directional connection counts as two connections). This rarely happens in practice, but it does illustrate how quickly this integration model can become unmanageable with even a small number of systems. Hence, this model should be adopted when the number of systems that need to be adopted is fairly small.
Figure 1 illustrates how fast the number of connections can grow.



Figure 1  The n(n-1) rule for point-to-point integration
Another drawback of this model is that it’s fairly fragile. By its nature, point-to-point integration is used for synchronous communications. If the receiver is down, the entire system can fail (or at the very least, hang) because of the tight coupling between the sender and the receiver.
The tightly coupled nature of the point-to-point integration results in a ripple effect whenever there is a change or update in one system, thus impacting every other systems integrating with the system undergoing the change.
Following are the reasons why this model is harmful for infrastructure:
  • Exponential Increase in Complexity
  • Single Points Of Failure
  • No Course Of Action For Emergencies
  • Loss of Business Agility
  • Inflexible and Brittle
  • Expensive to maintain
  • Cannot implement new standards

Middle ware Integration

Middleware is application-independent software that provides services that mediate between applications. Middleware hides the complexities of the underlying operating system and network in order to facilitate the easy integration of new and legacy systems. This is a means for connecting clients to servers, clients to clients, and servers to servers without having to navigate through many operating systems, networks or resources server layers. There are two types of middleware, logical, that is related with how information moves through the organization and physical, that really moves the information and covers the technology used for this purpose.



P2P vs SOA Cost Comparison



Monday, May 13, 2019

Cloud ERP - Automate File Based Data Import using ErpIntegrationService

 

A lot of customers are past the point of adapting Oracle Cloud Applications and are moving to the next step of the lifecycle,  integrating Oracle Cloud Applications within their enterprise architecture. Oracle is currently providing a plethora of CRUD web services, REST and SOAP for integration.
But in some cases the only ability to interface data is still through File Based Data Imports (FBDI).

Using FBDI you generate an input file for import using predelivered Excel sheets by Oracle. These input files need to be uploaded to UCM. After which you start the Load Interface File for Import process to load the data into staging tables. After this you start the appropriate import process to load the data into the actual transaction tables. These are all manual steps.

With the ErpIntegrationService service you can now automate the process of
  • uploading the input file to UCM
  • initiate the Load Interface File for Import process 
  • initiate the import process

Where to start the full automation?
In order to automate this process from any backend system or middleware, you first need to extract the data and mimic the format that FBDI generates and in some cases zip the extract file.

Suppose we want to automate the import of Suppliers.
The FBDI template looks like this:


And generates following csv file:


In order to upload the extract (input file) to Oracle Cloud using the ErpIntegrationService you need to base64 encode the zip file that contains the csv input file.



Before you can invoke the importBulkData operation, you need to lookup the import process Path, Jobname and Parameters. These can be found via task Manage Custom Enterprise Scheduler Jobs for [module]. It is also a good practice to run the import process manually to see the actual parameter values.



Request
Using follow request you can now initiate the


   
   
     
         
            UEsDBBQAAAAIADGhcUlqdPKdYAAAAHkAAAATAAAAUG96U3VwcGxpZXJzSW50LmNzdnMOcnUMcdVxDQrwzCtJTS9KLMnMz9PLzC3ILypxKs3JdkksSdTR0VHQcc4vAoqBpXWCSwsKcjJTi3R0ggNc/VziHUNDPPyDPKNcXXRAav2AynUgWCESzIJAGABq4eUCAFBLAQIUABQAAAAIADGhcUlqdPKdYAAAAHkAAAATAAAAAAAAAAEAAAAAAAAAAABQb3pTdXBwbGllcnNJbnQuY3N2UEsFBgAAAAABAAEAQQAAAJEAAAAAAA==
            PozSuppliersInt.zip
            zip
         

         
            /oracle/apps/ess/prc/poz/supplierImport,ImportSuppliers
            NEW,N
         
         00
         #NULL
     
   


Response


   
      http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService//ErpIntegrationService/importBulkDataResponse
      urn:uuid:ed27f0b1-2feb-432a-ad09-2b5c0f6c90db
   
   
     
         1124309
     
   




Initiated processes


Imported Supplier

A few pointers
The element notificationcode can have the following values:


First digit 0 No notification
1 Email
2 Bell
3 Email & Bell
Second digit 0 Send in any case
1 Send on success
2 Send on error

The element callbackURL can be used to provide a (local) endpoint to a web service that will be invoked upon completion of the load and import sequence.