Translate

Tuesday, January 14, 2014

Oracle Web Logic Server 12C

Oracle Web Logic Server 12C


Web Logic Server is an application server: a platform for developing and deploying multitier distributed enterprise applications. WebLogic Server centralizes application services such as Web server functionality, business components, and access to backend enterprise systems.
It uses technologies such as to improve resource use and application performance.

·         Caching.
·         Connection pooling.

Web Logic Server also provides enterprise-level security and powerful administration facilities.

Connection Pooling:

Connection pooling in the JDBC 2.0 extension API is a framework for caching database connections. This allows reuse of physical connections and reduced overhead for your application. Connection pooling functionality minimizes expensive operations in the creation and closing of sessions.

Connection Caching:

Connection caching, generally implemented in a middle tier, is a means of keeping and using caches of physical database connections.


Web Logic Server operates in the middle tier of a multitier (or n-tier) architecture. A multitier architecture determines where the software components that make up a computing system are executed in relation to each other and to the hardware, network, and users. Choosing the best location for each software component lets you develop.
·         Applications faster
·         Eases deployment
·          Administration
·          Provides greater control over performance
·          Utilization
·          Security
·          Scalability
·          Reliability
Web Logic Server implements J2EE, the Java Enterprise standard. Java is a network-savvy, object-oriented programming language, and J2EE includes component technologies for developing distributed objects. This functionality adds a second dimension to the WebLogic Server application architecture—a layering of application logic, with each layer selectively deployed among Web Logic Server J2EE technologies.

News Facts

Oracle, today announced Oracle WebLogic Server, 12c, the latest release of the #1 application server for conventional systems, engineered systems and cloud environments.
As the center piece of Oracle’s Cloud Application Foundation, and a core part of the Oracle Fusion Middleware product family, Oracle WebLogic Server continues to deliver innovative new capabilities for building, deploying and running Java Platform, Enterprise Edition (Java EE) applications.
Oracle WebLogic Server 12c provides significant enhancements to help customers and partners lower their total cost of ownership and derive more value from their current application infrastructure, while accelerating the development cycle and reducing time-to-market for their applications.
Oracle WebLogic Server 12c is now certified for the full Java EE 6 platform specification, which enables higher developer productivity with standards-based, modern APIs, including Servlet 3.0, JAX-RS 1.1, Java Server Faces 2.1, EJB 3.1, Context and Dependency Injection for Java, and many others.
Oracle WebLogic Server developers can now leverage Java Platform Standard Edition (Java SE) 7 features to create cleaner, more maintainable code.
Oracle WebLogic Server provides out of the box support for dependency management and a uniform build process via an updated Oracle WebLogic Server plug-in for Apache Maven.
The new Fusion Middleware component Oracle Traffic Director (OTD) directly integrates with Oracle WebLogic Server 12c to add high-performance and high availability traffic routing capabilities, along with dynamically configurable caching, load-balancing and proxy support for HTTP-based applications.
Leveraging graphical tooling and open, PaaS Web Service APIs, Oracle Virtual Assembly Builder enables simplified configuration and packaging of multi-tier enterprise applications on environments virtualized with Oracle VM.
Customers can leverage Oracle WebLogic Server 12c to meet their most demanding business needs with a reliable, available, secure platform.
Improved integration between Oracle WebLogic Server and Oracle Real Application Clusters (RAC), which can auto detect and correct database node failures to help drive higher performance and simplify management.
New disaster recovery capabilities allow customers to store data in either a file store or a database, including the option to store transaction logs in a database. It enables the use of database-integrated consistent replication technologies with Oracle GoldenGate and Oracle Active Data Guard for all dynamic application data including online, Java Message Service (JMS) and transaction logs.
Improve application security with the Transport Layer Security (TLS) 1.2, the successor to SSL.
Provides a seamless upgrade from Oracle WebLogic Server 11g.
Oracle WebLogic Server is the highest performing application server available today.
Integration with Oracle RAC enables customers to achieve 2-3x faster data speeds.
Oracle Traffic Director can deliver a 3-4x performance boost to applications running on Oracle WebLogic Server and Oracle Fusion Middleware, compared to traditional web-based architectures. It is delivered on Oracle Exalogic Elastic Cloud where it has been optimized for extreme performance taking advantage of Intel's (TM) Advanced Encryption Set and Integrated Performance Primitives to deliver maximum compression and SSL performance.
Oracle WebLogic Server has recently achieved world record SPECjEnterprise2010 benchmark results including: World record multi-node result(1); Highest EjOPS per core(2); and World record dual-node result(3).
Gartner, Inc. has placed Oracle in the Leaders Quadrant of its 2011 report, “Magic Quadrant for Enterprise Application Servers” (4).
Oracle WebLogic Server is optimized to run as a high performance, mission critical, elastic cloud infrastructure on Oracle Exalogic Elastic Cloud, the world‘s first and only engineered system for cloud computing. Oracle Exalogic Elastic Cloud is tested and tuned by Oracle to provide the best foundation for Java applications, Oracle applications and other enterprise applications with blazing performance.
Oracle WebLogic Server is also a key component of the new Oracle Java Cloud Service, an enterprise platform for developing, deploying and managing business-critical Java EE applications, which supports development and deployment from multiple Java-based integrated development environments (IDEs), including Oracle JDeveloper, NetBeans IDEand Eclipse.



