PO Communication Methods Whitepaper

53
Article On Purchasing Communication Methods An Oracle White Paper March 2008

Transcript of PO Communication Methods Whitepaper

Page 1: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods

An Oracle White Paper March 2008

Page 2: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 2

Article On Purchasing Communication Methods

Introduction ....................................................................................................... 5 1.0 Print............................................................................................................... 5

Choosing the format of document for communication.......................... 5 Text Format .............................................................................................. 5 PDF............................................................................................................ 6

Setting up ....................................................................................................... 6 Report parameters......................................................................................... 6 Launching Printed PO report from Approval.......................................... 7 Printed Purchase Order report output ...................................................... 9

2.0 Fax................................................................................................................. 9 How it works? ............................................................................................... 9

Text Format .............................................................................................. 9 PDF Format............................................................................................ 10

Sample Output ............................................................................................ 10 Output when the format is text............................................................ 10 Output when the format is PDF.......................................................... 11 Fax codes control file ............................................................................ 11

Setup steps ................................................................................................... 11 Select the communication method as ‘Fax’ for supplier site ........... 12 Faxing at the end of approval............................................................... 12

3.0 Email ........................................................................................................... 12 How it works? ............................................................................................. 12

Features of Oracle Workflow............................................................... 12 HTML format......................................................................................... 13 PDF format............................................................................................. 14

Setup steps ................................................................................................... 14 Supplier Site ............................................................................................ 14 Set the Profile Options.......................................................................... 15 Create and Approve PO........................................................................ 15

What happens in Approval? ...................................................................... 16 Sample Purchase Order Emails ................................................................ 17 Important Queries for Email Purchase Orders...................................... 17

Script to check the workflow status and po_wf_debug data. .......... 17 To check the AdHocUser Setup. ......................................................... 17 To check the Mail status........................................................................ 18 To Verify the Mail content from sqlplus ............................................ 18

Page 3: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 3

R12 feature to support communication of nontext attachments through email:.............................................................................................. 18 View Attachments in PDF PO................................................................. 18 Communicate Attachments via Email ..................................................... 19

4.0 PDF – In depth......................................................................................... 19 What is XML? ............................................................................................. 19 What is XSL? ............................................................................................... 20

XSL consists of three parts:.................................................................. 20 XSLT = XSL Transformations ............................................................ 20 XSLT Uses XPath: ................................................................................. 20

XSL-FO:....................................................................................................... 20 XML Publisher............................................................................................ 21 Advantages of PDF over Text format..................................................... 21 Prereq for PDF Document Generation .................................................. 22 Overview of the PDF document generation solution........................... 22

XML Generation.................................................................................... 23 XSL Style Sheets..................................................................................... 23 Generate Documents API .................................................................... 24 Generate PDF Document (genDoc)................................................... 25 XDO API’s ............................................................................................. 27

Setup Steps................................................................................................... 27 Purchasing Options................................................................................ 27 Select the Style sheets ............................................................................ 28

Triggering Points of PDF generation ...................................................... 28 Sample outputs............................................................................................ 29 Communication on demand...................................................................... 33

PO Output for Communication Concurrent Program .................... 35 Customizing Style sheet ............................................................................. 36

5.0 XML............................................................................................................ 37 Business Events .......................................................................................... 38 Oracle XML Gateway ................................................................................ 38 How it works ............................................................................................... 39 Setup steps for Model2 .............................................................................. 41

Setup by Buyer in Oracle XML Gateway ........................................... 41 Set Up System Administrator Profile Options for XML Gateway. 43 Setup on Supplier’s System................................................................... 43

Process submission by the buyer.............................................................. 43 Create a PO and approve it .................................................................. 43

6.0 EDI ............................................................................................................ 44 Introduction................................................................................................. 44

Oracle e -Commerce Gateway ............................................................. 44 How it works? ............................................................................................. 45

Outbound Flow of a Transaction with Oracle e-Commerce Gateway ................................................................................................... 45 Inbound Flow of a Transaction with Oracle e-Commerce Gateway45

Oracle Purchasing’s integration with e-commerce Gateway................ 46

Page 4: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 4

Setup steps ................................................................................................... 46 Setup Profile Options ............................................................................ 47 Purchasing Options Setup .................................................................... 47 Set Up Trading Partners........................................................................ 47

Business Views ............................................................................................ 51 Columns Updated Upon Extraction ................................................... 51

Sample Output ............................................................................................ 52

Page 5: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 5

Article On Purchasing Communication Methods

INTRODUCTION

In business world, communication of documents between legal entities is crucial. They play an important role in driving the business. Oracle Advanced Procurement Suite of Applications supports variety of communication methods starting traditional Postal mails to the recent PDF document communicated through Email and automatic communication of documents through XML and EDI. This document explains the different types of communication methods supported in Oracle Advanced Procurement Suite of Applications and steps to set them up and salient features of them. Print Fax Email XML EDI

1.0 PRINT

This is one of the traditional communication methods. The legal documents

[Purchase orders and Purchase agreements] are printed on pre-printed stationeries

and sent to suppliers though normal postal service.

Choosing the format of document for communication

In Setup/Organizations/Purchasing options, there is an option to choose between

whether the communication should happen in text format or in PDF format.

Choosing this option will determine in which format document will be generated.

We will review more about this option in later sections.

Text Format

The Printed Purchase Order report [Landscape and Portrait] generates the

document in text format. The document is printed on a printer setup in the system.

The document can be printed on pre-printed stationeries, which has the company

logo and other required legal declarations [like confidential etc]. To support this the

report output we will not hard code any headings/labels.

Page 6: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 6

PDF

PDF is the new communication functionality for Oracle Purchasing in 11i10. By

choosing this, the document generated for communication will be of PDF format

rather than text format. PDF output will be used in following communication

methods: Print, Fax and email. We will discuss more about this option in later

sections.

Setting up

Minimum steps for printing are:

• Setup the Printer

This is explained in depth in system administrator’s guide. Please refer

