Feed aggregator

New release of Oracle IRM Wrapper version 1.4.0

Simon Thorpe - Mon, 2010-09-27 16:03

Yet another release of a highly useful tool in the Oracle IRM kit bag. The Oracle IRM Wrapper is a Java based client which demonstrates some of the powerful ways in which you can create extensions of the Oracle IRM technology to extend the protection of files beyond the out of the box features. The IRM Wrapper uses the IRM API to allow for the encryption of any file, similar in nature to functionality as PGP, however with the difference that the rights control of decrypting files is the same powerful classification system that is used across the usual gambit of IRM files.

In this release support for existing sealed extensions has been added. This is a significant feature because it means that files wrapped by Oracle IRM Wrapper can be opened by the Oracle IRM desktop, and files sealed by the Oracle IRM desktop can be unwrapped by Oracle IRM Wrapper. In a mixed community of end users, where most have the Oracle IRM desktop installed but some do not (they may be on MacOS or Linux), no users need be excluded from workflows - they can all use the same sealed files! It is only necessary to add the Wrapper users to a special group assigned a role with unrestricted export rights.

Download this latest version from here.


  • NEW! Support for sealed extensions, e.g. .sdoc, .spdf
  • Installation scripts for easy installation on Windows and MacOS X
  • Written in 100% pure Java so runs on any Java-compatible operating system
  • Internationalized and localized into English, Japanese and (bad) schoolboy French
  • Right-click wrapping and unwrapping
  • Easily configure per-context drag-n-drop wrapping icons on your desktop
  • Automatically checks that you have the rights to wrap and unwrap files
  • Automatically select a default context
  • More robust configuration handling (ignores leading or trailing whitespace)


And a few screen shots of the tool running in Windows and Linux.


Security in the Enterprise 2.0 World: Conflicts of collaboration

Simon Thorpe - Mon, 2010-09-27 10:03

CMSWireLogo_v2-02.pngI was recently asked to be a guest author on CMSwire.com to comment on the challenges of security in the Enterprise 2.0 (E2.0) world. Having worked in both E2.0 and security, I have a good perspective.

As E2.0 brings web 2.0 into the enterprise it runs directly into the issues of security, compliance and regulation. It's a big challenge and a big contradiction. The business wants to use all these amazing new ways to share content, but the same business also needs to ensure that only the right people can get access to it.
And What About the Cloud?

Then there is the cloud. Cloud, cloud, cloud, it's on every webcast, in every article. The cloud has many advantages. Why wouldn't you want to outsource all your costs of network management, storage, system administration? The cloud makes perfect sense but has one massive concern... security. Wouldn't it be nice if someone else could host your content, provide the search functionality, upgrade the systems, manage backups and the network access and yet you could have persistent control over the actual information itself?

Read the full article over on cmswire.com.

New: Reusable ADF Taskflows Generator!

JHeadstart - Sun, 2010-09-26 11:11

Last week I attended Oracle Open World 2010. I was pleased to see how much focus there was on the Oracle Application Development Framework. With about 40 sessions, ADF was a major topic on this conference, as it should be!
Overall, the ADF sessions were of high quality and well attended. The drawback of so many sessions is overlap, sometime there were 2 or even 3 ADF sessions at the same time. For my session on JHeadstart, I had to compete with a presentation on functional patterns in ADF and an ADF hands on session. Thanks to a bit of twitter marketing and retweeting by JDeveloper, I nevertheless had about 35 people, while only 20 people preregistered for my session.
This time, I slightly changed the way I presented and positioned JHeadstart. In previous sessions I usually demoed for about 50 minutes, hurrying through the intro and wrap up slides. With earlier versions of ADF, my motto "seeing is believing" was enough, and the audience left mumbling things like "What you just showed me in 1 hour, has taken me 6 months to build".
Now, ADF11 is so impressive by itself, that I noticed somehow people start to think there is less of a need for JHeadstart. And of course, you can perfectly build ADF 11 applications without JHeadstart. But hey, don't you want to get things right the first time, and as fast as possible? Well, I do, and I am convinced that the above statement about saving 6 months is more true than ever with ADF11. ADF11 is immensely powerful when used in the proper way, following best practices, proven design patterns and advanced techniques. And this is the crux, despite more than 2000 pages of official documentation, and a couple of books on ADF, most of this info to really get it right is scattered around the web, in OTN articles and blogs of various ADF experts, or simply not yet documented.
It takes a couple of months before you figured it all out. Unfortunately, the typical project manager does not give you so much time, so you don't get it right the first time and you'll discover along the way that you should have chosen a different approach, applying other, more advanced techniques. And then you have a nasty choice to make: leave it as it is, a-less-functional-less-flexible-and-costlier-application to maintain, or go for a major refactoring......
Well, with JHeadstart you will get it right the first time! Which brings me to the title of this blog entry, I did a "major announcement" during my session, introducing the "Reusable ADF Taskflows Generator" (RATG). And the good news is, you don't have to wait for the next JHeadstart release to use it, it is already there in the current release! Only the name is slighty different: "JHeadstart Application Generator" (JAG). We have chosen the name JAG 8 years ago, when we launched JHeadstart, and ADF did not even exist. But RATG is probably a better name right now. Sure, JHeadstart still generates a complete and fully functional ADF web application, but the core of the application consists of highly reusable and highly configurable task flows.