Monday, January 13, 2014

Start Background Engines of Oracle Workflow

How to Start Background Engines of Oracle Workflow in R12.1.1
Workflow Notification Configuration in R12

Go to System Administrator > Oracle Application Manager > Workflow.

Submit Request For > Background Engines. Press Go.
Configure Background Engines with the following parameter.



Clear cache using functional administrator responsibility.  Check whether background engine is up or not.






1. What is Workflow Background Engine?
The Background Engine is a PL/SQL procedure. The Background Engine checks for and executes any deferred or timed out activities that satisfy the arguments of the procedure at the time the procedure is invoked. If new activities are deferred or timed out after the initiation of the current Background Engine, the procedure will check one more time for any new activities to execute prior to ending. The procedure ends once all matching activities are executed.
 2. How the Background Engine is called?
Following is the Background Engine API which takes the mentioned parameters. WF_ENGINE.BACKGROUND( itemtype        in varchar2,
minthreshold    in number default null,
maxthreshold    in number default null,
process_deferred    in boolean default TRUE,
process_timeout    in boolean default TRUE)

3. How to Run the Background Engine from Oracle Applications?
Submit the Workflow Background Process Concurrent Program through
Navigate > Sysadmin > Request > Run
Item Type – Select the appropriate Item Type (say PO Approval)
Min and Max tershould – (specify 0 to 100 or you can leave it blank)
Defered = Yes (so that all defered activities are processed)
Timed out=Yes (so that all timedout activities are processed)

4. How to Run the Background Engine from SQL*Plus?
From SQL Prompt run the following command
SQL> EXEC WF_ENGINE.BACKGROUND
or from unix prompt
$ $FND_TOP/Admin/Sql/wfbkg.sql

5. Why run the Background Engine?
WF Engine does not handle all the activities. For the reasons like Timed Out, Defered or sometimes errored activities will be forwared to Workflow Background Engine. If that time the Workflow Background is not running then these process will be stuck in process only. Unless you start the Background these will not be processed. Even if you start the background engine with Defered = No and Timedout = No then also these will not be processed.
 6. Is it necessary to schedule the Background Engine?
In continuation to the above answer to to the Question 5, Workflow Background Engine will process the activities only which are forwarded by the Workflow Engine for reasons like timed out, defered etc. Once these activities are processed, the Workflow Background Engine goes down. You need to start the Workflow Background Engine again for any new activities which are forwarded. Therefore, it is usually recommended to schedule the Workflow Background Engine periodically especially for the Item Types such as PO Approval etc..