Printers Section in System Administrator’s Guide - ConIguration document.

• Get pre-printed stationeries

To give a special touch up to the legal document, get a pre-printed stationary

with company logo on Top-Left corner and with labels and legal declarations.

Since the report is always printed in ‘Ever green format’, these pre-printed

stationeries can be used to print out the documents.

• Run Printed Purchase Order by feeding the above pre-printed stationeries.

Here are some important parameters and their impact on report output.

Report parameters

Print Selection

This parameter determines what type of documents needs to be printed.

This parameter can have the following values: New, Changed, All.

New: Print only the new documents, which are never been communicated.

Changed: Print only Changed documents that have been communicated at

least once in the past.

All: Print all the documents.

Purchase Order Numbers From/To

Provide the range of document Numbers to Print.

Release Numbers From/To

Provide the range of Release Numbers to Print

Release Dates From/To

Provide the range of release dates to print. This is applicable only for

Releases.

Approved

Whether to Print the Approved documents or all documents.

Test

Page 7: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 7

Indicate whether the document is actually being printed for sending it to

the supplier or is just being printed for internal verification. If it is passed

as Yes, then we also print a text “This is a test copy of the document”.

Print Releases Option

When printing Blanket Agreements buyer can use this option to specify

whether to print the corresponding releases also or not.

Sort By

Specifies the order in which the documents should be printed

Dynamic Precision Option

Since the quantities does not have any default rounding mechanism

Printed PO report uses this argument to find out the precision to which

the quantities needs to be rounded. Most of the purchasing reports use

this argument.

Fax Enabled / Fax Number

This parameter determines whether it is a Print Request or a fax request. If

it is a fax request, then the fax number should also be specified. Please

refer the Fax communication method section for more information.

Launching Printed PO report from Approval

For any supplier/supplier site, buyer can setup default communication method.

This option is available in the Suppliers � supplier site screen. Here we can choose

the defaults between the traditional communication methods; Print, Fax and e-Mail.

The advanced communication methods like EDI and XML needs separate setup

like trading partners. Hence in this screen they are not available for defaulting

purpose.

If the advanced communication methods like EDI and XML are setup, then they

take the precedence over the traditional communication methods like Print, Fax

and e-Mail.

Supplier site window with Print as communication method:

Page 8: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 8

If the supplier site ‘Default communication method’ is choose as Print then the

buyer can optionally choose to Print the document at the end of approval process.

This option is available in the Approval submission window.

Approval window choosing print:

Page 9: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 9

Printed Purchase Order report output

2.0 FAX

Next traditional method we are going to see is facsimiles. Oracle Purchasing

supports facsimile transmission of Purchasing Documents in text as well as in PDF

format. For documents text format, purchasing uses the Printed PO report as base.

For PDF communication, the PDF document is used as base.

How it works?

Text Format

The fax server is configured as a printer in application. Buyer will choose this fax

server (printer) while submitting the fax request.

To fax, the buyer submits the Printed PO report with Fax parameter as ‘Yes’. In

addition the fax number is also provided as parameter. The report prints the

document wrapping inside the Fax Control codes. The report output is directed to

the fax server (printer).

Fax server interprets the control codes and starts transmission when it encounters

the Start control codes. The transmission is terminated when the fax server

encounters the end control codes.

Page 10: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 10

PDF Format

The fax should be capable of transmitting the PDF documents. The server is

configured to listen to a directory in the system in Oracle applications network.

Whenever a new control file is generated in this directory, fax server will pick up

the control file and transmit the document to the specified location.

To fax the document, the buyer will submit the request ‘PO Output for

Communication’ with Fax as parameter. This program generates the PDF

document and also generates a control codes file. The control codes file will be

placed in the directory specified in the profile option ‘PO: Fax Output Directory

for the PO Document’

Since the fax server is configured to listen to this directory, once the control file is

generated the fax server will transmit the document.

Sample Output

Output when the format is text.

Page 11: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 11

Output when the format is PDF

Fax codes control file

{{BEGIN}} {{FAX 408524-7661}} {{ATTACH /conclog/log/unclass/lv115dyp/out/o2763510.out}}

<Attach the PDF document>

{{END}}

Setup steps

Page 12: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 12

Select the communication method as ‘Fax’ for supplier site

Faxing at the end of approval

At the end of approval process, buyer can optionally choose to fax the document.

This option is available in the Approval window. Buyer needs to check the fax

check box and to fill up the fax number. Then at the end of approval process

depending on the document format chosen, corresponding output will be generated

and faxed to the suppliers automatically.

3.0 EMAIL

Next communication method is email. Emailing the Purchasing documents is an

easy to use, cheaper and reliable communication method. Oracle Purchasing

supports emailing purchasing documents to suppliers

How it works?

Oracle Purchasing leverages the Oracle Workflow’s capabilities to email the

Purchasing Documents. Oracle Workflow provides a facility to email the

notifications to the specified workflow user. Purchasing uses this concept to send

the Purchasing documents to the suppliers. The document can be sent in HTML or

in the PDF format.

Features of Oracle Workflow

Oracle Workflow delivers a complete workflow management system that supports

business process based integration. Its technology enables modeling, automation,

and continuous improvement of business processes, routing information of any

type according to user–defined business rules.

Oracle Workflow sends a notification to a workflow role when the Workflow

Engine executes a notification activity in a workflow process. The notification

Page 13: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 13

activity may designate the role as being responsible for performing some human

action or may simply relay process–related information to the role. To successfully

deliver a notification to a role, the role must be defined in the Oracle Workflow

directory service.

The notification can be delivered to the persons email inbox if the notification

preference is set to ’Plain text mail’, ’HTML mail with attachments’, ’HTML mail’,

or ’Plain text mail with attachments’ in the User Preferences web page. Also the

notification mailer should be setup and running.

Documents can be added to notifications using the document type attributes. The

document type attributes can call plsql functions to get varchar2, clob or blob

