Best Practices for Designing Accounting Flexfield
Muhammad Rafi Aamiri on Saturday, December 25, 2010
Given below are some of the common segment titles that many organizations define with separate account segments:
Company A segment that indicates legal entities for commercial, for–profit organizations.
Fund A segment that indicates a fiscal and accounting entity with a self–balancing set of accounts for governmental or not–for–profit organizations.
Cost Center or Department A segment that indicates functional areas of your business or agency, such as Accounting, Facilities, Shipping, and so on.
Account A segment that indicates traditional “Natural Account”, such as Cash, Current Asset, Accounts Payable, or Salary Expense.
Product A segment that indicates products, such as disk drives, printer cables or magnetic tapes manufactured by a commercial, for–profit organization.
Program A segment that indicates programs, such as, for a university, scholarship program, endowment program, or annual giving program.
Project A segment that indicates projects such as work orders, contracts, grants, or other entities for which you want to track revenues and expenses.
State/District/Geography A segment that indicates geographical locations, such as Northern California, Central Florida or Western New York.
Distribution Channel A segment that indicates the method by which your product reaches your customer, such as Wholesale, Retail, OEM, and so on.
Intercompany A segment that indicates intercompany entities. If your subsidiaries share the same set of books, you can use an intercompany segment to identify subsidiaries involved in intercompany-transactions. This segment usually mirrors your company segment (balancing legal entity segment).
* Determine the segment that captures the natural account, such as assets, liabilities, expenses, and validate whether you need sub-accounts. Use child-parent relationships to define your account hierarchy.
* Define a separate Accounting Flexfield segment for each dimension of your organization on which you want detailed reporting, such as regions, products, services, programs, and projects. For example, you may want to record and report on expenses by project. To do this, your account must categorize expenses by project. Define your account to include a “Project” segment. By doing this, you automatically categorize all your accounting information by project as you enter it, and you can easily report on project information.
* Group similar business dimensions into one segment. This allows a more simplified and flexible accounting structure. For example, you only need one segment to record and report on both districts and regions, as illustrated below. Because regions are simply groups of districts, you can easily create regions within your district segment by defining a parent for each region with the relevant districts as children. Use these parents when defining summary accounts to maintain account balances and reporting hierarchies to perform regional reporting.
* Consider information you track in other accounting information systems. You may not need to capture certain organizational dimensions if another system already records and reports on this information. For example, if you need to report on sales by product and your sales tracking system already provides this information, General Ledger account structure does not need to categorize information by product. If you are a government or not–for–profit agency using a labor costing system which captures work breakdown structure for reimbursable billing, you may not need to capture this in your account structure.
* Identify segments that you might need in the future. Consider future expansion and possible changes in your organization and reporting needs. For example, you may not need a region segment now, but eventually you plan to expand you organization to cover multiple regions. Determine the length of each segment. Consider the structure of values you plan to maintain within the segment. For example, you might use a 3 character segment to capture project information, and classify your projects so that all administrative projects are in the 100 to 199 range, all the facilities projects are in the 200 to 299 range, and so on. If you develop more than 10 classifications of projects, you would run out of values within this segment. You might want to add an extra character to the size of each segment to anticipate future needs.
* If you want to perform multi–company or fund accounting within a set of books, choose a balancing segment. You must define one and only one balancing segment in your account. General Ledger automatically balances all journal entries for each value of this balancing segment and performs any necessary intercompany or interfund posting to the intercompany or interfund account you specify when you define your set of books.
* If you plan to maintain and consolidate multiple set of books, think of common elements among your separate account structures. Consider which segments can share value sets, or where opportunities for rolling up segments from a subsidiary set of books into a parent set of books exist.
Plan your value sets. To reduce maintenance and to maintain consistency between sets of books, you can use value sets when defining multiple charts of accounts. Using the same value sets allow two different sets of books to reference the same segment values and descriptions for a specified segment.
* For example, the values in your natural account segment, such as Cash, Accounts Payable, and so on, may be equally applicable to each of your sets of books. Ideally, when you set up a new set of books you should consider how you would map your new Accounting Flexfield segments for consolidation. When a common natural account segment is used between sets of books, it is easier to map account balances from your subsidiary sets of books to a consolidating entity.
Oracle AIM and ABF Methodology
Muhammad Rafi Aamiri on Saturday, December 18, 2010
Traditional AIM methodology is known as Ask and Do as it is requirements driven and solution is derived based on the requirements during the project. It is more or less based on the traditional Waterfall Approach, prescribes a way to do the fit gap analysis and assists you to define customizations where standard Oracle functionality does not meet the business requirements. The approach is taken on a modular basis.
AIM For Business Flows (ABF) also called as Show and Tell is solution driven and Solution Flow is defined before the start of project. It is based on iterative approach based where multiple runs of CRPs are done. In the essence it aims at avoiding customizations and prioritizes all changes. There is a strong emphasis on integrated view and focus is on cross module process flows. Some of the advantages of ABF are:
- ABF is most recommended approach for green-field projects where there are no legacy systems in place and the customer is willing adopt to the standard processes prescribed by the Oracle ERP.
- More rigor to use the standard business processes defined by Oracle
- Minimize numbers of Customizations (extensions)
- Reduced cycle time
CRP’s in ABF
CRP in terms of ABF is a series of workshops where “Flow Teams” assigned to the implementation project go through the business flows iteratively during the project. The flows in a Flow Family are grouped into logical “Flow Batches” that can be refined and tested in a series of workshops conducted during a given CRP cycle. The Flow Families being implemented are also tested in parallel by separate Flow Teams during the CRP. Composition of a Flow Team will generally include at-least one consultant, Business Process Owner, and some super or key users or SME’s. The main objectives of the CRP are Familiarization, Initial mapping, Refine Mapping, Validate COA, Multi-Org and TCA, Scope Freezing, and Business System Test.
Key Deliverables in ABF
BT.070 Project Management Framework
BF.015 Future Process Model
BF.040 Change Catalog
BF.045 High Level Solution document
BF.016 Application Setup Documents
BF.080 Reporting Requirements Listing
BF.170 Security Profiles
BF.100 Phase end review
BF.035 CRP1 Strategy Plan
TE.065 CRP2 Strategy Plan
MD.050 Application Extensions Functional Design
MD.070 Application Extension Technical Design
TE.040 System Test Script
DO.070 User Guide
CV.040 Conversion Data Mapping
MD.120 Installation Instructions
TA.030 Preliminary Conceptual Architecture
TA.150 System Management Procedures
Oracle has announced retirement dates for AIM and ABF of January 2011 and all of Oracle’s existing methods are being replaced by the Oracle Unified Method (OUM) aligning to their long term strategy post- acquisition of PeopleSoft, Siebel, BEA and other solutions.
EBS 11i extended support starts from December 2010
Muhammad Rafi Aamiri on Saturday, December 11, 2010
Premier Support for Oracle E-Business Suite Release 11i ends on November 30, 2010 and Extended Support for EBS 11i begins from December 1st, 2010.
Extended Support comes at an additional cost, but these are waived for Oracle E-Business Suite Release 11i through November 2011. Contact your Oracle account manager with questions about Extended Support costs.
Here is a comparison of the different support levels:
A new set of minimum technical requirements for Apps 11i goes into effect when Extended Support begins in December 2010. These new minimum baseline patch requirements are listed in:
What are the impacts of this new baseline?
As always, Oracle Support will assist with diagnosis, triage, and debugging of any issues that you report for your E-Business Suite environment. You will continue to have access to any existing online support tools, knowledge base documentation, and pre-existing fixes.
If you report a new issue that requires a new bug fix, you should be aware that new patches will be released only for the new baseline patches listed in the Minimum Baseline Patch Requirements Note. You should plan to apply the baseline patches (at minimum) listed in Note 883202.1 by November 2010 in order to receive any new bug fixes.
Minimum Baseline Patch Requirements
- Oracle E-Business Suite Release 11.5.10 Consolidated Update 2 plus additional patches listed in Note 883202.1
- ATG Rollup Patchset 6 (11i.ATG_PF.H.delta.6, Patch 5903765)
- 10.2.0.4 Database or 11.1.0.7 Database
- Forms6i Patchset 19 (version 6.0.8.28, Patch 6194129)
- Oracle HTTP Server MLR Patchset 4393827
- Sun Java Runtime Engine (JRE) 1.6.0_03 or higher
The baseline versions listed here (and in the Note) are current as of the document's release date but may change in the future. Any changes will be communicated via Note 883202.1. If you've found this article as the result of a web search, I would strongly encourage you to check the latest version of the Note for the current information.
What EBS 11i products are affected by this new baseline?
In addition to the major technology stack components shown above, Note 883202.1 contains additional minimum baseline requirements for:
- Applications Technology
- Common Applications Calendar
- Contracts
- Core Contracts
- Procurement Contracts
- Project Contracts
- Sales Contracts
- Service Contracts
- Customer Data Management
- Customers Online
- Trading Community
- Financials
- Assets
- iAssets
- Advanced Collections
- Bill Presentment Architecture
- Cash Management
- E-Business Tax
- Financials for the Americas
- Financials for Asia/Pacific
- Financials Common Country
- Financials for EMEA
- Financials for India
- Internet Expenses
- Lease Management
- Loans
- Payables
- Payments
- Property Manager
- Public Sector Budgeting
- Public Sector Financials
- Public Sector Financials (International)
- Receivables
- iReceivables
- Treasury
- U.S. Federal Financials
- Human Resources
- Advanced Benefits
- Approvals Management
- HR Intelligence
- Human Resources
- Labor Distribution
- Learning Management
- Payroll (All Localizations)
- Payroll (International/Custom)
- iRecruitment
- Self-Service Human Resources
- Time and Labor
- US Federal Human Resources
- Intelligence
- Balanced Scorecard
- E-Business Intelligence
- Interaction Center
- Customer Interaction History
- Logistics
- Inventory Management
- Warehouse Management
- Manufacturing
- Cost Management
- Quality
- Supply Chain Globalization
- Work in Process
- Marketing and Sales
- Incentive Compensation
- Marketing
- Partner Management
- Quoting
- Sales
- Sales for Handheld
- Sales Offline
- Territory Management
- Trade Management
- Order Management
- Advanced Pricing
- Configurator
- Order Capture
- Order Management
- Procurement
- iProcurement
- Purchasing
- Sourcing
- iSupplier Portal
- Supplier Scheduling
- Product Lifecycle Management
- Advanced Product Catalog
- Bills of Material
- Document Management and Collaboration
- Engineering
- Item Master
- Projects
- Grants Accounting
- Project Billing
- Project Collaboration
- Project Costing
- Project Portfolio Analysis
- Project Foundation
- Project Resource Management
- Projects
- Service
- Advanced Scheduler
- Complex Maintenance, Repair & Overhaul
- Customer Care
- Depot Repair
- Field Service
- iSupport
- Teleservice
- Supply Chain Planning
- Demand Planning
- Production Scheduling
- Strategic Network Optimization
Publishing Modes of UPK
Muhammad Rafi Aamiri on Thursday, December 2, 2010
Enables a user to learn by watching an animated demonstration of the steps for a task being performed in a simulated environment. All the required activities, such as moving the mouse and entering data, are completed automatically.
Enables a user to learn interactively in a simulated environment. The user is prompted for mouse clicks and/or keystrokes to complete the task.
Enables a user to learn interactively using live data. In Do It! – Manual Advance mode, a user is presented with a small window on top of the live target application that displays each step for a particular task. As the user completes each step, he/she can click a button or use a hot-key combination to display the next step in the process. Within the Do It! – Manual Advance window, a thumbnail graphic of the screen is available with a highlight indicating the area where the action should take place. Do It! – Manual Advance is the default mode for custom applications. It is the only Do It! mode available in browser-based Player deployment.
An assessment-type playback mode in which users are instructed to complete a particular task. Users do not receive step-by-step instructions for completing a task. Instead, they complete the steps on their own in a simulated environment, and they are scored on how accurately they complete them.
Overview of User Productivity Kit (UPK)
Muhammad Rafi Aamiri on Tuesday, November 30, 2010
The User Productivity Kit shortly known as UPK is a comprehensive, cost-effective, customizable solution that helps your organization quickly create the critical documentation, training, and support materials needed to drive project team and user productivity throughout the lifecycle of your software.
Oracle UPK Professional is the leading solution for creating, deploying, and accessing content for enterprise application deployments. Consisting of Oracle UPK and the Knowledge Pathways designer, manager, and player modules, Oracle UPK Professional turns knowledge into productivity and ensures ongoing end-user competency.
The User Productivity Kit provides system process documentation, user acceptance test scripts, comprehensive instructor led training materials, web based training materials, role-based performance support and complete documentation.
Also provided is the UPK Developer, which serves as a single source development and customization tool to enable rapid content creation and customization.
UPK is a package that develops content for all of the major software suites that Oracle now controls, including: Oracle E-Business Suite, PeopleSoft Enterprise, JD Edwards EnterpriseOne, Siebel CRM, JD Edwards World, Oracle Transportation Management and Retek. UPK also works with the following: Accential, Acrobat, Application Designer, Configuration Manager, Crystal, Excel, Outlook, PowerPoint, PSnVision, Query Analyzer, Tutor and Word. Although initially developed by Global Knowledge as OnDemand Developer, Oracle has designed object recognition into UPK.
BENEFITS
--------------------------------------------------------------------------------------------------------------
BENEFITS
--------------------------------------------------------------------------------------------------------------
- Enable business users gain good knowledge of the functionality of an application by learning how to use a program in both a simulated environment.
- Create documentation, training materials, capture transaction and performance support across the organization.
- Provides training and support personnel to create interactive software simulations and other instructional materials. These simulations allow users to see and interact with an application even before they have access to it.
- Provides process documentation, UAT scripts, comprehensive instructor led training materials, web based training materials.
- Allows to edit the process flow captured and reproduce the same process both in animated format and document format.
- With the addition of prebuilt content for UPK, the effectiveness and quality of that development is greatly enhanced.
- Utilized in any software application development or deployment methodology.
- Develop central repository to improve competency skills by developing CBTs, BPDs, Test Scripts etc.
- Utilize while rolling out a new application.
- Reduce content creation time — Rapid content creation tools produce multiple assets through a single authoring session saving content development time and cost.
- Reduce time to deployment—System process documentation for fit-gap analysis provides time and cost savings, jump-starting your implementation or upgrade project.
- Manage project assets—Central repository stores project assets for stakeholders and deploys training materials to user community.
- Ensure organizational readiness—Performance testing monitors end-user competency prior to go-live as well as tracks ongoing proficiency.
Integration of Oracle Apex with APPS
Muhammad Rafi Aamiri on Wednesday, November 10, 2010
Oracle Application Express (Oracle Apex) is a rapid web application development tool for the Oracle database. Using only a web browser and limited programming experience, you can develop and deploy professional applications. We wanted to extend the E-Business Suite functionality with Apex features. Apex functions need to be available from the EBS user menu. Users have to be able to move seamlessly from EBS to Apex, without logging in twice. The context of the EBS user needs to specify which data the user is allowed to see in Apex. Our goal was to develop a calendar in Apex which shows a team’s absences for the logged in supervisor. In EBS the “supervisor -> employee” relation has a hierarchical structure, which has to be available in the calendar.
The first challenge we have to deal with is authentication. Apex users have to log in to access an application. We used the EBS security to allow users to logon to Apex using their EBS username and password. In Apex we created a custom authentication scheme which calls an external function to validate the username and password. The authentication scheme calls our plsql function “apex_authorise” which uses the EBS “fnd_web_sec.validate_login” to validate the username and password. At this point we are able to log in to an Apex application using any valid EBS username and password combination.
Now we want to link Apex forms from the EBS menu. The first problem is that Apex requires a valid password for the user and the EBS database does not contain passwords, it holds a hash of the username/password combination. You can handle this by creating an alternative password using the DBMS_OBFUSCATION_TOOLKIT md5 function. The password will be generated by hashing the username, a time component and a key held within the database. This mechanism will be handled in two functions: “apex_generate_hash” and “apex_validate_hash”. To check if the password is valid, we extend the already created function “apex_authorise”.
Now we want to login in Apex automatically. We use a cookie to achieve this. The form function we use in EBS, sets a cookie containing the username and password and redirects to the Apex URL to launch the Apex application. In EBS we have to create a web enabled mod_plsql procedure to achieve this. This form function can then be added to the EBS menu. In Apex we use a “before header” process to read the cookie and log the user in.
The cookie we used:
OWA_COOKIE.send
(name=>’APEX_APPS_’||application,
value=>FND_GLOBAL.user_name||’:’||
apex_generate_hash(FND_GLOBAL.user_name)||’:’||
FND_GLOBAL.user_id||’:’||
FND_GLOBAL.resp_id||’:’||
FND_GLOBAL.resp_appl_id
);
(name=>’APEX_APPS_’||application,
value=>FND_GLOBAL.user_name||’:’||
apex_generate_hash(FND_GLOBAL.user_name)||’:’||
FND_GLOBAL.user_id||’:’||
FND_GLOBAL.resp_id||’:’||
FND_GLOBAL.resp_appl_id
);
We store the FND_GLOBAL values in global variables in Apex. We use these variables in the page query of an Apex application to only show the results for this specific user. In our case we used the standard calendar feature of Apex. In this calendar you can specify a sql query which selects the data to publish.
Ideally we want to save the context of the environment an APPS user is working in and seamlessly use this context in our Apex application. This way we don’t have to care about which data is visible for the user, the APPS security mechanism will take care of that. This is something which has to be investigated. In our project we send the user information in the cookie, and use this information for our data selection.
Debug AP/AR Netting Issues
Muhammad Rafi Aamiri on Monday, November 1, 2010
The first and foremost step to ensure that the netting process does not error out is to check the following pre-requisites.
Ensure that all the setups pertaining to Netting are in place.
Ensure that all the packages related to FUN% are Valid and none are in Invalid Status. Once can use the below mentioned SQL to identify the netting related Invalid objects:
SELECT object_name, object_type, owner, status
FROM dba_objects
WHERE status = 'INVALID'
AND object_name LIKE 'FUN%'’
There are a few known issues with Netting. The error is normally encountered while submitting the “Create Netting Batch” process or while running the “Submit Netting Batch” concurrent program.
Once either of these concurrent program errors out, check the log file from the Submit Concurrent Program window. Normally, the log file will give a generic message as ‘Unable to Create AR Receipt’ or ‘Error applying a Receipt’.
The cause of the issue will be normally based on some wrong setups or some invalid value passed via the Netting Agreement.
STEP1
The first step in the process of identifying the issue is by getting the debug log file. The debug messages from Netting will give a clear cut idea as of which place the program fails. Once the debug file is reviewed, the cause of the issue will normally be quite clear.
If the debug file does not give much information (Normally, the debug file will give the actual error), then resort to the second step.
STEP 2
The second step in debugging the issue is to get the version of the file ‘FUNNTTXB.pls’. We can use the below mentioned command to get the version of the file.
cd $FUN_TOP/patch/115/sql
Strings –a ‘FUNNTTXB.pls’ |grep ‘$Header’
Ensure that this file is on the current highest version available via metalink. Apply the patch to get to the latest version if you are not at the highest level.
If a Netting Batch is stuck in Error, it is normally not possible to change the status, in such cases, you can resort to a datafix by deleting the netting batch from the Backend.
STEP 3
Another issue which normally happens with Netting is the creation of another Receipt Method, AP/AR Netting(1) by the application of some of the Netting related Patches. This can be fixed with the help of a Datafix.
Please see the steps mentioned below to perform a Datafix once you are able to identify the existence of another Receipt method ‘AP/AR Netting(1)’.
By default, the Receipt method for Netting is ‘AP/AR Netting’ and the id associated with it is ‘-1’. The below mentioned datafix will remove the ‘AP/AR Netting(1)’ and will replace the id of ‘AP/AR Netting’ as –1. Also, it will remove the reference of ‘AP/AR Netting(1)’ from the dependent tables.
The datafix is as below:
--Backup
CREATE TABLE receipt_class_bkp2 AS
SELECT *
FROM ar_receipt_classes
WHERE receipt_class_id = -1;
CREATE TABLE receipt_method_bkp2 AS
SELECT *
FROM ar_receipt_methods
WHERE receipt_method_id = -1;
CREATE TABLE rec_method_acct_bkp2 AS
SELECT *
FROM ar_receipt_method_accounts_all
WHERE receipt_method_id = -1
--Delete
DELETE FROM ar_receipt_classes
WHERE receipt_class_id = -1;
DELETE FROM ar_receipt_methods
WHERE receipt_method_id = -1;
DELETE FROM ar_receipt_method_accounts_all
WHERE receipt_method_id = -1;
COMMIT;
--Update
UPDATE ar_receipt_methods
SET name = 'AP/AR Netting',
receipt_method_id = -1,
receipt_class_id = -1
WHERE receipt_method_id = 1;
UPDATE ar_receipt_method_accounts_all
SET receipt_method_id = -1
WHERE receipt_method_id = 1;
UPDATE ar_receipt_classes
SET receipt_class_id = -1
WHERE receipt_class_id = 1
COMMIT;
This will ensure that you do not have any occurrence of ‘AP/AR Netting(1)’ in the instance.
Now, the next step is to identify any receipt with the ‘AP/AR Netting(1)’ in the receipt tables.
We can use the below mentioned query to identify the same.
SELECT cash_receipt_id,
receipt_number
FROM ar_cash_receipts_all
WHERE receipt_method_id = 1;
If this returns any rows, then probably the receipt will have Receipt Method as ‘AP/AR Netting(1)’.
In order to rectify this receipt, perform the below mentioned datafix.
--Backup
CREATE TABLE bkup_tbl_cr_method AS
SELECT *
FROM ar_cash_receipts_all
WHERE cash_receipt_id IN
(SELECT cash_receipt_id
FROM ar_cash_receipts_all
WHERE receipt_method_id = 1);
--Update
UPDATE ar_cash_receipts_all
SET receipt_method_id = -1
WHERE cash_receipt_id IN
(SELECT cash_receipt_id
FROM ar_cash_receipts_all
WHERE receipt_method_id = 1);
COMMIT;
This should rectify all the receipts.
Most of the issues with Netting will get resolved once the above steps are followed. If you are still not able to resolve the issue, then log an SR with Oracle Support.
Overview of Oracle Warehouse System (WMS)
Muhammad Rafi Aamiri on Tuesday, October 26, 2010
Oracle Warehouse Management System (WMS) is advanced inventory module with lot of unique features that improves productivity of distribution centers, manufacturing or inventory handling facilities. Oracle WMS supports manual data entry, bar code readers scanning for data entry as well as Radio Frequency Identification (RFID) scanning. WMS can be enabled at Inventory organization level.
Key business processes supported by Oracle WMS:
- Inbound Logistics (Receiving, supplier returns, corrections)
- Stocking and internal inventory movements
- WIP Job assembly completion, component issues
- Outbound Logistics (pickimg, packing, shipping)
- Reverse logistics (customer returns)
License Plate Numbers (LPN) LPN is an object carries the location where it is residing and items that are holding. LPN need not be a physical object, it could be logical grouping. LPN simpley a group of items represented systematically. The major advantage of LPN is less number of transactions. Entire LPN can be transacted at once instead of by each line that LPN holds.
Material Status This is one of the beautiful features of WMS, you can assign status to an item, lot or serial number. Each status is defined with a list of permissble transactions. Eg. if you have status called ‘No Sale’ and set the rules such that shipping is not allowed but all other internal inventory movements are allowed. Material status can enforce this kind of business rules.
Label printing WMS partially supports this fucntionality. You can define label formats and fields (data) needed, you can associate this with WMS rules to print the label automatically. WMS can generate xml output, but you need a 3rd party label printing/formatting tool to actually print.
Cost groups This is another major functionality offered by WMS module. In standard Inventory module Inventory valuation accounts are derived by subinventory setups. In WMS based on cost group rules you can have different valuations independent of subinventories.
Putaway Rules When a matrial is received you need to receive into stock. In a major distribution center it is often complex to know where to store the material. WMS offers putaway rules that can be setup based son business criteria. Eg. If all hazarad material categy must be received into hazardous area then putaway rules can be setup.
WMS Rules engine WMS rules engine enforces the rules defined for putaway, cost group or label printing. You can simulate the results based on set of rules defined.
Overview of Demantra Demand Management
Muhammad Rafi Aamiri on Monday, October 25, 2010
Demantra is a recent acquisition of Oracle, since then Oracle is strategically positioning Demantra in place of Oracle Demand Planning module that was earlier developed by Oracle.
Demand Management covers forecasting of demand using statistical techniques and sales and operations planning to facilitate consensus demand and supply planning. Demand Management consist of three modules that can be licensed and implemented separately.
- Demand Management (DM)
- Advanced Forecasting & Demand Modeling (AFDM)
- Real-Time Sales and Operations Planning (RTSOP)
Demantra Demand Management Demand management helps in understanding historical demand and predicting the future demand. Demand management cycle consists of
- Collecting historical data
- Generating forecast
- Review and approve forecast
- Publish the forecast
- Analyze the forecast accuracy
Demantra Advanced Forecasting & Demand Modeling This is extended module for demantra demand management. It supports six more forecasting methods listed below
- Auto and Linear Regression (ARIX)
- Auto Regressive Logistic (ARLOGISTIC)
- Dual Multiplicative Linear Regression (DMULT)
- Multiplicative Monte Carlo Regression for Intermittent
- Multiplicative Monte Carlo Regression for Logistic (LOGISTIC)
- Multiplicative Monte Carlo Regression for Modified Ridge Regression (MRIDGE)
Demantra Real-Time Sales & Operations Planning Sales and Operations Planning brings different functions to collaborate in business demand and supply and operational planning. It consists of four critical steps
- Demand Review
- Supply Review
- Finance Review
- Executive Review
EMail XML Publisher Output
Muhammad Rafi Aamiri on Sunday, October 24, 2010
To implement this functionality, we would have to know the following:
1. The concurrent request id of the program that is tied to an xml publisher defined layout
2. The path and name of the output file that is generated by the output post processor for the concurrent request
3. An email utility that can mail the generated output as an attachment
It is quite obvious for us to know from where to pick up the request id. It would be interesting to know the name of the file and the path where the xml publisher generated output is stored.
Let us assume that we have a concurrent request that is tied to an xml publisher layout which will format the output to a PDF document. When the concurrent request completes its run, it generates 2 output files in this case. The first file is the xml data file and the second file is the pdf file. Both the files get generated and stored in the usual $APPLCSF/$APPLOUT path.
What is of interest here is the file name given to the pdf file. This file name looks to be a combination of the XML publisher definition code, the request id and a running number. How do we get to know this filename from within oracle?
There is a table named FND_CONC_REQ_OUTPUTS that stores the request id, dir path and the file name, filesize and so on. This is the table that we use to read the file name from after looking it up with a particular request id. Once this is done, we are all set to email the file as an attachment. How do we do it from within oracle?
Oracle provides us with a PL/SQL wrapper named SendMailJPkg for its internal java mail utility that is loaded into the database. We can use this to send the email and the contents of the pdf file as an attachment. The utility has a method named SendMail. This method has a list of parameters which are pretty straightforward to lookup and understand. The last parameter is a pl/sql table named attachments. We can send multiple attachments using this pl/sql table type parameter. In our case, to send the pdf as an attachment, we would simply have to instantiate one element in the pl/sql table and pass the file name including the path as a value to the element. Set all the other appropriate param values and call the method. The pdf file would land up nicely in the user's inbox.
1. The concurrent request id of the program that is tied to an xml publisher defined layout
2. The path and name of the output file that is generated by the output post processor for the concurrent request
3. An email utility that can mail the generated output as an attachment
It is quite obvious for us to know from where to pick up the request id. It would be interesting to know the name of the file and the path where the xml publisher generated output is stored.
Let us assume that we have a concurrent request that is tied to an xml publisher layout which will format the output to a PDF document. When the concurrent request completes its run, it generates 2 output files in this case. The first file is the xml data file and the second file is the pdf file. Both the files get generated and stored in the usual $APPLCSF/$APPLOUT path.
What is of interest here is the file name given to the pdf file. This file name looks to be a combination of the XML publisher definition code, the request id and a running number. How do we get to know this filename from within oracle?
There is a table named FND_CONC_REQ_OUTPUTS that stores the request id, dir path and the file name, filesize and so on. This is the table that we use to read the file name from after looking it up with a particular request id. Once this is done, we are all set to email the file as an attachment. How do we do it from within oracle?
Oracle provides us with a PL/SQL wrapper named SendMailJPkg for its internal java mail utility that is loaded into the database. We can use this to send the email and the contents of the pdf file as an attachment. The utility has a method named SendMail. This method has a list of parameters which are pretty straightforward to lookup and understand. The last parameter is a pl/sql table named attachments. We can send multiple attachments using this pl/sql table type parameter. In our case, to send the pdf as an attachment, we would simply have to instantiate one element in the pl/sql table and pass the file name including the path as a value to the element. Set all the other appropriate param values and call the method. The pdf file would land up nicely in the user's inbox.
Overview of Work in Progress (WIP)
Muhammad Rafi Aamiri on Thursday, October 21, 2010
Oracle WIP module facilitates in creating WIP job or work order to manufacture the goods. Oracle WIP supports discrete, repetitive, project and assemble-to-order (ATO) type of work orders.
Non-standard WIP Job When the material and resources needed to manufacture is not pre-determined or pre-calculated then non-standard WIP job can facilitate issuing material and resources as needed. Prototype manufacturing is a good example to this.
WIP Accounting Classes Accounting class is a setup that have pre-defined list of valuation and variance accounts. Each discrete job is assigned with a accounting class.
Out-Side-Processing (OSP) With more and more industries are moving towards Outsourcing or contract manufacturing, ERP systems should have functionality to send goods out and receive back after performing certain operations. Oracle WIP module have Out side processing (OSP) functionality to support this.
Work Order Less Completion (WOLC) This is an alternative to standard discrete job. In this method on-hand can be increased by performing WOLC transaction instead of creating a WIP Job. This functionality will be very useful if you are using other legacy system as your shop floor manufacturing tool and WIP is used for inventory tracking purpose.
Backflushing When you manufacture a job or assembly you need to issue material or resources to the job, this can be done in two ways. Manually issuing or automatically backflushing. Backflushing deducts reduces the onhand of sub components and updates configuration of assembly being manufactured as components issued.
Overview of Oracle Shipping
Muhammad Rafi Aamiri on Sunday, October 10, 2010
PICK RELEASE Pick release is an activity to confirm picking of goods from stock and keeping aside for shipping to a sales order. Normally pick release happens based on scheduled ship date on sales order. Pick release process can be done manually or automatically scheduled. Once pick release is activated it normally prints Pick ticket or Pick Slip for warehouse personnel to pick the material. Pickslip displays the information like Item, quantity, location from where it should be picked and destination place where it should be moved (eg. docking station). Pick release doesn’t decrements the onhand inventory but it decrements the available inventory for next picking.
DELIVERY Delivery is a batch of sales order lines grouped together based on some criteria (criteria could be shipto location, sales order etc). Delivery can be automatically created by system during pick release or it can be manually created.
TRIP Trip is primarily the shipment routing plan, it has pick up location and drop off location. Most of the cases multiple deliveries can be grouped under a trip.
SHIP CONFIRM It is an activity where it is confirmed systematically that goods are shipped from the warehouse that finaly reduces the onhand quantity and updates the install base with customer & sales order details.
APPS Template Form
Muhammad Rafi Aamiri on Tuesday, October 5, 2010
The TEMPLATE form is the starting point for all development of new forms. The first step in creating a form for use in Oracle Applications is to copy the template form from $AU_TOP/forms/US, to a local directory and renaming it.
The Template form is unique because it contains some special libraries and triggers that render the application using the template form some standard characteristics.
<< Click the image to enlarge >>
The components of the template form are:
References to object groups The template form contains platform–independent references to
predefined standard object groups in the APPSTAND form. STANDARD_PC_AND_VA,
STANDARD_TOOLBAR, and STANDARD_CALENDAR.
predefined standard object groups in the APPSTAND form. STANDARD_PC_AND_VA,
STANDARD_TOOLBAR, and STANDARD_CALENDAR.
Libraries The template form contains platform–independent attachments of several libraries
(including FNDSQF, APPCORE, and APPDAYPK).
(including FNDSQF, APPCORE, and APPDAYPK).
Special Triggers The template form contains several form–level triggers with required code.
These are responsible for standard the behavior of the form.
These are responsible for standard the behavior of the form.
Predefined Program Units The template form contains predefined program units that include a
spec and a body for the package APP_CUSTOM, which contains default behavior for window
opening and closing events.
spec and a body for the package APP_CUSTOM, which contains default behavior for window
opening and closing events.
Applications Color Palette The template form contains the application color palette. This gives
the forms developed using the template form the look and feel of Oracle Applications.
the forms developed using the template form the look and feel of Oracle Applications.
Many referenced objects (from the object groups) that support the Calendar, the toolbar,
alternative regions, and the menu. These objects include LOVs, blocks, parameters, and property
classes, and so on.
alternative regions, and the menu. These objects include LOVs, blocks, parameters, and property
classes, and so on.
The TEMPLATE form contains sample objects that can be seen as examples for the expected
layout cosmetics. These samples can be completely removed from the form later as they are only
examples and are not required. The following objects are the samples and can be removed
layout cosmetics. These samples can be completely removed from the form later as they are only
examples and are not required. The following objects are the samples and can be removed
Blocks : BLOCKNAME, DETAILBLOCK
Window : BLOCKNAME
Canvas View : BLOCKNAME
Hence, the template form comes along with many attachments, predefined program units, and defined visual attributes as well as examples that not only give the forms that are developed using the template.fmb a standard look and feel, but also make t easier to develop forms with consistent and standard functionality.
Libraries in the Template form
As stated above, the template form contains platform–independent attachments of several libraries. These libraries are used while running the form as a part of Oracle Applications. Hence, these libraries should not be changed or modified. There are three main libraries that are attached to the template form:
<< Click the image to enlarge >>
APPCORE APPCORE contains the packages and procedures that are responsible for the standard ‘Oracle Applications’ behavior of the forms. The forms have to support the menu, toolbar, and other required standard behaviors in compliance with oracle applications. The Oracle Applications forms also have to display specific runtime behaviors in accordance with the Oracle Applications Interface Standards, such as the way in which fields are enabled, behaviors of specific types of windows etc. APPCORE contains the procedures to support this standard runtime behavior. APPCORE also contains various other utilities for exceptional handling, message levels, and so on.
APPDAYPK: The APPDAYPK library contains the packages that control the Oracle Applications Calendar feature. The calendar (or the date picker) is a utility that oracle apps provide to pick the dates for a date type field.
FNDSQF: FNDSQF contains packages and procedures for Message Dictionary, flexfields, profiles, and concurrent processing. It also has various other utilities for navigation, multicurrency, WHO, etc.
Other Libraries The template form also contains a few other libraries that are not linked directly to the template form, but are linked to the three libraries listed above. Although, while using the form it makes no difference whether the library is linked directly to template or to another library that is linked to template. These are discussed below.
CUSTOM library: The CUSTOM library (CUSTOM.pll) is probably the most widely used and customized in the libraries attached to the template form. This library allows extension of Oracle Applications forms without modification of Oracle Applications code. Any form goes to the CUSTOM.pll whenever any event fires on the form. Code can be written in the CUSTOM.pll with the logic branching based on the form, block and trigger on which you want it to run.
We can use the CUSTOM library for customizations such as Zoom (such as moving to another form and querying up specific records), enforcing business rules (for example, vendor name must be in uppercase letters), and disabling fields that do not apply for your site.
GLOBE The GLOBE library allows Oracle application developers to incorporate global or regional features into Oracle Applications forms without modification of the base Oracle Applications form. Oracle Applications sends events to the GLOBE library. Regional code can take effect based on these events. The GLOBE library calls routines in the JA, JE, and JL libraries.
VERT The VERT library allows Oracle Applications developers to incorporate vertical industry features (for automotive, consumer packaged goods, energy, and other industries) into Oracle Applications forms without modification of the base Oracle Applications form. Oracle Applications sends events to the VERT library. Vertical industry code can take effect based on these events. The VERT library calls routines in various other libraries.
JA The JA library contains code specific to the Asia/Pacific region and is called by the GLOBE library.
JE The JE library contains code specific to the EMEA (Europe/ MiddleEast/ Africa) region and is called by the GLOBE library.
JL The JL library contains code specific to the Latin America region and is called by the GLOBE library.