The generated taskflows can be (re-)used

  • in a "traditional" tabbed menu (also generated with JHeadstart)
  • in the more modern "UI Shell with dynamic tabs". I demoed the excellent JHeadstart support for this pattern in the upcoming JHeadstart release. (You can use the pattern already with current release, requires a bit of coding)
  • in handbuilt drag-and-drop pages, see the JHeadstart tutorial for an example
  • as a child in another parent region, minimizing duplication of UI logic. Again, see the JHeadstart tutorial for an example.
  • in combination with ADF Human workflow tasklist, deeplinking to the task specific object instance within the taskflow
  • in pop up windows. And again, see the JHeadstart tutorial for an example.
  • as WebCenter portlets
  • in WebCenter Composer allowing the end user to add taskflows at runtime

To enable all these reuse cases, the generated taskflows are highly configurable. They
can be configured
  • to start in create mode (displaying a new row)
  • to show one specific row (deeplinking)
  • initially launch a summary page or specific deeplink detail page
  • to hide action buttons (ike Save, Cancel, Browse)
  • to hide search region
  • to show in read-only mode

I also emphasized the concept of the generator templates, which allows you to customize anything you want. For example, you can easily customize the generator to add additional taskflow configuration options.
And if you don't care for 100% generation, you have the freedom to skip generation at any time, and proceed with the visual design editor in JDeveloper to finish off your pages.

I believe that this message of advanced design patterns, reuse, and superior productivity without compromizing on flexibility, was well understood by the crowd. And the demo although shorter was still impressive enough, showing off many of the built in features that will save you additional months of development time. The crowd was "sold" as a couple op attendees said at the end, and made clear in tweets from respected ADF experts like Chris Muir and Wilfred van der Deijl!

Yes, OOW10 was inspiring and provided me with new energy to blog about JHeadstart.
OOW10 made me realize we should communicate more about many of the smart ADF techniques used in JHeadstart. There are still way too many people not using it, ignorant of all the good stuff. So, keep an eye on this blog in the next weeks!

Slides of my presentation can be viewed and downloaded here.

Categories: Development

Generating A Gap-free Series Of Numbers — Not Always A Problem

David Aldridge - Fri, 2010-09-24 07:25
Well, it’s happened again. Someone has asked how to implement a requirement to generate a gap-free series of numbers and a swarm of nay-sayers have descended on them to say (and here I paraphrase slightly) that this will kill system performance, that’s it’s rarely a valid requirement, that whoever wrote the requirement is an idiot […]
Categories: BI & Warehousing

Finding the Cost of an Index

Andries Hanekom - Thu, 2010-09-23 05:41
Building and maintaining an index structure can be expensive, and it can consume resources such as disk space, CPU, and I/O capacity.

According to the Oracle Database Performance Tuning Guide 10g Release 2 (10.2): "...each index maintained by an INSERT, DELETE, or UPDATE of the indexed keys requires about three times as much resource as the actual DML operation on the table. What this means is that if you INSERT into a table with three indexes, then it will be approximately 10 times slower than an INSERT into a table with no indexes".

So let’s attempt to demonstrate this estimate. Let’s start out with one of the largest tables in the Oracle E-Business Suite; ONT.OE_ORDER_LINES_ALL the table stores sales order lines for the Order Management module. I have recreated the table and associated indexes from a installation on a Oracle 10.2 XE database.