object as return. This object is embedded to the notification.

Please refer the Workflow Developer’s Guide for more information.

HTML format

If the document output format in purchasing options is chosen as Text, then

purchasing emails the documents in HTML format. The document is constructed

by three document type attributes.

These three attributes are appended to construct a dynamic HTML notification.

This HTML notification is then sent to the supplier.

The Po_Email_Header attribute constructs the header information of the

document. The Po_Email_Body attribute constructs the line information of the

document. The Po_Terms_Conditions attribute collects the Terms and Conditions

from the text file placed in the specific location.

Working Principle

Oracle Workflow sends notifications only to a valid workflow user (role). So Oracle

Purchasing uses the following logic to send the notification to the supplier eMail

address.

Po_Email_Header 'PLSQL:

PO_EMAIL_GENERATE.GENERATE_HEADER/'||

To_Char (Documentid) || ':' || Documenttypecode

Po_Email_Body 'PLSQLCLOB:

PO_EMAIL_GENERATE.GENERATE_HTML/'||

To_Char (Documentid) || ':' || Documenttypecode

Po_Terms_Condition

s

'PLSQLCLOB:

PO_EMAIL_GENERATE.GENERATE_TERMS/'||

L_Itemtype || ':' || L_Itemkey

Page 14: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 14

• Collect the email address of the supplier from the supplier site or from the

buyer on submission of approval.

• During approval, purchasing creates an adHocRole in the workflow directory

services with name as eMailAddressOftheSupplier”||Language. The

language is the supplier language, which is specified in the supplier site

screen. This adHocRole is created using the directory services APIs. This is

done in the activity Po_Reqapproval_Init1.Email_Doc_Yes_No.

• This adHocRole will be having notification preference set to HTML Mail.

Hence any notifications sent to this adHocRole will reach the Supplier email

Address.

• After approval a notification is added. This notification is constructed using

the above attributes mentioned. The performer of the notification is chosen

as the adHocRole just created.

• When the workflow engine encounters the above notification, the message is

generated and handed over to workflow mailer to send the document to the

supplier email address.

PDF format

In Purchasing Options if PDF format is selected then the PDF output is generated

and this PDF document is selected in to a document type of attribute

[PDF_ATTACHMENT]. This attribute is then attached to the notification. Hence

when the mail is sent, the attribute PDF_ATTACHMENT content (which is pdf

document) is also sent to the supplier. Otherwise the working principle remains

same.

Setup steps

Supplier Site

While creating the Supplier site, make sure to provide the correct language of the

supplier site. Choose the default communication method as Email and provide the

default email address to use in the E-mail field.

Page 15: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 15

Set the Profile Options

Now we need to set few profile options to complete the Email PO setup.

Navigate to: Sysadmin=>Profiles=>System

Set the profile option PO: Secondary Email address to a generic Email address

([email protected]) to which also the purchase order will be sent.

This back up Email can be used for internal reference or to forward to supplier in

case if it is missed some how.

Set the PO: In File Path profile option to a UNIX directory in which the terms

and conditions file will be placed. Make sure that the directory required

permissions.

Login to Unix and place the terms and conditions in the above-mentioned

directory.

Set the PO: Terms and Conditions filename option to a valid file name.

When the Mail is sent the above file will be attached to the Email. First the system

will search for file named FileName_<SupplierLang>. If it is not found then it will

search for file named FileName_<BaseLang>. If that is also not found then it will

search for file named FileName.

Create and Approve PO

The buyer can optionally choose to email the Purchase order at the end of approval

process. This option is available in the Approval window. If the Email option is

chosen then at the end of approval process a notification will be generated for the

supplier. This notification will be emailed to the supplier email address specified in

the approval window.

While sending the document, the general Terms and Conditions also added form

the location mentioned in the above profile options.

Page 16: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 16

What happens in Approval?

When the PO is submitted for Approval, the Approval workflow process is

triggered from with the Email Notification Option and the Email Address entered

in the Purchase Order Approval Window. Normal approval flow happens. At the

end of the approval, the document is sent to the supplier as Email. During the

approval the data is stored in the workflow tables.

Area Of Interest Object Of Interest

Workflow File poxwfpoa.wft

Workflow Process Email_Doc_Process And

Email_Doc_Process_Co

Workflow Attributes Email_Document, Email_Address,

Po_Email_Header, Po_Email_Body,

Po_Terms_Conditions,

Po_Wf_Email_Performer,

Email_Add_From_Profile

Procedures Of Interest Po_Reqapproval_Init1.Email_Doc_Yes_No

And Package Email_Po_Generate

At the time of starting of the workflow, the Email address entered in the approval

window is populated in to the workflow attribute EMAIL_ADDRESS.

In addition to the supplier address, the document also can be copied to an internal

Email address. The profile option ‘PO: Secondary Email Address’ holds the

secondary email address to which the document will be sent. This is used as a

Page 17: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 17

backup copy. Incase if the supplier does not receive the original copy of the Email,

then the secondary copy can be forwarded to them.

Sample Purchase Order Emails

Standard Purchase Order: For Your Review - Standard PO 3510,

Important Queries for Email Purchase Orders

Script to check the workflow status and po_wf_debug data.

Get the Item Type and Item Key from the po_headers_all table. SELECT wf_item_type, wf_item_key FROM po_headers WHERE segment1 = ‘&PO_Number’;

Run the wfstat from $FND_TOP/sql using the above Item_Type and Item_key

@wfstat.sql POAPPRV <ITEM_KEY>. Spool the output for reference.

Run the following SQL to get the po_wf_debug

SELECT debug_message FROM po_wf_debug WHERE itemtype = ‘POAPPRV’ and itemkey = ‘&ItemKey’ ORDER BY execution_sequence;

To check the AdHocUser Setup.

Get the AdHocUserName from the wfstat output in the User Column for

EMAIL_PO_NOTIFICATION activity.