Thursday, January 2, 2014

Audit Profile Options

Audit Profile Options



By using the following query we can get number of profile option changed along with new values in given number of daysConnect as apps user to instance

SELECT '***Profile Option Name ***'
a.user_profile_option_name
'*** Was Updated with value '
'"'
b.profile_option_value
'"'
' In The Last '
&p_no_of_days ' days'
' by '
(SELECT user_name
FROM apps.fnd_user u
WHERE u.user_id = b.last_updated_by) mesg
FROM apps.fnd_profile_options_vl a
,apps.fnd_profile_option_values b
,apps.fnd_user c
WHERE a.profile_option_id = b.profile_option_id
AND b.last_updated_by = c.user_id
AND ( b.last_update_date > SYSDATE - &p_no_of_days
OR b.creation_date > SYSDATE - &p_no_of_days)



FND USER CREATION API SCRIPT

Oracle provides below API to create FND User.

/*procedure FND_USER_PKG.CreateUser (
  x_user_name                  in varchar2,
  x_owner                      in varchar2,
  x_unencrypted_password       in varchar2 default null,
  x_session_number             in number default 0,
  x_start_date                 in date default sysdate,
  x_end_date                   in date default null,
  x_last_logon_date            in date default null,
  x_description                in varchar2 default null,
  x_password_date              in date default null,
  x_password_accesses_left     in number default null,
  x_password_lifespan_accesses in number default null,
  x_password_lifespan_days     in number default null,
  x_employee_id                in number default null,
  x_email_address              in varchar2 default null,
  x_fax                        in varchar2 default null,
  x_customer_id                in number default null,
  x_supplier_id                in number default null)
*/

Below is an example of the above seeded API. You may add/remove parameters based on your requirement.  

DECLARE
   l_user_name             VARCHAR2(100)  := 'TEST_FND_USER';
   l_user_password         VARCHAR2(100)  := 'welcome1';
   l_password_date         VARCHAR2(100)  := SYSDATE;
   l_password_lifespan_days    NUMBER     := 90;
   l_email_address         VARCHAR2(100) := 'test@default.com';

BEGIN
  FND_USER_PKG.CREATEUSER
  (  x_user_name            => l_user_name,
     x_owner                => NULL,
     x_unencrypted_password => l_user_password,
     x_password_date        => l_password_date,
     x_password_lifespan_days   => l_password_lifespan_days,
     x_email_address        => l_email_address
 );

 COMMIT;

 DBMS_OUTPUT.PUT_LINE('Apps User ' || l_user_name || ' has been successfully created');

EXCEPTION
       WHEN OTHERS THEN
           ROLLBACK;
           DBMS_OUTPUT.PUT_LINE(SQLERRM);
END;

Procure to Pay Data Flow

Procure to Pay Tables and Data Flow

--Vendors
SELECT * FROM ap_vendors_v WHERE vendor_name = 'XXX_VENDOR';
select * from po_vendors where vendor_name = 'XXX_VENDOR';

--Requisitions
select segment1, type_lookup_code,a.* from po_requisition_headers_all a where requisition_header_id = xxxxxx;
select * from po_requisition_lines_all where requisition_header_id = xxxx and requisition_line_id = xxxxxx;
select * from po_req_distributions_all where requisition_line_id = xxxxxxx; 
select * from po_document_types where document_subtype = 'PURCHASE';--(po_requisition_headers_all .type_lookup_code)
select * from po_lookup_codes where lookup_type = 'AUTHORIZATION STATUS';

--PO Headers
select * from po_distributions_all where req_distribution_id = po_req_distributions_all.distribution_id
select * from po_lines_all where po_line_id = xxxxx;
select * From po_headers_all where po_header_id = xxxxx;
select * from po_line_locations_all where po_header_id = xxxxx;