Some facts on my testing:
  • The ONT.OE_ORDER_LINES_ALL table contains 340 columns.
  • Standard indexes consists of 1 unique reverse key index and 17 non unique indexes, together they index 26 columns.
  • There are 14 custom non unique indexes covering 35 columns (9 function based).
Test 1: Insert 20000 rows using Insert with select sub query.

With no indexes: Avg 2.5 Seconds.
With standard indexes: Avg 6 Seconds.
With standard and custom indexes: Avg 18 Seconds.

Test 2: Insert 20000 rows using Bulk Collect Cursor and For Loop with Insert:

With standard indexes: Avg 8 Seconds.
With standard and custom indexes: Avg 22 Seconds.

I did not experience the 10 times slower estimate made by the Oracle Performance Tuning guide but the custom indexes significantly degraded insert performance.

So what is custom indexing doing to your Oracle EBS performance?

Working Around an Internal Error Based on Source Mnemonics

David Aldridge - Thu, 2010-09-23 05:16
My frenzied hacking through the unexplored territory of Expression Filters was derailed (to mix my metaphors) by an internal error when using the Evaluate() function in a rather complex query that uses an inline view, analytic functions etc.. The following was extracted from the alert log: ORA-07445: exception encountered: core dump [kkqsCkLegalEqvExpCB()+199] [SIGSEGV] [Address not […]
Categories: BI & Warehousing

finally back!

Nuno Souto - Wed, 2010-09-22 07:31
A thousand apologies for the lack of news. Well, it's been a wild ride since the last post, way back in March! On the work front:We finally finished the new DR site. And it's all working fine. Not just that, though: a LOT more!If you go here you'll see in the files area a presentation on how we do SAN-driven DR database replication. It works with SE Oracle, EE, or any other kind of Oracle Noonsnoreply@blogger.com6

xml:lang versus lang

Ramkumar Menon - Tue, 2010-09-21 13:58

I was following an email thread when I hit this interesting link.


It talks about best practices while specifying language for content served on HTML/XHTML/XML pages.

"For HTML use the lang attribute only, for XHTML 1.0 served as text/html use the lang and xml:lang attributes, and for XHTML served as XML use the xml:lang attribute only."



<helloWorld lang="en-US"/>

2.XHTML served as text/html
<helloWorld lang="en-US" xml:lang="en-US"/>

3. XHTML served as xml
<helloWorld xml:lang="en-US"/>

Bottomline -
Browser understands only "lang" for text/html content.
Dont use "lang" with XHTML 1.1. Its not in the spec. [Its okay in 1.0]

oow 2010 presentation slides

Christian Bilien - Tue, 2010-09-21 09:06
Here are the slides of the presentation I did yesterday: OOW2010 Christian Bilien. The room was full and I noticed a number of people were standing at the back of the room, hope the awful sound did not add too much to the pain.
Categories: DBA Blogs

OWSM optimized for Oracle SPARC T3 server

Vikas Jain - Tue, 2010-09-21 02:20
Oracle's Executive VP John Fowler in his keynote at Oracle OpenWorld conference, announced release of Oracle SPARC T3 server.
The SPARC T3 processors pack 16 cores and 16 on-chip CMT crypto accelerators in a single socket.

OWSM has been optimized to take full advantage of such hardware acceleration by integrating with Solaris Cryptographic Framework that provides crypto acceleration passthrough into the hardware for both SPARC and Intel processors.

See integration whitepaper: High Performance Security for SOA and XML Web Services using Oracle Web Services Manager and Oracle SPARC Enterprise T-Series Servers

OWSM indeed is delivering the promise of Hardware and software engineered to work together.

Oracle Exalogic Elastic Cloud

Peeyush Tugnawat - Mon, 2010-09-20 15:46

Interesting announcement from Oracle about Oracle Exalogic Elastic Cloud



Exalogic Introduction


Oracle Exalogic Elastic Cloud

Peeyush Tugnawat - Mon, 2010-09-20 15:46

Interesting announcement from Oracle about Oracle Exalogic Elastic Cloud



Exalogic Introduction


Oracle EBS Release 12.1 Released: Top 8 New ATG Features

Gareth Roberts - Mon, 2010-09-20 12:56

Oracle has announced the availability of Release 12.1, plenty of buzz around on this and Beehive updates.

Update: Oracle Application Management / Change Management Pack 3.0 also released! See Patch 8333939

Let's take a look at the Top Eight R12.1 new ATG (Applications Technology) features from my perspective.

  1. Out of the box Techstack Upgrades. New R12.1.1 installations are Database, Java 6, Application Server (Java/OAF)/JDeveloper Runtime, Application Server (Forms/Reports)
  2. OAF: Record History. R12.1.1 OAF allows viewing Row/Blame or Row/Who information similar to that available in Forms interface (who remembers Release 9 character mode key sequences ;-)
  3. OAF: BI Publisher Integration. R12.1.1 provides a personalizable "Print" button for OAF pages. Very Nice.
  4. OAF: Flexfield References support. R12.1.1 gives the same functionality as Forms UI for referencing other fields as part of flexfields.
  5. Attachments APIs. Bulk upload and web services/API for Document Attachments. Sounds great!
  6. Integration / SOA. A bunch of new functionality including Web Services Invocation Framework (WSIF), a step towards easier integration.
  7. Diagnostics upgrades. A variety of changes/functionality to Oracle Diagnostics including BI Publisher enablement for new diagnostics. Oracle Diagnostics is an excellent source of EBS information for techie types!
  8. Autoconfig: Share Applications Tier between environments. R12.1 introduces the ability to share applications executables between instances, like Production and Test. Probably not what you'd want for your typical PROD/DEV/TEST setup, but for a "Production" / "Production Support" mirror setup this is very tempting.

Plenty of other candidates, but those are the ones that took my fancy from the ATG bag of tricks!

So how am I doing against my Chinese New Year predictions?

  1. Release 12.1: AVAILABLE
  2. Patch 5612820 for EBS Release 11i: AVAILABLE
  3. Native Excel Templates for XML / BI Publisher: Still waiting for them!
  4. Further emergence of OBIA with EBS: Release 12.1.1 has specific mention of further integration with Business Intelligence Applications (OBIA), needs a closer look.
  5. Change Management Pack for the eBusiness Suite: AVAILABLE: Patch 8333939.
  6. New Oracle Application Express (APEX) components to allow APEX/EBS Integration/support: Still waiting, but I'm currently looking at alternatives for APEX/Apps integration for R12.x.
  7. Oracle Fusion Applications: As expected delayed until at least 2010.

Disclaimer: The words, ideas and opinions here are my own. Please don't assume they represent the opinion of any other person or organization. This information is based on various sources, so it may not match the actual functionality delivered!

Related Posts

Discoverer with EBS R12 - Sheet contains no data for custom Oracle eBusiness Suite Responsibility

Gareth Roberts - Mon, 2010-09-20 12:56

So you're working with Discoverer 10g integrated with the Oracle eBusiness Suite on Release 12. You've installed and set everything up per Metalink/MOS Note 373634.1 "Using Discoverer 10.1.2 with Oracle E-Business Suite Release 12" plus created a custom application and responsibility to have it's own menu items corresponding to your Discoverer Workbooks/Worksheets.

You login to your new responsibility and click on your new menu entry that you created per Metalink/MOS Note "How to Create a Link to a Discoverer Workbook in Apps R12" and what do you get when you query subledger data such as Payables Invoices, or secured General Ledger data?

This sheet currently contains no data.

Well, its a quick fix. Simply save the following value in the "Initialization SQL Statement - Custom" profile option at Responsibility level for your new Responsibility.

begin gl_security_pkg.init; mo_global.init('M'); end;

Note: this may depend on your setup of the following profile options:

  • GL Ledger Name
  • GL: Data Access Set
  • MO: Operating Unit
  • MO: Security Profile

All sorted!


Related Posts

OpenWorld 2009 done - back to Windy Wellington

Gareth Roberts - Mon, 2010-09-20 12:55

With OpenWorld 2009 all done plus a few highly enjoyable days in the Valley I'm now back at home. I had a fantastic time once again, second time around was much less daunting - I went for less sessions, more unconference and more shopping!

The first couple of days of OpenWorld this year seemed very light on attendees, but with a flurry of activity in the last few days and a fantastic appreciation event - an awesome performance from Aerosmith - things really picked up. Very few product announcements of essence from the Oracle team so the real highlights for me were catching up with a variety of people/groups at a number of events:

  • Australia/New Zealand Dinner
  • Rittman Mead BI Meetup
  • Bloggers Meetup
  • Oracle APEX Meetup
  • Catching up with the BI Publisher crew and meeting Ike
  • Hanging out with Michael, Greg and Mike - cheers guys.

A huge thanks to all the above for the hospitality.

So only a few notes this year that took my interest to note them down. It seems a bit light especially on the eBusiness Suite side so if I have missed anything major, please post a comment.

Larry's Keynote Announcements:

  • Linux update - survey (was it by HP?) reported 65% of Oracle Database customers run Oracle Enterprise Linux beneath the database. Interestingly high percentage.
  • Review of Exadata "v2" (Sun Oracle Database Machine) with statistics showing results twice as fast as "v1".
  • Product Support System in the works including on site data mining for analyzing system configuration and auto-advising bugs/patches needing to be addressed.
  • Fusion Applications related:
    • Commitment for support of, and new functionality in eBusiness Suite, Peoplesoft, JD Edwards and Siebel applications for the next decade in addition to Fusion Applications
    • "Version 1" of Fusion Applications in Testing.
    • Fusion Applications are "SaaS ready" and deployed on SOA, BI standards based middleware.

Just the one product release announcement related to my areas of work:

  • Business Intelligence Applications OBIA Release available

A number of interesting things up and coming, but most set for calendar year 2010.

OBI 11g - yet to be released, but demo'd, with my notes:

  • Common UI Components across the BI and Fusion product suites
  • Online BI Publisher Template Builder
  • A variety of excellent new features addons such as Answers Groups, Selection Steps, Visualizations
  • Extensions to current fuctionality such as Action Framework
  • Additional features such as Scorecards

Oracle APEX 4.0

  • The whole APEX community is getting ready and excited about the APEX 4.0 release due 2010.
  • It's great to see the new APEX Listener pre-production release out and getting plenty of feedback.

E-Business Suite:

  • 12.1.1 to include a new hompage / navigator + Web 2.0 style components therein
  • 12.1.1+ Integrated SOA Gateway (as an alternative to the EBS Adaptor which is part of SOA Suite).
  • Enterprise Manager pack addons for Health checks including online Patch and technology component Version comparison and recommendation tools.

Some other interesting tidbits that I noted:

  • Trial Usage of Advanced Compression on Oracle internal E-Business Suite top 100 objects reduced space usage on average by 3 times. Gotta see how Vision instances go with compression.
  • BI Publisher Data Template builder in the works (still), along with the demo'd BI Publisher Online Layout Template editor (demo'd as noted above).