… 22-AUG-03 22:59:52 EMAIL_DOC_PROCESS/EMAIL_PO_NOTIFICATION COMPLETE #NULL HYDERABAD2252 40455 O …

Page 18: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 18

In the above HYDERABAD2252 is AdHocUser name and 40455 is Email

notification id.

Run the following SQL to check the AdHocUser setup

SELECT * FROM wf_users WHERE name = ‘&UserName’;

To check the Mail status

Run the following SQL to verify the notification status. This should be ‘SENT’ and

not ‘FAIL’. If it is ‘OPEN’, it means the notification mailer is not yet sent the mail.

SELECT status, mail_status FROM wf_notifications WHERE notification_id = &NotificationId

To Verify the Mail content from sqlplus

Run the bde_wf_notif.sql with the Email Purchase Order Notification id to verify

the Email content in the sqlplus.

R12 feature to support communication of nontext attachments through

email:

The Enter PO form supports various types of attachments (excel sheet, pdf files,

MS document etc) to be used along with the PO. The current PO PDF 11.5.10

functionality, however, allows only for text attachments (both short text and long

text) at the header, line and shipment levels when the PO Communicate option is

used for printing, faxing or emailing. This functionality is extended to support the

other types of attachments that are already supported in the Enter PO form.

View Attachments in PDF PO

The PDF PO can be accessed from the following forms: Enter PO, Enter Releases,

PO Summary, and Approval Notification. This pdf would display the names of the

attachments according to the level they reference. All HTML files and web pages

will appear as hyperlinks. When the user clicks on one of these hyperlinks, a new

window should open with the attachment. All other types of attachments would be

classified as type “File”. Their contents cannot be viewed directly from the

purchase order.

Page 19: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 19

Communicate Attachments via Email

When communicating purchase orders via email, it should be possible to

communicate the “File” type attachments. All “File” type attachments would be

zipped into a single zip file. By default this zip file will be named ‘Attachments.zip’.

The filename for the compressed file can be changed by the user in the Purchasing

Options page. The maximum size of the zip file would be defined as “Maximum

Attachment Size” under the Document Control section of Purchasing Options.

If the zip file is below the maximum allowable size, then it would be e-mailed along

with the pdf PO. Otherwise, the PO would be e-mailed without the attachment and

workflow mailer would send a notification to both buyer and supplier to alert them

of the fact that attachments could not be communicated.

The snapshot below shows the new fields “Maximum Attachment Size” (in MB)

and 'Email Attachment Filename' in the “Purchasing Options” page.

4.0 PDF – IN DEPTH

The above-mentioned communication methods can happen in the form of Text or

in the form of PDF. The text format of output enforces a fixed layout. This is a

major restriction as some customers might have some special attributes that need to

be communicated to the suppliers. So they end up in customizing the reports.

Oracle Purchasing provides a new flexibility to the customer by separating the data

layer from the presentation layer.

Before we get in to the complete PDF flow, let us re-collect some important

concepts.

What is XML?

XML (Extensible Markup Language) is a standard for creating markup languages,

which describe the structure of data. It is not a fixed set of elements like

Page 20: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 20

HTML, but rather, it is like SGML (Standard Generalized Markup Language) in

that it is a meta language, or a language for describing languages.

XML enables authors to define their own tags. XML is a formal specification of the

World Wide Web Consortium.

Please refer http://www.w3schools.com/xml/ for more information on XML

What is XSL?

XSL stands for Extensible Style sheet Language.XSL describes how the XML

document should be displayed.

XSL consists of three parts:

XSLT - a language for transforming XML documents

XPath - a language for navigating in XML documents

XSL-FO - a language for formatting XML documents

XSLT = XSL Transformations

XSLT is the most important part of XSL.XSLT is used to transform an XML

document into another XML document, or another type of document that is

recognized by a browser, like HTML and XHTML. Normally XSLT does this by

transforming each XML element into an (X)HTML element. With XSLT you can

add/remove elements and attributes to or from the output file. You can also

rearrange and sort elements, perform tests and make decisions about which

elements to hide and display, and a lot more. A common way to describe the

transformation process is to say that XSLT transforms an XML source-tree into an

XML result-tree.

XSLT Uses XPath:

XSLT uses XPath to find information in an XML document. XPath is used to

navigate through elements and attributes in XML documents. In the transformation

process, XSLT uses XPath to define parts of the source document that should

match one or more predefined templates. When a match is found, XSLT will

transform the matching part of the source document into the result document.

XSL-FO:

XSL-FO stands for Extensible Style sheet Language Formatting Objects.XSL-FO is

an XML-based markup language describing the formatting of XML data for output

to screen, paper or other media. XSL-FO documents are XML files with output

information. They contain information about the output layout and output

contents. XSL-FO documents are stored in files with a .fo or a .fob file extension.

Page 21: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 21

It is also quite common to see XSL-FO documents stored with an .xml extension,

because this makes them more accessible to XML editors.

XML Publisher

Oracle XML Publisher is a new java based product available within the technology

stack of the E-Business suite. Utilizing a set of familiar desktop tools such as

Adobe Acrobat and Microsoft Word users can create and maintain their own report

formats based on development delivered xml data extracts. XML Publisher will

then convert these documents to the XSL-FO format. Users can also obtain 3rd

party provided PDF forms e.g. government tax forms and merge xml data

generated from the E-Business Suite to fill the forms with the required data.

Please refer http://xdo.us.oracle.com/ for more information

Advantages of PDF over Text format

Buyers can customize the document layout as per their business needs to include:

• Company logo image

• Standard legal disclaimers

Page 22: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 22

• Important DFF information

Buyers can communicate the contract terms attached to the purchasing document.

Just changing the layout without changing the code can do all this. Also PDF

document gives a professional appearance. Since the data and presentation layers

are separated, customization of the lay out (XSL-FO) is simple and easy. There are

many UI tools that assist in customizing the templates.

Buyers will be able to view the Purchasing documents online through View �

Documents before communicating to the supplier. Also the same PDF format will

