Archive
BI Bublisher: Selecting first record only
I was looking for a way to only select data from the first record of a group to use in my Master Bill of Lading. I only needed the address of one of the deliveries on the trip, so I wanted to select the address from the first delivery. The other deliveries on the trip would be have the same addresses, at least how we are configuring the system.
I found this on a blog post at Oracle.com which seemed to be the answer:
<?for-each:EMPLOYEES[position()='1' or position()=last()]?>
I tried it, and different combinations, for quite some time. I tried single quotes, double quotes, I tried it in an IF statement. It turns out the single quotes were causing problems. This is the way it finally worked:
<?for-each:LIST_TRIP_STOP/TRIP_STOP/LIST_DELIVERY/DELIVERY[position()=1]?>
I wonder if Oracle tested this before they published the blog entry. At least they pointed me in the right direction.
Oracle ER/Bug 16306627: WIP IS ISSUING ASSEMBLY PULL COMPONENTS WHEN SCRAP IS ENTERED
The following is entered as an enhancement request at Oracle for their E-Business R12 product. I have tried to convince Oracle to categorize this as a bug, but have not had any luck. If you have encountered a similar situation, please log an SR and add yourself to this “ER” and request that it be changed to a bug.
We [Emerson] have an assembly with a BOM where a component is inherited from a phantom assembly into the main assembly as an assembly pull supply type component on operation SEQ 1. The final assembly’s routing begins with operation SEQ 400. When a job is made, the component gets tied to operation SEQ 400. When a WIP move is made to the scrap step of the first operation (400), the assembly pull component is taken out of inventory.
This functionality is described as correct as per WIP User guide.
Oracle® Work in Process User’s Guide Release 12 Part No. B31092-01
When you move assemblies into the Scrap intraoperation step of an operation that has assembly pull components assigned to it, the system backflushes these components and all assembly pull components at prior operations.
This functionality does not seem to be correct. If a component is “assembly pull”, a completion takes it out of inventory at the end of the job. This means the component is acting as assembly pull for a completion, but operation pull for scrap.
If the goal is to take out inventory of assembly pull components when an assembly is completed, than it should not be tied to an operation.
BI Publisher Provides Our Organization Extreme Agility
A year and a half ago, our company embarked on a project to run Oracle E-business R12. Part of that process included a manufacturing migration from our legacy systems, and the other part included a migration of financial modules from Oracle 11i. Included in the 11i financial modules was Accounts Payable, thus our Payment process needed to be migrated to R12. One of my responsibilities was to create the payment output for the R12 system. Payments in Oracle R12 are rendered with BI Publisher, an Oracle tool I became very skilled with while working on the AP project. Although limited, BI Publisher has to be one of the most powerful technologies Oracle provides and has allowed our IT organization to become more agile.
From what I heard, it took the previous business analyst two years to get a check printed in the 11i production system, starting at the beginning of that project. The R12 Payment processing seemed like a daunting task. But I was up for the challenge and eager to enhance my skill set.
Within the first day of working on the payment output, I was able to get a check printed out of our test system. Two weeks later I had a check ready to send to our bank for validation.
Although my manager was impressed, he still had some doubts. I have a feeling he was thinking around the lines of, “this is too good to be true; how can someone get a check ready for approval so fast, when took so long previously?” Whatever his thinking was, the bank validation had the ability to halt my swift progress right in its tracks.
Fixed: Oracle iSetup XML Uploading Error
For the past month at work we have been experimenting with Oracle iSetup as a way to migrate Oracle R12 configurations from instance to instance. We had been using Rapid Solutions (Rapid e-Suite) in Oracle 11i in the past, but wanted to try something quicker, more robust, and seeded with Oracle.
The iSetup module worked pretty well in our proof of concept testing. But we ran into a problem when we started migrating our multi organization/business unit configurations. We have multiple business units because we are sharing the instance with another division at our company. Migrating configurations with iSetup brings all the ORGs and sites along with each configuration, however we only wanted our division’s configurations migrated. To solve the problem, we started editing the exported XML before loading it into the new instance.
Editing XML is relatively time consuming and prone to error when editing in a text editor compared to a program designed to edit XML. We tried to use the free Microsoft XML Notepad 2007, however, loading the exported files was causing iSetup to fail on upload. I found the problem and solved it as described below.
Conditions
- Oracle iSetup module in Oracle E-Business suite R12
- XML Documents edited by Microsoft XML Notepad 2007
Symptoms
- iSetup reports error when uploading edited XML files
- Log file as seen here:
oracle.xml.parser.v2.XMLParseException: Start of root element expected.
at oracle.xml.parser.v2.XMLError.flushErrors1(XMLError.java:320)
at oracle.xml.parser.v2.NonValidatingParser.parseRootElement(NonValidatingParser.java:341)at oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:303)
at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:205)
at oracle.apps.az.r12.api.BC4JAPI.createAPIEntityItems(BC4JAPI.java:330)
at oracle.apps.az.r12.extractor.cpserver.UploaderContextImpl.validateExtract(UploaderContextImpl.java:170)
at oracle.apps.az.r12.extractor.cpserver.UploaderContextImpl.upload(UploaderContextImpl.java:105)
at oracle.apps.az.r12.extractor.cpserver.UploaderCp.runProgram(UploaderCp.java:74)
at oracle.apps.fnd.cp.request.Run.main(Run.java:157)
Problem
- Oracle XML files are saved in ASNI text encoding even though the XML header specifies UTF-8
- Oracle iSetup expects ASNI encoded XML files contained within uploaded ZIP file
- Microsoft XML Notepad 2007 saves XML files in UTF-8 encoding
Solution

- Download extraction ZIP file generated by Oracle iSetup
- Extract ZIP file to your computer
- Edit and save extracted XML file in Microsoft XML Notepad
- Open saved file in Notepad (Text Editor)
- Save As ASNI encoding
- Replace existing file within original ZIP file
- ZIP file compression levels and algorithms must reamin intact
- 7-ZIP supports replacing files within an existing file using drag and drop functionality
- Upload updated ZIP file to Oracle iSetup as a new extraction.
- Load extraction into source instance
Conclusion
Installing Oracle r12: On To Linux!
I downloaded the Oracle Enterprise Linux distribution, and Linux E-Business r12 installer from Oracle. I am sure RCN Cable loves that I have now downloaded over 100 GB in the last 4 days. After my Windows Server 2003 debacle, I decided to run the Windows Vista recovery CDs I made to reinstall Vista the way it came from Gateway. That way I would know the exact network drivers and such.
Installing Oracle r12: Oracle is CRAZY!
Installing Oracle in Windows Server 2003 has not been easy thus far. After all my tests passed last time, I started the instillation. To my udder shock, and amazement, the install FAILED again! Actually I was not too terribly shocked. I expected it really.