So another excellent OpenWorld over - thanks to Oracle for putting on another flawless event and appreciate the Bloggers Pass. Even the weather made me feel at home ;-)

Next major event on my calendar is the NZOUG Conference 2010, Rotorua, New Zealand, March 15-16 2010 - looking forward to it. Hope to see some of you there!

PS. On a side note, from a New Zealand perspective, interesting that an IBM data center should fail around OpenWorld given Larry's consistent reiteration about the redundancies in the Oracle Database Machine and lack thereof in IBM's ex TPC-C beating solution! Even more than a week later seems like things are not quite back to the usual high Air New Zealand standards - following pic snapped 20-Oct-09.

Related Posts


BI / XML Publisher 5.4pt start-indent problems in XSL-FO blocks on EBS Check Format recursive template

Gareth Roberts - Mon, 2010-09-20 12:54
So you've just finished the first cut of your funky BI Publisher Check (Cheque) format template, and you feel pretty accomplished:
  • Logos, tables, non-preprinted stationary: Yes
  • Magnetic ink on printer loaded and ready to go: Yes
  • MICR font: Yes
  • Conditional signatures: Yes
  • Void check handling: Yes
  • Fixed Row Enumeration filler in tables via recursive templates: Yes

And then it all goes pear shaped … Doh!
Your filler recursive template does a dance to the right, indenting 5.4pt at a time.