be accessible through iSupplier Portal too.

Please note that at this point, Oracle Purchasing does not support the Planned Purchase order and

Scheduled Release documents in PDF format.

Prereq for PDF Document Generation

The pdf document is generated by the XML Publisher APIs. Hence the XML

Publisher should be installed to generate the pdf documents. Also to use Contracts

Terms in purchasing documents, Procurement Contracts should be installed.

Overview of the PDF document generation solution

The following flow depicts the flow for generating PDF purchasing documents.

The PO communication API receives the communication request from different

modules within Purchase applications: Sourcing, iSupplier and Core Purchasing. To

fulfill the request the communication API must:

Generate the XML PO meta-data

Store style sheets (xsl-fo) or pdf templates in the template repository. Associate the

stylesheets/PDF Templates in the template repository to PO Document Types.

Make use of the above association to apply the preferred style sheet to the XML at

run time.

Invoke the XMLPublisher provided API's to generate the pdf documment based

on the XML/XSL-FO or XML/PDF templates combinations.

Store the PDF document generated as attachments to the PO and in the Contracts

repository. Retrieve the stored PDF documents for online

preview/Print/Email/Fax operations.

Page 23: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 23

XML Generation

To generate the PDF, the data is collected in the form of XML. For purchasing

documents we might need two different XML documents; One XML for

purchasing document and another XML for the contract terms document

The procedure PO_COMMUNICATION_PVT.POXMLGEN generates the xml

content. It uses DBMS_XMLGEN utility to generate the xml. For 8i database it

uses DBMS_XMLQUERY utility. To avoid the compilation issues, the complete

block is constructed and executed as a dynamic block.

The following business views are used to get the xml data. The XML is merely a

select * from these views: po_headers_xml, po_lines_xml, po_line_locations_xml,

po_distribution_xml, po_headers_archive_xml, po_lines_archive_xml,

po_line_locations_archive_xml, po_distribution_archive_xml.

Depending on which revision to communicate, either the main tables or the archive

tables are used to construct the XML data.

XSL Style Sheets

Oracle purchasing seeds standard style sheets with frequently used layout. The

following are the seeded style sheets.

• Standard Purchase Order Style sheet

Page 24: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 24

• Blanket Agreement Style sheet

• Contract Agreement Style sheet

• Blanket Release Style sheet

In addition to the XSL style sheets, purchasing also supports PDF templates. These

PDF templates can be easily created using the Acrobat Writer.

Generate Documents API

The following are the important class variables and their purpose.

m_documentId //represents document id (po_header_id or po_release_id)

m_documentType

m_languageCode

m_revisionNum

m_documentSubtype //if required

m_orgId

m_authorizationStatus

m_withTerms // “Y”,”N”,”C”

m_storeFlag // “Y”, “N”.”Y” indicates that PDF document needs to be stored in

the repository

m_PDF // has the generated pdf as a BLOB/Stream based on XMLPublisher

API’s

m_POXML // PO data as a CLOB

m_POXSL // this will have the po stylesheet in the form of BLOB/Stream based

on Template Repository API’s

m_POHasTermsConditions //indicates whether the po has Terms and Conditions

m_POIsSigned //indicates whether the po has been signed atleast once or not

m_archiveOn // print or communicate

m_amendmentProfile

m_viewOrCommunicate //view or Communicate

m_documentTemplateType //XSLFO or TEMPLATE (pdf template)

m_contractsXML

m_contractsXSL

m_fileName

m_documentTemplateID

Page 25: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 25

m_connection

m_testFlag

m_regenFlag

Constructors

GenerateDocument (documentId, RevisionNum, documentType,

documentSubType, orgId, AuthorizationStatus, languageCode, withTerms,

storeFlag, viewOrCommunicate, conn)

GenerateDocument (documentId, RevisionNum, documentType,

documentSubType, orgId, AuthorizationStatus, languageCode, withTerms,

storeFlag, viewOrCommunicate, testFlag, conn)

GenerateDocument (documentId, RevisionNum, documentType,

documentSubType, orgId, AuthorizationStatus, languageCode, withTerms,

storeFlag, viewOrCommunicate, regenFlag, conn)

Methods

GetDocument () //which checks in the repository whether the pdf file exists or

not

GetPOXML () //generates the XML for the given document

GetPOXSL () //retrieves the document template/type from the template

repository

GetContractXML () //get the Contract XML

GetContractXSL () //retrieve the contract template from the template repository

GenDoc () //generates the pdf document and returns a BLOB

Generate PDF Document (genDoc)

Generate documents API uses the below logic to determine whether to generate

the PO or to retrieve the PO from the DB. Also this determines whether to or not

to store the generated pdf document in the database.

Page 26: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 26

Page 27: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 27

XDO API’s

After generating the XML data and retrieving the XSL from the database Generate

Documents API calls the XDO APIs to generate the PDF document. This API

takes the XML and XSL as parameters and generates the pdf. Below is the

systematic flow of pdf generation when the document and contracts layout is a style

sheet.

If the document and contract uses different types of layout (style sheet, pdf

template), the generate pdf follows the below logic to generate the pdf document.

Setup Steps

Purchasing Options

In the Setup->Purchasing options screen choose PDF value for the ‘PO Output

format’ field. This value is used to determine the format in which the document

needs to be communicated.

Page 28: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 28

Select the Style sheets

For each document type, buyers can choose the layout in which the pdf would be

generated. The layout can be selected for the document as well as for the contract

terms. The layout can be a seeded or a customized one. These layouts are stored in

the XML Publisher repository.

Navigate to Setup->Purchasing->Document Types and associate the style sheets as

shown below:

Triggering Points of PDF generation

The pdf document generation can be initiated from the following points. The

generated documents are used to communicate the supplier/approver and to

buyers. Depending on the triggering point the generated document could contain

different contents.

The generated PDF document is marked as DRAFT if the document is in one of

the following conditions:

• Document status is Incomplete or requires re-approval

