This chapter covers the following topics:
Oracle One-to-One Fulfillment provides Oracle E-Business Suite applications with a centralized mechanism for managing fulfillment. Fulfillment is the process of compiling and distributing information to customers.
Oracle One-to-One Fulfillment consists of a set of API calls, a server, and an administration user interface called the Administration Console. The Oracle One-to-One Fulfillment API is used by the E-Business Suite applications to initiate a request for fulfillment processing. The fulfillment request identifies the agent or server, the content, and the channel. The Oracle One-to-One Fulfillment server processes the request. It compiles the personalized content and determines the recipients of email, fax, print and physical collateral.
Each business application has a unique interface for making a fulfillment request on behalf of one or more parties. Examples of outbound correspondence in E-Business Suite include:
The following terms explain some basic concepts of Oracle One-to-One Fulfillment.
Cover letter or master document: A document, sent by Oracle One-to-One Fulfillment, which typically includes merge fields that are populated by an associated SQL query.
Template: A high-level definition of one or more Oracle One-to-One Fulfillment master documents, associated queries, and any related collateral.
Merge field: Data elements in an Oracle One-to-One Fulfillment cover letter or master document that are surrounded by merge field delimiters. When a fulfillment request runs, any associated query retrieves the merge data from the table columns or views that are specified in the query. For each merge field that is used in a cover letter or master document, there must be one corresponding column name or alias in the select statement of the query to retrieve the appropriate data.
For Oracle Survey: Invitation or reminder master documents contain at least one merge field to retrieve the survey URL that the recipient must access to participate in the survey. Other merge fields that are often part of invitation and reminder master documents are contact information (title, first name and last name) for each list member, and deployment end date.
Query: A database query for information that is made in structured query language (SQL). Each Oracle One-to-One Fulfillment cover letter or master document may have an associated query. The information that the query gets is put into placeholders called merge fields resulting in the merged document. A query must have a column name or alias for each data element included as a merge field in the cover letter or master document. The query may also contain valid column names or aliases for additional data elements, whether or not the data elements are used in the cover letter or master document. For example, you can construct a single query that requests all information used to populate a survey invitation master document and a survey reminder master document, even if both documents have different merge fields. A single query can be associated with any number of cover letters or master documents. The data from a successfully executed query merges with the document.
A template is a grouping of Master Documents and Collateral. (This concept of templates exists only in Oracle One-to-One Fulfillment, not in Marketing Encyclopedia System.) Master Documents are dynamic or static documents. Dynamic content in master documents is defined by merge fields enclosed within special characters. Merge fields are tokens that are replaced by data when fulfillment requests are processed. Email and fax master documents can be HTML files or Zip files containing an HTML file plus an image file. Print master documents can be RTF or PDF files.
For RTF documents, merge fields can be entered using the Microsoft Form Field feature. In the form Field Help Text box, the merge field name should correspond to the name or alias used in the SQL query (in uppercase), and should be enclosed within the following text “<?” and “?>”, for example <?CURRENT_DATE?>.
For PDF documents, merge fields can be entered using the Form Tool feature. In the Field Properties box, the merge field Name should correspond to the name or alias used in the SQL query.
Oracle One-to-One Fulfillment Master Documents can optionally have a query associated with them. Some E-Business Suite applications, TeleService for example, require an associated query.
Collateral (known as Deliverable in Oracle Marketing Online) is a static fulfillment document that does not contain merged data. Collateral are loaded by the Marketing Online Deliverables tab, and may be of any file format, for example, doc, xls, pdf, and so on.
The cover letter (also known as content item) authoring screen allows the user to create and edit a cover letter based on the content type setup. A cover letter is the primary document that is sent to a customer by email, fax, or print and mail. The user can specify a cover letter name, description, and the folder where the cover letter is stored. The following attributes are also available for cover letters:
Body/Details - The user can enter an HTML body for the cover letter. If the content type has a query associated with it, the user is given a choice to embed the tags or merge fields into the HTML body. The user also has the option to specify a text part of the email. The text part will be read by non-html compliant email clients. Fax requests will only use the HTML part of the content.
Attachments – The user can search for file attachments from the repository, or upload an attachment from the desktop. By default the attachment is saved to the same location as the cover letter. The user has the option to specify another folder location in which user has the permission to create content.
Renditions – The Oracle One-to-One Fulfillment print solution supports printing of PDF or RTF documents. These PDF or RTF documents may contain merge fields. The user can select PDF or RTF file from the desktop and upload it as the cover letter content.
TeleService (seeded master document & query used)
Lease Management
Collateral only:
Scripting building block that calls Oracle One-to-One Fulfillment
Master Documents and Collateral
TeleSales
Templates, Master Documents and Collateral:
Survey
Collections
Cover Letters
Oracle Marketing Online
Student Systems
The following diagram illustrates the process flow of fulfillment requests made with Oracle One-to-One Fulfillment.
The calling applications provide screens or concurrent processes that enable the selection of one or more customers and documents or collateral.
The calling application calls the Oracle One-to-One Fulfillment APIs, passing in required data about the particular fulfillment request.
The Oracle One-to-One Fulfillment APIs process the request and return a request ID (or any errors) to the application. If successful, the API formats and places the request on an Advanced Queue to be picked up by the Fulfillment Server.
The Fulfillment Server monitors the Request Queue for new requests, and pulls the request from the queue.
The Fulfillment Server downloads document and collateral from MES or OCM, and sends the request to Java Mail APIs or Fax and Print enablers, or Business Intelligence Publisher for merging and then prints from Oracle Pasta.
Oracle One-to-One Fulfillment writes request details to Fulfillment History. If flagged to do so by the API, an entry is created in Interaction History is written against the party_id passed in the request.
Advanced Queuing is the message queuing functionality of the Oracle database. Advanced Queuing enables asynchronous communication between applications that use queues. A queue is a repository for messages. Queues are stored in queue tables. Each queue table is a database table and contains one or more queues.
Advanced Queuing supports native XML messages and also allows Advanced Queuing operations to be defined in the XML-based Internet-Data-Access-Presentation (IDAP) format. IDAP, an extensible message invocation protocol, is built on Internet standards, using HTTP and email protocols as the transport mechanism, and XML as the language for data presentation.
Business applications submit the fulfillment data in accordance with the Oracle One-to-One Fulfillment API procedures, which format the fulfillment request as an XML message. The API places fulfillment requests in a queue (enqueuing) and the Fulfillment Server retrieves fulfillment requests from a queue (dequeuing).
For more information about Advanced Queuing, see Oracle 10g Application Developer's Guide - Advanced Queuing.
Oracle One-to-One Fulfillment supports email bounceback processing, the process of returning email to the sending server.
For more details, see Setting Up Bounceback.
A fulfillment request is the data object that is submitted for fulfillment processing. The E-Business Suite application uses the Oracle One-to-One Fulfillment application programming interface (API) to specify the components of the content (for example, a master document from Oracle Marketing Encyclopedia System), the output channel (email, fax, or print), and the user of Fulfillment Server. The resulting data object is placed in the fulfillment request queue. The fulfillment request queue is provided by Advanced Queuing.
Each E-Business Suite application has a unique interface for making a fulfillment request on behalf of one or more parties. For information about how to initiate a fulfillment request, see the user guide or online help for the business application.
The following table briefly describes the different type of content. For a more detailed description, see the relevant section.
Fulfillment Server is a multi-threaded Java server that processes fulfillment requests by de-queuing the request from an Advanced Queue. Business applications use Fulfillment APIs to place fulfillment requests in the queue.
You can specify the time during which the server polls the fulfillment request queues in the database. It does not physically start or stop the server. If the server is running, the server will continue to process retrieved fulfillment requests even when it is not polling the database.
When a fulfillment request is processed, it creates a report in the Fulfillment history and an interaction record in Oracle Customer Interaction History. You can select which outcome reason and result you want to associate with a successful or failed fulfillment request.
The remote command script lets users interact with the Fulfillment Server without the need to maintain the original command prompt that was used to start the server. To issue a command, type the name of the remote command script and the command.
The Fulfillment Server is configured in the startup script to monitor a port for remote commands. The port is specified in both the startup script for the server and the remote command script. The remote command script runs on the same computer as the Fulfillment Server or on a computer that is on the same network as the Fulfillment Server.
When a command is sent through the remote command script, the computer that issued the command terminates activity after it receives a response to the command. To prevent unnecessary workload for the Fulfillment Server, the computer that issues the remote command retains a connection to the Fulfillment Server only for the duration of the remote command.
The Fulfillment Server compiles the content and sends the content to an output device. Output include email, fax and print.
For email fulfillment requests, Oracle One-to-One Fulfillment supports any email server that uses SMTP (Simple Mail Transfer Protocol) to transmit email messages. For fax fulfillment requests, Oracle One-to-One Fulfillment supports Captaris RightFax and Oracle Pasta printing.
One or more email servers can be associated with a Fulfillment Server.
An agent is an employee who uses Oracle software. For agent using an E-Business Suite application to initiate a Fulfillment request, create groups of Fulfillment agents in the Oracle One-to-One Fulfillment Administration Console, and then assign them to a group.
An employee must be set up as a resource using Oracle CRM Resource Manager. Each employee is assigned a resource ID to work with CRM applications. A valid resource ID is required to successfully record interactions in Customer Interaction History.
Oracle One-to-One Fulfillment tracks the outcomes of email sent by a single request or a mass request. The Status page for the batch request shows the following statistics:
Sent
Opened
Unopened
Not Sent
Malformed
Do not contact
Other failures
Bounced
Unsubscribed
Resubmitted Malformed
The Fulfillment Server dispatches the email requests to all the recipients of the email. If the Track Email feature is enabled, an invisible reference to an image on a Web server is appended to the email. When a recipient opens the email, the hidden image is downloaded.. However, the hidden image tag references a Java Server Page (JSP), which is responsible for updating the required tables with information that specifies which recipient had read the email. The JSP that handles the hidden image needs to be accessible outside the firewall.
The information that is required to decide which recipient has opened the email is present as a part of the query string in the URL. The JSP parses all the parameters from the query string and updates the database based on the request query string of the request URL. Also, the JSP is responsible for returning a substitute image instead of the one that is requested originally. The substitute image is a transparent image.
A template is a grouping of material that is useful but not required for distributing master documents and collateral. Collateral is static content.
An template is a package of content that is compiled by the Fulfillment Server. The fulfillment request identifies the template being used to compile the content.
A master document is a message sent from Oracle One-to-One Fulfillment. It is an HTML file or Zip file that contains the main content in a fulfillment item.
Examples of master documents include:
Cover letters
Service request notifications
Past due notices
Lease contracts
Sales offers
A master document can be static or dynamic. A static master document does not have merge fields, so that each recipient gets the same content. A dynamic master document uses merge fields populated by an associated SQL query to combine information from the database (such as the name of the recipient or account information) into the content, so that each recipient gets personalized content. See Queries for information about queries.
The way in which the E-Business Suite application uses a master document determines whether the master document is used as a standalone or as a part of a template. See Templates for information about templates.
A master document can be created in an HTML editor or word processing application, but it must be saved as an HTML file. It can be uploaded as an HTML file or in a ZIP file.
When editing HTML files in a word processor, remove from the HTML code any propriety information that was inserted by the word processor, otherwise the server will not process the document. For example, saving a Microsoft Word document as HTML inserts Microsoft proprietary information in the <HTML> header tag, that is, a line in the header stating,
<META NAME ="Generator" CONTENT="Microsoft Word 97>
To remove such propriety information, use a generic text editor such as Microsoft Notepad or WordPad.
Oracle Content Manager has two profile options relevant to Oracle One-to-One Fulfillment, data security and the New Content Items folder.
The data security profile option enables and disables security in Oracle Content Manager. By default this option is disabled. To enable folder permissions, do the following:
Set the security profile to Y.
Set the necessary folder permissions for users of Oracle One-to-One Fulfillment.
Oracle Content Manager stores new content items in a folder that you need to specify. If these profile options are not set, Content Items cannot be submitted properly.
The following table describes the data security profile options.
Profile Name | Category | Default Value | Comments |
---|---|---|---|
IBC: Use Access Control | Content Security | N | Data security is disabled. Any user can create, update or delete a content item. All content items created are approved immediately. If set to Y, data security is enabled. A check is made to see if the user has appropriate permissions to perform the actions. |
IBC: Default Home Folder | Content Interaction | COMMON | Specifies the folder where new content items will be created. Note: When data security is enabled, the user must have the required permission on this folder to create, update and delete items in this folder. Permissions can be granted from the Oracle Content Manager Foldering tab. |
Related Topics
Oracle Content Manager User Guide
A query is a SQL statement that extracts data from a database. A query determines:
Which records meet the defined criteria.
Which fields of those records the query will return.
The returned data is merged with a master document to create a customized email, fax, or printed mail for each recipient.
A single query can be associated with more than one master document if the merge field names used in the document match the database column names or aliases.
Use the following syntax when creating a SQL query.
SELECT <column name> <alias>,
<column name> <alias>,
<column name> <alias>,
<column name> <alias>
FROM <table name>
WHERE <column name> = :<bind variable>
When creating a query, note the following conditions:
Aliases are optional.
SQL statements typically end with a semicolon (;). However, in this case, the query engine appends the semicolon. Do NOT append a semicolon to the end of this query.
Column name aliases follow the column names and appear before the comma or the next keyword. Use aliases as substitutes in master documents for the actual column names. Aliases are not required, but can be helpful.
The table from which the columns are selected follows the FROM keyword.
The bind variable specifies which row is pulled from the table to give the actual data for each merged document. A colon in front of a bind variable makes it a global variable. This enables the query to recognize it after the value is passed from the user interface. For example:
SELECT person_last_name last_name,
party_id customer_number,
creation_date,
phone_number
FROM jtf_contact_points_v
WHERE person_first_name = :fname;
Merge fields should match exactly with the Master Document.
Creating a data source file is an optional method of saving queried data to be used in a master document. A data source file is a text file that contains tab-separated merge fields that have been obtained by a query. Use the data source file to obtain the columns available from the query so that they can be used as merged fields. This can be helpful when creating master documents. The master document must be an HTML file.
If you enter the previous sample query as the query string, then the data source utility pulls the aliases rather than the column names when it creates the data source file.
The data source utility opens a window that shows the following column headers in a plain background window.
last_name customer_number creation_date phone_number
Collateral items, called deliverables in Oracle Marketing Online, are uploaded using the administrative console for Oracle Marketing Online. You cannot upload or view Oracle Marketing Online deliverables from the Oracle One-to-One Fulfillment administrative console.
Collateral items are sent as attachments to email output. Oracle Marketing needs to upload collateral items. Collateral may be included in fulfillment requests that are created using Oracle Scripting and Oracle TeleSales.
The Status tab > History sub tab displays requests that a Fulfillment Server is currently processing or has processed, successfully or unsuccessfully. You can view the details of a fulfillment request, re-submit a fulfillment request, and delete a history entry from the history list.
To view requests by outcome, select an outcome level from the View list. The listed outcomes are defined as follows:
All: All Fulfillment requests are displayed in descending order of Request ID.
Cancelled: Fulfillment Requests that have been canceled by the administrator or by the calling application.
Failed: Fulfillment Requests that were not processed successfully. If the request contains more than one job, all jobs within the request failed.
Partially Successful: Fulfillment Requests that contain one or more jobs that could not be processed successfully, and at least one job that was successfully processed. For example, if a customer is listed as "do not contact" for the particular media channel, then a failure is logged for that job and the outcome of the request becomes "partially successful."
Stalled: Fulfillment Requests that have stalled while being processed by the Fulfillment Server. A request can stall due to many reasons, but if it is stalled because of a database connectivity issue, the server will continue to periodically try to reconnect and, if successful, it will continue to process the request. Most stalled requests are caused by the fulfillment server stopping abnormally, in this case restart the server to continue processing the request.
Successful: Fulfillment Requests that were processed successfully.
The Status sub tab provides access to the status of fulfillment requests that have been placed in the request queue, but have not yet been retrieved by the Fulfillment Server. You can view the status of a fulfillment request, cancel a fulfillment request, resubmit the request, and delete a status entry from the status list.
Each status is defined as follows:
Submitted: Fulfillment Requests that have been submitted to the Fulfillment Server for processing
Re-submitted: Fulfillment Requests that have been re-submitted for processing
In Progress: Fulfillment Requests that are currently being processed
Paused: Fulfillment requests that have been partially processed and then paused
Resumed: Fulfillment requests that were paused and subsequently resumed
Emails Sent, Writing Log: This status indicates that the server has completed sending emails for all the request lines. A separate Java thread will now process the lines for logging Interaction History.
This flow uses bulk loading of Interaction History data. The concurrent program "Interaction History Bulk Processor" needs to be run to create Interaction History data for the request lines.
APIs enable E-Business Suite applications to pass physical collateral requests. In turn, One-to-One Fulfillment integrates with Order Management to execute these requests.
One-to-One Fulfillment has an unsubscribe feature for email fulfillment requests. The email contains an embedded URL link to a Web page so that when users accesses the Web page, a validity check is performed and users have the option to unsubscribe.
The Unsubscribe option in the Fulfillment Server configuration causes the Fulfillment Server to insert a hypertext link into the content of email that will allow email recipients to modify their contact preferences.
For email requests, the outgoing email contains an embedded URL to a Web page. The URL leads to the Oracle Marketing Online Contact Preferences page, where the recipient can set contact channels. The format of the unsubscribe link is:
http://<host>:<port>/OA_HTML/<name of the jsp>?PAGE.OBJ.requestId=&PAGE.OBJ.objId=
The request_id is the numerical identifier for the fulfillment request. If the recipient elects to unsubscribe from email contact or all contact, then Oracle Marketing Online uses the request identifier to update Oracle One-to-One Fulfillment History with this information.
The party_id is the numerical identifier of the email recipient. The party_id is used when the amsContactPreferencesMain.jsp page is called to confirm that the party is valid, and that the appropriate Contact Preferences table within TCA can be modified when the customer unsubscribes. The party identifier is encrypted so that it is not visible to the email recipient. Oracle Marketing Online uses the encryption key in the JTO: Security: Merge Field Encryption Key profile option to decrypt the party identifier and enable access to the party's contact preference settings.
When the recipient accesses the Web page, the recipient can unsubscribe from email. This action is recorded in Oracle Customer Interaction History and, if email tracking is enabled, is reflected in the email statistics for the mass email fulfillment request.
To enable or disable the unsubscribe link, use the Unsubscribe box on the Email Server page for the Fulfillment Server. This option affects the email fulfillment requests that are processed by all email servers assigned to the Fulfillment Server. It cannot be set for an individual email server.
The One-to-One Fulfillment Administration Console has a Resubmit option in the Status tab > History sub tab. This options enables a request to be resubmitted by using the original data.
The One-to-One Fulfillment Administration Console provides a Resubmit option for jobs in the Jobs Details page. This options enables a job (that was sent to a single customer) to be resubmitted using the original data. The user is able to select an alternative delivery channel and contact address for the recipient.
One-to-One Fulfillment has a pause and continue function that administrators can use to pause an in-progress batch request, and later resume processing the request. This function is available in the Request Status page.
A Delete option is in the Status tab > History sub tab for deleting canceled, completed, and failed requests.
The One-to-One Fulfillment Master Document Editor simplifies the administrators' job of creating and publishing static and dynamic documents for communicating with customers.
The Master Document editor provides a fast and simple mechanism for creating master documents, creating and associating a query and uploading into the Management Encyclopedia System.
Text can be written in Rich Text Format, which supports multiple fonts, sizes and styles, and URL links and image insertion.
The high quality print Oracle solution enables the uploading of RTF or PDF Form documents, and offers E-Business Suite Applications the ability to initiate requests to print RTF or PDF Form documents or cover letters.
An Administrator creates an RTF document using Microsoft Word (or opens an existing document), uses the Form feature to insert the relevant personalized data (merge fields) in the appropriate positions in the letter or table, and then saves the document as an RTF file. When the document has been uploaded into the Content Repository, it is available for sending. Static PDF or RTF documents, such as attachments, can be printed in addition to the primary personalized document.
Oracle One-to-One Fulfillment also supports printing documents and collateral by way of Captaris RightFax.
Oracle Pasta is an Oracle printing solution that uses an executable called FNDPSTAX. The FNDPSTAX tool submits print requests to the operating system printing functions:
To use the High-Quality Printing feature, you must first be able to print from the Fulfillment Server host machine using either lp or print, depending on your operating system. It is the responsibility of the local system administrator to configure the operating system and network for printing.
XPDF is an open source viewer for PDF files. It includes a PDF-to-Post Script conversion tool called pdftops. Pasta uses PDF to PS to convert the resulting PDF files into PS before spooling them to the printer. Download XPDF from http://www.foolabs.com/xpdf/.
Business Intelligence Publisher is an Oracle toolset that provides utilities to transform RTF and PDF documents into a format called XSL-FO (or eXtensible Stylesheet Language-Formatting Objects). The XSL-FO format is used as a base format that can be transformed back into RTF or PDF (and in later Business Intelligence Publisher versions) HTML. XSL-FO is not intended for end users like marketers, survey creators, or other Fulfillment users who are responsible for creating Fulfillment Content. It is mentioned here for information purposes only. Business Intelligence Publisher 4.3 contains the necessary RTF conversion utilities.
Due to the reliance on the Business Intelligence Publisher utilities, only Fulfillment requests that contain strictly RTF or PDF documents can be printed through the High-Quality Print solution. Requests that contain any other file types can only be printed by the existing RightFax printing solution.