SRW Functions

on Wednesday, September 8, 2010


SRW Package is a collection of PL/SQL constructs that provide developers with a suite of built-in functions, procedures, and exceptions that can be used in any of your libraries or reports. The following lists several of these constructs, and briefly describes how Applications uses them in reports.

SRW.DO_SQL and SRW.DO_SQL_FAILURE
When it is necessary to perform data definition statements (DDL), the SRW.DO_SQL packaged procedure must be used. You cannot perform DDL statements in PL/SQL. In conjunction with this, we use the SRW.DO_SQL_FAILURE exception which raises an error if the statement should fail.

Example
BEGIN
SRW.DO_SQL('Create table Test...');
EXCEPTION 
  when SRW.DO_SQL_FAILURE then
  .....
END;

SRW.MESSAGE
This procedure allows developers to create their own messages and return them at runtime. It takes two arguments, a message number and message text. It can be used for error handling or debugging. Applications uses this feature to standardize and share messages across reports.

Example
SRW.MESSAGE('500','First debug line');

SRW.USER_EXIT and SRW.REFERENCE
Because Applications reports commonly call user exits it is critical that Oracle Reports support such calls. To facilitate this requirement the Package offers  SRW.USER_EXIT and SRW.REFERENCE. User exits may be called from any PL/SQL interface within a report, but it must be called with SRW.USER_EXIT. Furthermore, to ensure that the value of an object passed to the user exit contains the most recently computed or fetched value, SRW.REFERENCE will add the object to the user exit dependency list.

Example
BEGIN
SRW.REFERENCE(:Currency_code);
SRW.REFERENCE(:Currency_value);
SRW.USER_EXIT('FND FORMAT CURRENCY CODE=":Currency_code"                         
               AMOUNT=":Currency_value"                        
               DISPLAY=":Currency_formatted"');
RETURN(:Currency_formatted);
EXCEPTION WHEN
SRW.USER_EXIT_FAILURE THEN
RETURN('FORMAT ERROR');
END:

Oracle BPEL Process Manager

on

BPEL
stands for Business Process Execution Language which is utilized to specify behavior of various business process based on Web Services. It is a language based on the XML platform, which enables task sharing with the help of web services among various enterprise solutions. BPEL helps to reduce complexity and cost of business processes by integrating discrete services series into an easy process flow.

Now, Oracle BPEL Process Manager is from the family of Oracle Fusion Middleware. It helps to develop and deliver Service Oriented Architecture or SOA quickly. The main components of BPEL Process Manager are:
  • BPEL Server
  • BPEL Console
  • BPEL Designer (Eclipse or JDeveloper)
  • Database
The following diagram represents the architecture of BPEL Process Manager


BPEL Process Manager Features
BPEL Process Manager uses BPEL standards for designing, deployment, monitor and administering processes. It meets up with various web service standards such as WSDL, SOAP and XML like BPEL. You can initiate exception management and fault handling both at the time of designing an application or during runtime. Event timeouts, parallel processing and notifications are some of the important features of BPEL Process Manager. You may also run compensation mechanism for situations that require implementation of lengthy transactions. It automatically maintains states of lengthy processes in the database. BPEL Process Manager undertakes management, administration, version control etc. along with maintaining reliability and scalability of processes.

BPEL Process Manager supports installation on various operating systems and can be easily integrated with different types of application servers such as BEA WebLogic, JBoss, Oracle Application Server etc. It also provides support in sensors, notifications, worklists, transformations, technology adapters, third-party adapters etc. for JDeveloper BPEL Designer. BPEL Process Manager may also be integrated with other applications such as Oracle Workflow, Oracle Business Activity Monitoring, Oracle APEX Integration InterConnect and Business To Business Oracle Application Server Integration.

Designing BPEL Processes with BPEL Process Manager
BPEL Process Manager can be used to design BPEL processes graphically by using two types of designers, namely,
  1. Eclipse BPEL Designer and
  2. Jdeveloper BPEL Designer environment.
All you need to do to design such processes is to drag and drop some elements or activities. You may have to edit properties for all such dropped elements. All your time that would have been wasted in writing code for the same is saved. You may use external services, wizards etc. to integrate various services with the process. It is very easy to develop and maintian BPEL processes as developed processes can be deployed drectly to BPEL console.

Integration of IDE with Jdeveloper BPEL Designer is very useful for reducing coding tasks and complexities as all the features of Oracle Jdeveloper to design, code, debug, test, profile, tune and deployment are integrated with declarative and visual development approach. This simplifies even the complexiest task. Moreover, the applications or processes of Jdeveloper BPEL Designer are portable and can be used or modified anywhere.


Eclipse BPEL Designer is used to create web sites, Enterprise JavaBeans, C++ Programs etc. and is closely integrated with Eclipse platform. Features of Eclipse such as it’s capability to program enterprise tools and applications is made easy with frameworks and useful building blocks of an Eclipse BPEL Designer.

Again, Processes that are designed with Eclipse BPEL Designer can also be used with various BPEL servers as it uses standard BPEL Designer characteristics.