• Document status is Pre-Approved because of pending approval

• Document status is In-Process because approval is not complete

If document is pre-approved, the internal flag requires_signature is checked, and acceptance

required is document and signature (binding design), the draft word doesn’t apply. In this situation

the document is pending signature and the supplier shouldn’t see the word draft.

Following are the triggering points of PDF generation: • Enter Purchase Order form � Inquire � View Document

• Enter Releases Order form � Inquire � View Document

• Purchase Order summary form � Inquire � View Document

• Tools->Communicate from PO Summary form

Page 29: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 29

• Approval of the PO or Release

During the approval process three pdfs will be generated. The PO document will

be stored in the fnd repository as an attachment to the PO or Release header and

the contracts document will be stored in the contracts repository.

PDF with T’s & C’s in Buyers Language

PDF without T’s &C’s in Buyers Language

PDF without T’s &C’s in Suppliers Language

Sample outputs

Here is a sample output of the pdf document with contract terms. First page of the

document is the cover page. This page is generated separately and added to the

main document. The next section is the document details. The next section is the

contract terms and conditions. The last page contains space for signature of the

buyer and the supplier for legal purpose.

Page 30: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 30

Page 31: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 31

Page 32: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 32

Page 33: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 33

Communication on demand

In addition to the normal communication methods a new option is added in the

Purchase Order summary form. Using Tools� Communicate option the buyers

can communicate the purchasing documents to the suppliers on need basis. This

option supports all communication methods.

Page 34: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 34

Also optionally the buyers can choose the language of communication as well

decide whether to communicate the terms and conditions or not.

Page 35: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 35

PO Output for Communication Concurrent Program

The concurrent Program PO Output for Communication is designed to generate

the PDF documents. This program allows printing a range of purchasing

documents in one request. Following is the request submission screen. The

arguments are self-explanatory.

One important argument to note is the ‘Test’ flag. This can be Yes, No or Debug.

The values Yes and No has the same meaning as the Printed Purchase Order

report. If the value for this flag is passed as Debug, then the XML and XSL

contents are printed in the log file. Also the XML Publisher APIs are not called.

This option is very useful to debug any issues with this program. This can be used

Page 36: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 36

to separate the issues between purchasing, Procurement Contracts and XML

Publisher.

Customizing Style sheet

As we saw already the style sheets are maintained in the XML Publisher repository.

If the customer has any need to customize the style sheet, they can navigate to the

XML Publisher Administrator responsibility. There they can query for any existing

style sheets.

But important point to note is, the customer cannot customize the seeded style

sheets. They need to make a copy of the seeded style sheet and then customize it as

per their requirement.

Duplicate a style sheet.

Page 37: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 37

After duplicate the style sheet, they can download the same from XML Publisher.

Then the customer can make the required modifications to this downloaded style

sheet. Once the modifications are done, they can upload the style sheet again to

XML Publisher.

Now click on ‘Update’ to update the template file with throne you have modified

Now the modified style sheet should be selected in the Document Types form.

Incase if there is any issues with the customized style sheet, the customer can test

the PDF generation using the seeded style sheet. This will help them in identifying

whether issue is with the style sheet or with the code.

5.0 XML

XML is one of the automatic methods of communication used by Purchasing to

send the Purchase orders to the suppliers. This communication method leverages

Business Events Feature of Oracle workflow for communication.

Page 38: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 38

Business Events

The Oracle Workflow Business Event System is an application service that

leverages the Oracle Advanced Queuing (AQ) infrastructure to communicate

business events between systems. The Business Event System consists of the Event

Manager and workflow process event activities.

The Event Manager contains a registry of business events, systems, named

communication agents within those systems, and subscriptions indicating that an

event is significant to a particular system. Events can be raised locally or received

from an external system or the local system through AQ. When a local event

occurs, the subscribing code is executed in the same transaction as the code that

raised the event, unless the subscriptions are deferred.

Subscriptions can include the following types of processing:

• Executing custom code on the event information

• Sending event information to a workflow process

• Sending event information to other queues or systems

You can set up subscriptions, which cause messages to be sent from one system to

another when business events occur. In this way, you can use the Event Manager to

implement point–to–point messaging integration.

Oracle XML Gateway

Oracle XML Gateway integrates with the Oracle E-Business Suite to create or

consume XML messages based on application business events. Oracle XML

Gateway creates or consumes standards compliant XML messages without the use

of a translator. Oracle XML Gateway provides a common, standards-based

approach for XML integration between the Oracle E-Business Suite and third party

applications, both inside and outside of your enterprise.

Please refer the below link for more info:

http://www.oracle.com/technology/products/applications/XML_EDI_Gateways

/index.html

Oracle Purchasing integrates with Oracle XML Gateway to generate an XML

document. XML Gateway generates XML document based on the following:

• PO document data in Oracle Applications

• Document type definitions (DTDs) stored in Oracle Applications

• Setup in XML Gateway including optional data mapping

Page 39: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 39

XML Gateway does not support all the document types. XML Gateway supports

only the following purchasing documents.

How it works

• When a purchasing document is approved, approval workflow raises a

business event ‘Raise Set XML’ with the po_header_id/po_release_id. This

event is enqueued to the AQ used by workflow event manager.

• The workflow even manager dequeues the AQ for events and looks out for

the subscriptions. In this case the POXML workflow is subscribed to this

event. This workflow receives the event with document header id and does

the necessary checks to ensure that XML is chosen in the PO approval

window and the trading partner is setup and then raises an event ‘Raise XML

Poevent’

Page 40: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 40

• The Event is received by the below process and generates the XML

document. Additionally, XML Gateway provides optional data mapping that

enables the buyer to convert certain data in the XML document before

transmitting it to the supplier.

XML Gateway then passes the generated XML document to an AQ to be picked

up by the Oracle Transport Agent.

• OTA offers a message transport layer between two systems (in this case

buyer and supplier). The key benefit is guaranteed, exactly one-time delivery

of message over HTTP (S), when both systems are using OTA.