With the cause in the XSL-FO template something like this: start-ident="5.4pt"

Well, you aren't the first person, or second to hit this, thanks theFurryOne for prompting this post. There is a workaround ... or two. You could edit the XSL-FO and replace the 5.4pt text with 0.0pt, but then you'd need to work with XSL-FO templates rather than RTF.

Alternatively you could put the following magic in the first cell of the filler recursive template:


And a bit of a re-jig on the recurvsive sub template alignment. For example:

And we're rockin and rolling - no XSL-FO template needed, "pure" RTF:

Catch ya!
This is a post from Gareth's blog at http://garethroberts.blogspot.com
References Related Posts

EBS Bursting: Filter on XML Elements using XPATH in Bursting Control File

Gareth Roberts - Mon, 2010-09-20 12:54

Just a quick post to give an example of a bursting control file that has multiple emails, with a filter based on XML Element in the data to select which email to send.

Oracle EBusiness Suite XML / BI Publisher Bursting Control File Example - Multiple Email Filter

Here it is:

<?xml version="1.0" encoding="UTF-8"?>
<xapi:requestset xmlns:xapi="http://xmlns.oracle.com/oxp/xapi">
<xapi:globalData location="stream"/>
<xapi:email server="${XXX_SMTP}" port="25" from="${XXX_SEND_FROM}" reply-to ="${XXX_REPLY_TO}">
<xapi:message id="email1" to="${XXX_CUST_EMAIL}" cc="${XXX_ARCHIVE_EMAIL}" attachment="true" content-type="html/text" subject="Statement from ${ORG_NAME} - ${STATEMENT_DATE}">Hello,
Please find attached the Statement for period to ${STATEMENT_DATE}.
Internal Ref: Customer Email
<xapi:email server="${XXX_SMTP}" port="25" from="${XXX_SEND_FROM}" reply-to ="${XXX_REPLY_TO}">
<xapi:message id="email2" to="${XXX_AGENT_EMAIL}" cc="${XXX_ARCHIVE_EMAIL}" attachment="true" content-type="html/text" subject="Statement from ${ORG_NAME} - ${STATEMENT_DATE}">Hello,
Please find attached the Statement for period to ${STATEMENT_DATE}.
Internal Ref: Agent Email
<xapi:document key="${CUSTOMER_ID}_1" output="${XXX_SHORTNAME}_Statement_${STATEMENT_DATE}" output-type="pdf" delivery="email1">
<xapi:template type="rtf" location="xdo://AR.XXX_STATEMENT_PRINT.en.00/?getSource=true" filter="/ARXSGPO_CPG/LIST_G_SETUP/G_SETUP/LIST_G_STATEMENT/G_STATEMENT[XXX_CUST_MODE='Email']"/>
<xapi:document key="${CUSTOMER_ID}_2" output="${XXX_SHORTNAME}_Statement_${STATEMENT_DATE}_Agent" output-type="pdf" delivery="email2">
<xapi:template type="rtf" location="xdo://AR.XXX_STATEMENT_PRINT.en.00/?getSource=true" filter="/ARXSGPO_CPG/LIST_G_SETUP/G_SETUP/LIST_G_STATEMENT/G_STATEMENT[XXX_AGENT_MODE='Email']"/>

