Wednesday, May 19, 2021

SOA/OSB - Interview Questions

SOA Part:

Can we poll files from multiple directories using one file/ftp adapter?

Answer: https://soalicious.blogspot.com/2021/05/soa-can-we-use-single-fileftp-adapter.html

singletone property

Answer: https://soalicious.blogspot.com/search/label/Singleton

SOA errorhandling

DB Distributed polling 

FTP sync read

logical delete in db

OSB Part: 

https://soalicious.blogspot.com/2024/05/osb-interview-questions.html

Common Questions:

XA vs non XA datastore

Difference between XA and Non-XA Datasource

Difference between SOA DB and OIC DB

SOA - Can we use single FIle/FTP adapter to poll multiple directory

Yes, we can poll from  multiple different directories using single file/ftp adapter. 

Following steps need to do:

Step1: In the File/FTP adapter configuration, Provide the physical or logical path using comma separator as below:

physical path:

directory for incoming files.

/tmp/fileAdapter/source1,/tmp/fileAdapter/source2

Step2: Keep the following property in your .jca file 

<property name="DirectorySeparator" value="," />

Now the file will be picked up from the multiple locations you gave....

Note: for each directory poll, it will create a separate instance in EM console.


Monday, May 17, 2021

OSB - Cross Origin Resource Sharing (CORS) in Oracle Service Bus

  • Cross-origin resource sharing (CORS) is a mechanism that allows restricted resources to be requested from another domain outside from which the first resource was served.
  • It restricts browser applications to access resources that have the origin different from the origin of the application itself. In order for API responses to be processed successfully, the API has to respond with its consent to be called Cross-Origin by these applications.

Note: A request to the same host but on a different port is considered a cross-origin request.The "origin" in the term "cross-origin" is defined as the scheme, host, and port of a URL.

To enable CORS, we just have to send the Access-Control-Allow-Origin header in the service response. To do this simply add a 'Transport Header' Component from the component pallet in the response Pipeline branch of your routing. Click the 'Transport Header' and then in the 'Transport Header - Properties' window click the '+'  button to add a new header named 'Access-Control-Allow-Origin' and give its value as '*' as shown below :

Note : Access-Control-Allow-Origin: * means that the resource can be accessed by any domain in a cross-site manner. If you wished to restrict the access to the resource to requests only from a particular domain or domains, you should set the value as that domain(or a list of those domains). With this configured, now you will be able to access your REST service from a web page running on another domain.

OIC - Process large file (above 10MB)

let’s discuss key design options based on your file size, content format and delivery (outbound) particularly files above 10MB.


The integration cloud offers several designs and modeling options to process large files. 

  • The Download file option allows the loading of files up to 1GB in Integration Cloud local file system.The file can be received in OIC from File Transfer Protocol (sFTP) server or through REST/SOAP APIs. This file then read in segments using the stage activity.

If your File size is less than 1 MB, you can use Any Adapters for Inbound Interfaces with no limitation for Runtime Considerations.

File greater than 1MB but less than 10MB, you can use Any Adapters for Inbound Interfaces with some limitations at Runtime. File Processing Limitations: Only XML or CSV format supported, Read Entire File in one go is not supported so you need to use Read File in Segments in Stage File Action.

For Outbound, you can use any Adapters that support both BASE64 encoding and file attachment.

For Files greater than 10MB, we have to use FTP, REST and SOAP adapters, with some limitations at Runtime. File Processing Limitations: Only XML or CSV format supported, Read Entire File in one go is not supported so you need to use Read File in Segments in Stage File Action.

For Outbound, you can use only use adapter that supports file attachment like FTP, REST and SOAP.

Integration Cloud does not allow loading files larger than 10MB for performance reasons.

If you need to read larger files, there is an option to “Download file”. This option handles files up to the size of 1 GB and allows files to be directly downloaded into OIC local file system without reading into memory.

The Downloaded files are accessed with the help of Stage Activity. It provides simple access to the Integration Cloud local file system.

Stage Activity provides options to list, read, write, zip and unzip files from logical directory paths used to download the file in the underlying file system.