This is how it works: OTA in the buyer’s Oracle Applications system picks

up the XML document from the outbound AQ where the XML Gateway

placed it. When OTA in the buyer’s system communicates with the transport

layer in the supplier’s system, the XML document is sent to the supplier’s

Page 41: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 41

system over the Internet. The security of the document when transmitted

depends on whether an HTTP or HTTPS protocol is set up for transmission.

XML Gateway uses the following two models to send the XML documents

to the supplier

• Model1: XML documents are sent to the supplier by the way of the

Oracle Exchange

• Model2: XML documents are sent to the supplier directly.

Setup steps for Model2

Setup by Buyer in Oracle XML Gateway

The setup for Oracle XML Gateway by the buyer includes entering data in the

Trading Partner Setup window. Select the XML Gateway responsibility.

Trading Partners Setup Window

The Trading Partner Setup window is used to enable messages to be processed

through the XML Gateway engine for the trading partner (in this case supplier site).

During message processing by Oracle XML Gateway, trading partner setup data is

used to:

Link a particular address location in Oracle Applications to the trading partner

definition in XML Gateway.

Provide a means of telling the execution engine which trading partner message map

to use.

Enable specific transactions for trading partner and mode of delivery.

Page 42: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 42

Details Information - Trading Partner Setup Window

In the Trading Partner Details region, enter information for the New PO document

as follows

Transaction Type

It is the standard product short code for the base Oracle Application. Type PO

is for Purchasing, and subtype PRO is for Process PO (i.e. a new purchasing

document). For change order transmission POCO subtype should be selected. The

last letter of the subtype signifies the direction of messaging.

Standard Code

This code represents the XML format to be used. Oracle supports most widely

accepted OAG standard. This is best suited for any B2B applications

communication.

Note: The Open Applications Group, Inc. (OAGi) is a not-for-profit open

standards group building process-based XML standards for both B2B and A2A

integration. The Open Applications Group was formed in late 1994 as the first post-

EDI organization focusing on improving the state of application integration.

Website: http://www.openapplications.org/

External Transaction Type

External Transaction Type and subtype are the primary external identifier for the

XML message. For new purchasing document, text ‘SOP’ is used.

Direction

This code identifies the direction of the transaction. The value IN identifies an

inbound message, and the value OUT identifies an outbound message. The value

displayed is OUT.

Map

This is the name of the map created using the XML Gateway Message Designer.

Select PROCESS_PO_007 from the LOV. (Although you can customize this map,

Oracle does not support the customizations.)

Connection/Hub

This option is used to select whether it is a direct communication to the supplier

site or through a hub like Oracle Exchange. If it is DIRECT communication

Page 43: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 43

method, then the following details must be furnished: Protocol, Address where the

xml document should be posted by the Transport Agent and the

username/password for authentication in the destination server.

Set Up System Administrator Profile Options for XML Gateway

ECX: Log File Path

This is used to define the XML Message and Process Log Directory. This directory

should be listed as one of the utl_file_dir. Also make sure that the directory has

correct permission settings.

ECX: System Administrator Email Address

This is used to identify the XML Gateway system administrator or contact person

e–mail address to notify when a system or process error is detected.

ECX_OAG_LOGICALID

This is used by the sending application to enter the Identifier in the XML message.

Setup on Supplier’s System

The supplier company needs to perform all necessary setup to enable the supplier’s

system to receive the XML documents transmitted by the buyer directly. The

supplier should use the same OAGI standard XML documents used by the buyer

company. In addition, the supplier needs to use the same Extensions DTD as used

by the buyer company to ensure all information transmitted by the buyer is

received. The Extensions DTD specifies fields used by Oracle to provide additional

information.

Process submission by the buyer

Create a PO and approve it

On submission the XML flag will be checked automatically. During approval based

on the xml_flag in the approval window, the xml flag is updated on the headers

Page 44: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 44

table. Later in approval, this flag is used to check whether to send the document in

xml gateway or not.

6.0 EDI

Introduction

Electronic Data Interchange (EDI) is the computer-to-computer exchange of

structured information, by

agreed message standards, from one computer application to another by electronic

means and with a minimum of human intervention eliminating paper work. In

common usage, EDI is understood to mean specific interchange methods agreed

upon by national or international standards bodies for the transfer of business

transaction data, with one typical application being the automated purchase of

goods and services.

Oracle e -Commerce Gateway

Oracle e-Commerce Gateway provides a common, standards-based approach for

EDI integration between the Oracle E-Business Suite and third party applications.

Oracle e-Commerce Gateway integrates with the Oracle E-Business Suite to extract

or import ASCII flat files. A third party EDI Translator is required to map the flat

Page 45: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 45

file data between the Oracle E-Business Suite and the EDI standard of choice such

as ASC X12 or EDIFACT.

How it works?

Oracle e-Commerce Gateway collects all of the business data needed to map to a

standard EDI transaction, which the receiving Trading Partner can interpret

properly into their receiving application using their equivalent of Oracle e-

Commerce Gateway/Translator setup.

Oracle e-Commerce Gateway extracts outbound transaction data from application

tables and loads inbound transactions into the base Oracle Application Open

Interface tables.

Outbound Flow of a Transaction with Oracle e-Commerce Gateway

During outbound flow the document first recorded in the Oracle system. Then the e-Commerce Gateway collects the data and generates in to a flat file in Oracle standard format. Then a third party translator converts the flat file in to ASCII standard format. This file is then transmitted to the supplier site by conventional means.

Inbound Flow of a Transaction with Oracle e-Commerce Gateway

During inbound flow, the oracle host system administrator receives the flat file (in

ASCII format) from the trading partners. The EDI Translator converts this flat file

in to oracle standard format. Oracle e-Commerce Gateway processes flat file and

populates the business data into the open interface tables of Oracle Applications.

Page 46: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 46

Oracle Purchasing’s integration with e-commerce Gateway

Oracle Purchasing uses the e-Commerce Gateway to communicate the documents