Catch ya!

This is a post from Gareth's blog at http://garethroberts.blogspot.com
References Related Posts

Concurrent Program parameters in XML / BI Publisher Template - eBusiness Suite

Gareth Roberts - Mon, 2010-09-20 12:52

Just a short post with a note of how to get Oracle eBusiness Suite Concurrent Program Parameters into the output on an XML Publisher RTF Template.

There are two simple options, given an example parameter with token P_ORG_ID:

1. Add the concurrent program parameter as a field in the XML - this may be easier / necessary when you get to bursting or similar. Refer to the parameter using the usual <?P_ORG_ID?> RTF syntax.

2. Add the parameter using the param@begin syntax at the top of your RTF file:


And then refer the the value using dollar notation:


Catch ya!
This is a post from Gareth's blog at http://garethroberts.blogspot.com

Related Posts

HTML Formatting issues in EBS R12 XML Publisher Remittance Advice Emails aka. Use Inline CSS Styles in BIP

Gareth Roberts - Mon, 2010-09-20 12:52

Apologies for the cryptic title on this one. The issue is a simple but subtle one ... and if you're not an eBusiness Suite customer, but interested in the BIP HTML formatting part, please read on as the discussion may be relevant.

In the Oracle eBusiness Suite Release 12 there is an out-of-the-box solution for sending Payables Remitttance Advice notices via Email. The program is "Send Separate Remittance Advices" and is integrated into the Payments Process. The standard solution utilizes XML Publisher under the covers, but (at the time of writing) has been coded to force HTML output for the Email content and uses its own delivery mechanism, rather than a more flexible bursting one that could attach PDFs to emails. Now, this means there are a couple of limitations with the output format for these Remittance Advice notices:

  1. The out-of-the-box HTML generated by XML / BI Publisher uses CSS Stylesheets as opposed to Inline CSS. This causes formatting issues with some specific Email Clients (such as GMail) as described by this "old" but still relevent post. This is the main focus of this article and I'll give details of a workaround.
  2. The use of HTML means from a document printing perspective a pixel-perfect format is tough to achieve.
  3. Images e.g. Company Logos, need to be referenced in the HTML and hence need to be publicly accessible on a web server. This also means that when Supplier's receive the Remittance Advice emails will probably not have the images displayed by default and they'll get the "some pictures have been blocked to help prevent the sender from identifying your computer ... click here to download images" or similar spam/tracking warnings.