OIC - File adapter vs FTP adapter

 File Adapter

  • The File adapter allows integrating with remote file servers for reading and writing files. You can use the File adapter with connectivity agent in scenarios where it is not possible to open up the FTP server to the Integration cloud.
  • The remote file is read using the File adapter trigger. Writing to remote files can be configured using the file adapter as invoke.

FTP Adapter

  • The FTP Adapter enables the integration of FTP servers (FTP/sFTP protocols) to integration cloud. It does not require a connectivity agent and the remote FTP server should be made accessible from the Integration cloud.
  • FTP Adapter cannot be used as a trigger but you can use Scheduled orchestration and add FTP as invoke for modeling trigger type integrations.

Tuesday, May 11, 2021

OIC - ERP - How to get the Job parameters for bulk import job

There are two ways to see the job parameters.Once we have job package and name, the next step is to determine the list of parameters for "Import Journals" job. Please follow these instructions:

Way 1:

Steps:

  • From Fusion Apps main page, Click the Navigator, and others then click Setup and Maintenance.
  • On the Setup page, select your setup offering such as Financials
  • Click on right icon as shown above to search for "Manage Enterprise Scheduler Job Definition and Job Sets for Financial, Supply Chain Management and Related Applications":
  • Select and Click "Manage Enterprise Scheduler Job Definition and Job Sets for Financial, Supply Chain Management and Related Applications
  • and search for "%Invoice%" in display name.
  • Select "Import Payables Invoices" row and click edit (please do not change anything as our goal is to get job package and name):
  • From user properties tab, we can see the number of arguments to send. And from paramters tab we can see the parameters. For example imvoice, it has 14 arguments so send 1st 14 params as mentioned in the parameters tab.
Steps with screenshots:










Way 2:

Steps:

  • From Fusion Apps main page, Click the Navigator, and then click Scheduled Processes in Tools.
  • Click on "Schedule New Process" button and search (and select) for "Import Journals". It will display the list of parameters as shown below:

Steps with Screenshots:






Few Instances of content  of .properties file

Journal Import Launcher:

/oracle/apps/ess/financials/generalLedger/programs/common/,JournalImportLauncher,GL_BU_ABC,<Data Access Set>,<source>,<Ledger>,<Group ID>,<Post Account Errors to Suspense>,<Create Summary Journals>,<Import Decriptive Flexfields>

Example: /oracle/apps/ess/financials/generalLedger/programs/common/,JournalImportLauncher,GL_BU_ABC,1061,Balance Transfer,1,ALL,Y,Y,N

Import Payables Invoices:

<ATTIBUTE1><ATTRIBUTE2><ATTRIBUTE3><AccountingDate><Hold><Hold Reason><ATTRIBUTE7><Source><Import Set><Purge><SUmmarize Report><ATTIBUTE12><Invoice Group><Number of parallel processes>

Default value:

<><><N><><><><1000><><><><><><><1>

#NULL,$BusinesUnitId,N,#NULL,#NULL,#NULL,1000, Source,#NULL,N,N,LedgerId,#NULL,1

Note: Check User properties tab to know the number of parameters to be sent via bulk import. for Import Payables Invoices it is showing 14 parameters.

OIC - Create eText template based BI report

What is ETEXT template:

An eText template is an RTF-based template used in generating text output intended for electronic communication. At runtime, BI Publisher applies this template to an input XML data file to create an output text file that can be transmitted to a bank or other customer.

Types of Etext Templates:

eText templates are categorized as 
  • Electronic Funds Transfer (EFT) 
  • Electronic Data Interchange (EDI).
EFT:

An EFT(Fixed Position) is an electronic transmission of financial data and payments to banks in a specific fixed-position format flat file (text).

EDI:

EDI(Delimiter Based) is similar to EFT except it is not only limited to the transmission of payment information to banks. It is often used as a method of exchanging business documents, such as purchase orders and invoices, between companies. EDI data is delimiter-based, and also transmitted as a flat file (text).


Follow my below blogs for implementation steps:

Featured Post

11g to 12c OSB projects migration points

1. Export 11g OSB code and import in 12c Jdeveloper. Steps to import OSB project in Jdeveloper:   File⇾Import⇾Service Bus Resources⇾ Se...