to the suppliers and to record the acceptances. The following purchasing

transactions are supported by e-Commerce Gateway.

The following table lists the transactions that integrate with Oracle Purchasing

The following purchasing documents are supported for EDI communication

• Standard PO

• Blanket PO

• Blanket Release

• Contract PO

• Planned PO

Setup steps

Here is the flow for setting up and running e-Commerce Gateway for Oracle

Purchasing.

• Set up required profile options in Purchasing and e-Commerce Gateway

• Create supplier, supplier site in Oracle Purchasing

• Set Up Trading Partners in Oracle e-commerce Gateway

Page 47: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 47

• Create a PO and approve the PO. PO approval window will have 'EDI'

communication selected by default as a result of the trading partner setup

done in step 3.

• Run the outbound concurrent program ‘OUT: Purchase Order

(850/ORDERS)’ in e-Commerce Gateway to generate the flat file.

Setup Profile Options

Navigate to e-Commerce Gateway responsibility. Setup->Profile Options.Make

sure that the following profile options are entered:

System Profile Option Description

ECE:OUT_FILE_PATH Indicates the directory to which

outbound data files are written. The

directory mentioned here should

match the utl_file_dir parameter in the

INIT.ORA file

ECE_POO_ENABLED Set this value to ‘Yes’ to enable the PO

Outbound transaction to be processed

by Oracle e-Commerce Gateway.

ECE_POCO_ENABLED To enable Change Order PO

Outbound transaction set this profile

to ‘Yes’

Purchasing Options Setup

Navigate to Oracle Purchasing responsibility. Setup->DocumentTypes.Set the

"Archive on” option to “Approve" for each document type enabled.

Note: DO NOT set the attribute to "Archive on Print." This prevents the eligible purchase orders from being extracted since they will print and archive before the extract can happen.

Set Up Trading Partners

Setting up Trading Partner involves defining a Trading Partner Group and

assigning the supplier to the trading partner and entering the transaction details for

the trading partner.

Page 48: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 48

Define Trading Partner Group

Navigate to Oracle e-commerce Gateway responsibility.

Setup�Trading Partners. Enter a new Trading Partner Group name. Select the

new button to define a Trading Partner.

Define Trading Partner – Assignment

In the Define Trading Partner window, select the Assignment tab. Associate the

supplier and supplier site to the trading partner.

Page 49: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 49

Define Trading Partner - Details

In the Define Trading Partner window, select the Details tab. select the transaction

as:

‘OUT: Purchase Order (850/ORDERS)’ for new purchasing documents and ‘’ for

changed purchasing documents. Transaction type is the document type of interest.

The Map field gets defaulted based on the transaction and transaction type if it is

already setup. This map gives the relation between business data fields and the

position of the fields in the flat file. E-Commerce gateway seeded predefined

standards.

Check the enable check box.

Define Trading Partner - Contact (Optional)

In the Define Trading Partner window, select the Contact tab. The information on

the contact tab is optional. It contains contact data for the specified trading partner.

It may be used by the EDI Coordinator for the trading partner’s EDI

Coordinator’s contact data. This data is for reference only. It is not used by Oracle

e-Commerce Gateway.

Page 50: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 50

Create and Approve the PO

Navigate to Oracle Purchasing responsibility, Enter Purchase Order’s form. Create

a purchasing document with the supplier site defined and approve the document.

Run the concurrent program

Navigate to e-commerce Gateway responsibility and View�Requests and run the

concurrent program

‘OUT: Purchase Order {850/ORDERS)’ for new documents and ‘OUT: Purchase

Order Change (860/ORDCHG)’ for changed documents.

Page 51: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 51

The concurrent program will generate the EDI flat file from the PO data and will

write the file to the directory mentioned in the profile option

‘ECE:OUT_FILE_PATH ‘.

Business Views

The outbound Purchase Order transaction is controlled by three database views

that are defined according to the Oracle Purchasing data model for purchase

orders.

ECE_POO_HEADERS_V

ECE_POO_LINES_V

ECE_POO_SHIPMENTS_V

ECE_POCO_HEADERS_V

ECE_POCO_LINES_V

ECE_POCO_SHIPMENTS_V

The ECE_POO_HEADERS_V view is used to identify which purchase orders are

eligible for extraction. The extract criteria are as follows:

• Trading partner is defined

• Transaction type enabled for the trading partner

• Purchase order has not been printed or previously extracted

• Purchase order status is Approved

• Purchase order has not been canceled

• Purchase order is not on hold

Columns Updated Upon Extraction

After the document is successfully extracted and written to flat file it will be marked

by Oracle e-Commerce Gateway to prevent it from subsequent extraction. The

following table lists the fields updated based on an excerpt of code in the

UPDATE_PO procedure defined in the ECEPOOB.pls file.

Page 52: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods Page 52

Sample Output

File POO7170.dat contains the following output.

Page 53: PO Communication Methods Whitepaper

Article On Purchasing Communication Methods

March 2008

Author: Himabindu Kuchana

Contributing Authors: Rajalingam Ramasamy

Oracle Corporation

World Headquarters

500 Oracle Parkway

Redwood Shores, CA 94065

U.S.A.

Worldwide Inquiries:

Phone: +1.650.506.7000

Fax: +1.650.506.7200

oracle.com

Copyright © 2007, Oracle. All rights reserved.

This document is provided for information purposes only and the

contents hereof are subject to change without notice.

This document is not warranted to be error-free, nor subject to any

other warranties or conditions, whether expressed orally or implied

in law, including implied warranties and conditions of merchantability

or fitness for a particular purpose. We specifically disclaim any

liability with respect to this document and no contractual obligations

are formed either directly or indirectly by this document. This document

may not be reproduced or transmitted in any form or by any means,

electronic or mechanical, for any purpose, without our prior written permission.

Oracle is a registered trademark of Oracle Corporation and/or its affiliates.

Other names may be trademarks of their respective owners.