So the out-of-the-box solution has these gotcha's until such time as it uses a "fixed-format", "all content embedded in email" delivery method such as attaching a PDF to the email with the advice details...

BUT WAIT, there may be workarounds.

For Issue 1. we can tell XML / BI Publisher to embed Inline CSS rather than CSS Stylesheets using the following undocumented XML Publisher configuration. Place the following configuration in the xdo.cfg file and put it in eBusiness Suite $XDO_TOP/resource directory. Usual caveats apply; please test this before rolling to Production. Also be aware that this may affect all HTML output, with output file sizes likely to increase.

<config version="1.0.0"  xmlns="http://xmlns.oracle.com/oxp/config/">
    <!-- html-css-embedding valid values  embed-to-element | embed-to-header | externalize -->
       <property  name="html-css-embedding">embed-to-element</property>

For Issue 2. one trick is to place your formatting inside a Table and fix the width / height to that which you require. This may take a smidgen of tweaking, but at least you can get something that looks and prints nicely.

For Issue 3 ... well, I'm still working that one - no workaround from Support yet to embed the images in the HTML. Will keep you posted. UPDATE: Enhancement request (ER) Bug 9834226 has been raised for the issue of inability to embed images in Remittance Advice.

Hope this helps.

Catch ya!
This is a post from Gareth's blog at http://garethroberts.blogspot.com

References Related Posts

Environment Variables from database table - Oracle E-Business Suite

Gareth Roberts - Mon, 2010-09-20 12:51

Are you running Oracle E-Business Suite (EBS) / Applications and want to get an operating system level environment variable value from a database table, for example for use in PL/SQL? Or perhaps to default a concurrent program parameter? Didn't think environment variables were stored in the database?

Try out out this query that shows you $FND_TOP:

select value
from   fnd_env_context
where  variable_name = 'FND_TOP'
and    concurrent_process_id = 
      ( select max(concurrent_process_id) from fnd_env_context );


Or did you want to find out the Product "TOP" directories e.g the full directory path values from fnd_appl_tops under APPL_TOP?

col variable_name format a15
col value format a64
select variable_name, value
from   fnd_env_context
where  variable_name like '%\_TOP' escape '\'
and    concurrent_process_id = 
     ( select max(concurrent_process_id) from fnd_env_context )
order by 1;

--------------- ----------------------------------------------------------------
AD_TOP          /d01/oracle/VIS/apps/apps_st/appl/ad/12.0.0
AF_JRE_TOP      /d01/oracle/VIS/apps/tech_st/10.1.3/appsutil/jdk/jre
AHL_TOP         /d01/oracle/VIS/apps/apps_st/appl/ahl/12.0.0
AK_TOP          /d01/oracle/VIS/apps/apps_st/appl/ak/12.0.0
ALR_TOP         /d01/oracle/VIS/apps/apps_st/appl/alr/12.0.0
AME_TOP         /d01/oracle/VIS/apps/apps_st/appl/ame/12.0.0
AMS_TOP         /d01/oracle/VIS/apps/apps_st/appl/ams/12.0.0
AMV_TOP         /d01/oracle/VIS/apps/apps_st/appl/amv/12.0.0
AMW_TOP         /d01/oracle/VIS/apps/apps_st/appl/amw/12.0.0
APPL_TOP        /d01/oracle/VIS/apps/apps_st/appl
AP_TOP          /d01/oracle/VIS/apps/apps_st/appl/ap/12.0.0
AR_TOP          /d01/oracle/VIS/apps/apps_st/appl/ar/12.0.0

Or perhaps the full directory path to $APPLTMP?

select value
from   fnd_env_context
where  variable_name = 'APPLTMP'
and    concurrent_process_id = 
      ( select max(concurrent_process_id) from fnd_env_context );


NB: These queries assume your concurrent managers are running!

Catch ya!
This is a post from Gareth's blog at http://garethroberts.blogspot.com
References Update - Added example output and $APPLTMP output.


Subscribe to Oracle FAQ aggregator