--Receiving
select * from rcv_transactions where po_header_id = 147163 and po_distribution_id = xxxxx;
select * from rcv_shipment_headers where shipment_header_id = rcv_transaction.shipment_header_id;
select * from rcv_shipment_lines where where shipment_header_id = rcv_transaction.shipment_header_id;
select * from rcv_serial_transactions where transaction_id = rcv.transactions.transaction_id;
--Receiving transaction Processor import 

--AP Invoices and Payments
select * from ap_invoice_distributions_all where po_distribution_id = xxxx;
select * from ap_invoices_all where invoice_id = xxxxxx;
select * from ap_terms where term_id = xxxxx;
select * from ap_invoice_payments_all where invoice_id = xxxxx;
select * from ap_payment_schedules_all where invoice_id = xxxxxx;
select * from ap_payment_distributions_all where invoice_payment_id in (select invoice_payment_id from ap_invoice_payments_all where invoice_id = xxxxxx);
select * from ap_checks_all where check_id = xxxxx;

--Accounting Entries
select * from ap_ae_lines_all where source_table = 'AP_INVOICES' and source_id = xxxxx; -- (ap_invoices_all.invoice_id)
select * from ap_ae_headers_all where ae_header_id = xxxxxx;

--Reconciling Bank Accounts in Cash Management Module
select * from ce_statement_headers_all where statement_header_id =xxxxx
select * from ce_statement_lines where statement_header_id in (select statement_header_id from ce_statement_headers_all where statement_header_id =xxxxx)

--Concurrent Program "Payables Transfer to General Ledger"
select * from gl_interface;

--Import Journal
select * from gl_je_batches;
select * from gl_je_headers;
select * from gl_je_lines;

--Post Journals "Posting"select * from gl_balances;

--Requisition Screen Header

select * from PO_REQUISITION_HEADERS_INQ_V where requisition_num = 'xxxxxx';
select * from PO_REQUISITION_LINES_INQ_V where requisition_header_id = xxxxxx;
select * from PO_REQUISITION_HEADERS_V where requisition_number = 'xxxxx';
select * from PO_REQUISITION_LINES_V where requisition_header_id = xxxxxx;
select * from PO_REQ_DISTRIBUTIONS_V where requisition_line_id in (select requisition_line_id from PO_REQUISITION_LINES_V where requisition_header_id = xxxxx);

SET ORG_ID in Oracle SQL


Set ORG_ID in Oracle PL/SQL 



Oracle 11 I

BEGIN
DBMS_APPLICATION_INFO.SET_CLIENT_INFO('ORG_ID');
END;

----------------------------------------------------------------------------------------------------------

Oracle R12



BEGIN
MO_GLOBAL.SET_POLICY_CONTEXT('S',
ORG_ID);
END;



------------------------------------------------------------------------------------------------------------

Wednesday, December 4, 2013

Email Multiple File Attachments From Solairs / AIX / HP-UX / UNIX / Linux Command Line

Email Multiple File Attachments From Solairs / AIX / HP-UX / UNIX / Linux Command Line



Task: Email reports.tar.gz File

Type the uuencode command as follows:
uuencode reports.tar.gz reports.tar.gz | mailx -s "My Report" you@cyberciti.biz
Please note that the file name "reports.tar.gz" appears twice on the uuencode command line. You must use same name twice.

Task: Email new office photo along with text message read from a file

Type the command as follows;
(cat mymessage.txt; uuencode office.jpeg office.jpeg) | mail -s "Subject" you@cyberciti.biz

Task: Send multiple attachments in a single email

Type the command as follows:
$ uuencode r1.tar.gz r1.tar.gz > /tmp/out.mail
$ uuencode r2.tar.gz r3.tar.gz >> /tmp/out.mail
$ uuencode r3.tar.gz r3.tar.gz >> /tmp/out.mail
$ cat email-body.txt >> /tmp/out.mail
$ mail -s "Reports" you@cyberciti.biz < /tmp/out.mail