Friday, December 18, 2009

XML Publisher Template(RTF) Creation and Grouping Data Using XML/BI Publisher Desktop for Word

Prereq and Downloads
  • XMLP_Desktop 5.5/BI Publisher Desktop 10.1.3.4.1 for Windows add-on must be installed on your machine.
    • You can download "BI Publisher Desktop 10.1.3.4.1 for Windows"(123 MB) from below link.
    • http://www.oracle.com/technology/software/products/publishing/index.html
    • Run BIPublisherDesktop.exe 

    Summary Steps and Sample Downloads:
    1.Extract XML data from CP/Create your own sample XML data (HGXMLP-DATA.xml)
    2.Create layout and group data in new template(RTF) file (HGXMLP-TP.rtf)
    3.Preview output in PDF/HTML/RTF/XML (HGXMLP-OUT.pdf)

    Step 1: Extract XML data from CP/Create your own sample XML data(HGXMLP-DATA.xml)
    Extract XML data from CP
    1.Open any existing concurrent program definition and change the Output:Format to XML.
    2.Run CP. Save output(which comes in XML).
    Or        
    Create your own sample XML Data(HGXMLP-DATA.xml)

    Step 2: Create template layout and group data in the template(RTF) file(HGXMLP-TP.rtf)
    1.Install XMLP_Desktop 5.5/BI Publisher Desktop 10.1.3.4.1
    2.Open new MS Word document. You can see new Menus added in tool bar by BI Publisher Desktop.
    3.Click menu Data->Load XML Data. Select file HGXMLP-DATA.xml created in Step 1. You will get message 'Data Loaded Successfully'
    4.Click menu Insert->Table/Form. It opens screen 'Insert Table/Form'.
    Data Source: Data Source shows hierarchy of the nodes present in your xml data file(HGXMLP-DATA.xml)
    Template: Template shows hierarchy of the nodes you selected to show in a template layout
    Properties: Each node Style, Sort By, Grouping, Sort Order, etc.
    Preview: You can see preview of the layout while adjusting nodes.
    5.Drag nodes from Data Source tree to Template to create table structure. When you do drag and drop, it asks for "Drop Single Node", "Drop All Nodes", "Cancel".
    6.Select "Drop All Nodes".
    7.To group invoices by VENDOR, select node 'Invoice' and set properties Style to 'FreeForm', Grouping to 'VENDOR' in Properties window.
    8.To group invoices under vendor by Invoice_Date, select node 'Vendor' and set properties Style to 'Table', Grouping to 'INVOICE_DATE' in Properties window.
    9.Click Ok button. You will see the table layout on the document.
    10. Now add Heading and Footer to the report and save as rtf file(HGXMLP-TP.rtf). Template is ready.

    Step 3: Preview output in PDF/HTML/RTF/XML..(HGXMLP-OUT.pdf)
    1.Open HGXMLP-TP.rtf created in Step 2.
    2.Click menu Data->Load XML Data and select xml data file HGXMLP-DATA.xml created in Step 1.
    3.Click menu Preview->PDF to see the output.

    4.Output(Shows invoices order by vendor name and invoice date in PDF format)

    Wednesday, December 9, 2009

    What is Revaluation in GL

    Revaluation adjusts liability or asset accounts that may be materially understated or overstated at the end of a period due to a fluctuation in the exchange rate between the time the transaction was entered and the end of the period.

    Revaluation is performed only on Assets and Liabilities.

    1. Revaluations are typically used to update foreign currency balances that will be cleared or settled at future date to the current exchange rates. An example of this is Accounts Payable. If you have an invoice that is over 60 days old, and the exchange rate has had a material change, you will want to revalue this balance to the current exchange rate.

    2. Revaluations on Fixed Assets is useful to accurately describe true value of the goods after some period of time. This brings fair market value of your fixed assets in current period.

    Example:

    On 01-Dec-2009
    -Functional Currency is USD
    -Foreign Currency is ABC
    -Conversion Rate is 2.
    -Created invoice for 100 ABC, validated and accounted. Not Paid.

    Accounting..
                                               EnteredAmount(ABC)   AccountedAmount(USD)
    ItemExpenseA/C---------Dr----100---------------------200
    LiabilityA/C--------------Cr----100---------------------200

    As per the above journal lines on 01-Dec-2009, customer is liable to pay 200 USD to the supplier.

    -End of the period, conversion rate has been changed to 2.5.
    -So customer's liability will get increased to 250 USD(100*2.5).
    -So customer suppose to pay 250 USD instead of 200 USD to the supplier.
    -This is the true liability at the end of the period and this need to be reflected in customer's General Ledger. Loss 50 USD should be populated in Loss account.
    -Revaluation adjusts these amounts and keeps gain/loss amounts in UnrealizedGain/Loss accounts defined in Revaluation window.

    You can define and run revaluation as shown below
    Navigation Path: General Ledger->Currency->Revaluation
    It is two step process.
    1. Define Revaluation(one time job)
    2. Run CP 'Program - Revalue Balances'


    Monday, December 7, 2009

    Prepayment Invoices

    A prepayment is a type of invoice you enter to make an advance payment to a supplier or employee. You can enter two types of prepayments: Temporary and Permanent.

    Temporary prepayments can be applied to invoices or expense reports you receive. For example, you use a Temporary prepayment to pay a hotel a catering deposit. When the hotel's invoice arrives, apply the prepayment to the invoice to reduce the invoice amount you pay.

    Permanent prepayments cannot be applied to invoices. For example, you use a Permanent prepayment to pay a lease deposit for which you do not expect to be invoiced.


    Include Prepayment in Invoice:
    You can enter supplier invoices where the invoice amount includes prepayments. If you receive a supplier invoice, and the invoice amount has been reduced because of prepayments that the supplier has received, you need to indicate that the invoice amount includes one or more prepayments.

    Example:
    Prepay Invoice:    200$
    Standard Invoice: 500$

    Case 1: If you apply Prepay on Standard invoice with 'Apply' check box checked in Apply/Unapply window
    Result on Standard Invoice after apply Prepay
    Header
       Invoice Amount: 500$
       Paid Amount :    200$
    Distributions
       Item                 500$
       Prepay             -200$
    In this case distribution total is 500 not 300 and amount paid is 200, remaining amount to pay is 300.

    Case 2: If you apply Prepay on Standard invoice with both check boxes selected in Apply/Unapply window
    Result on Standard Invoice  after apply Prepay
    Header
       Invoice Amount:  300$
       Paid Amount :        0$
    Distributions
       Item                  500$
       Prepay              -200$    'Prepayment on Invoice'-Checked
    In this case distribution total is 300 because prepay is part of Std invoice. Amount to pay is 300.
    Note: Because the Distribution Total includes prepayments, you need to ensure that you have applied prepayments before you submit the invoice for Invoice Validation.


    Points To Note:
    1. Settlement date: The date after which the prepayment can be applied to an invoice.
    2. On a prepayment, you can enter any number of distributions, either manually, or automatically by purchase order matching, distribution sets, or allocating. 
    3. You can take discounts on prepayments.
    4. You can create Foreign Currency Prepayments.
    5. You cannot partially pay a prepayment. you must fully pay it.
    6. You can apply prepay on the invoice type is Standard, Mixed, or Expense Report.
    7. You can apply only Item distributions from the prepayment.
    8. You must fully pay a prepayment before you can apply the prepayment to an invoice.
    9. If you want to apply Permanent type prepay then you can change the Prepayment Type to Temporary.
    10. Supplier, invoice currency and payment currency must be same on prepay and to invoice.
    11. If the prepayment has a value in the Prepayment PO Number field, then the invoice must be matched to the same purchase order.
    12. GL Date on Apply/Unapply window, which is the accounting date for the new Prepayment distributions that Payables creates when you apply a prepayment. This date must be after the latest accounting date on any distribution for either prepayment or invoice and must be in an open period.

    When the Rounding Account is used and when the Suspense Account is used?

    A. During Journal Import of a foreign currency journal
    1.If the currency conversion type in GL_INTERFACE is not provided, and the accounted amounts are provided, then any imbalance in the accounted amounts will go to Suspense.

    2.If the currency conversion type is provided in GL_INTERFACE for the  foreign currency journal, and the currency conversion type is User with a currency conversion rate of 1, then any imbalance in the accounted amounts will be posted to the Suspense account.

    3.If the currency conversion type is provided for a foreign currency journal, and it is not User with a rate of 1,  then and only then will the imbalance go to the rounding account.

    This is because when Journal Import and consequently Posting is presented  with user-defined accounted amounts, GL has no way of knowing the if the difference in the accounted amounts is due to suspense or rounding. Currently, we are assuming that the difference should go to suspense.

    B. In the Enter Journals form:
    1. If the user manually overrides the    accounted amounts, the assumption is that the difference in the accounted amounts is due to suspense and not rounding, since the user explicitly chose to override the accounted amounts.If you manually change the accounting amount the conversion_flag is set to  'N' in    the created headers, therefore, posting is rejecting the batch instead of balancing it by adding the rounding difference to a  journal lines.

    Source=>Note.340341.1

    Rounding Account in GL

    Payables creates journal entries in the transaction currency and your ledger currency for all invoices and payments. Payables continues to record gains and losses in the Gain/Loss Accounts you assign. When you pay invoices in a different currency than the payment currency, Payables uses the Rounding account that you define in the Currencies region of the Payables Options window to record the rounding error.

    For example, Your ledger currency is FRF and you enter an invoice in 1000 FRF and enter EUR as the Payment Currency. The Payment Amount converts to 152.53917 EUR, at the fixed conversion rate of 6.555693, and rounds to 152.54 EUR. The payment, converted back to your ledger currency is 1000.0054, which rounds to 1000.01. The .01 FRF difference is recorded in the Rounding account. The following shows the accounting entries for the previously described example.

    Invoice Accounting
    Item Expense -----------1000 Dr--------FRF
    Liability------------------1000 Cr---------FRF

    Payment Accounting:(Paid in EUR)
    Liability-----------------1000.01 Dr----FRF
    Cash--------------------152.54 Cr------EUR

    Liability------------------0.01 Cr---------FRF
    Rounding A/C-----------0.01 Dr---------FRF

    Sunday, December 6, 2009

    Suspense Account in GL

    Allows suspense posting of out-of-balance journal entries. If you have multiple companies or balancing entities within a ledger, General Ledger automatically creates a suspense account for each balancing entity. You can also define additional suspense accounts to balance journal entries from specific sources and categories using the Suspense Accounts window.

    Note that if you update the suspense account for the ledger, the default suspense account is updated in the Suspense Accounts window. Likewise, if you update the default account in the Suspense Accounts window, the account will be updated for the ledger. If you do not enter a suspense account, you can only post journal entries that are balanced.

    Some examples:
    Ex 1:
    Consider one wants to use the suspense account to collect payments when, for example, the destination account is unknown and when it is known to recycle it to the right account.

    Ex 2:
    Consider one needs to collect payments that must be allocated to multiple accounts. For example, a 1000$ check has been received from our distributor and this check is supposed to pay a 60$ bill on account 1, a 40$ bill on account 2, a 120$ bill on account 3 and so on. We may also want to use the suspense account to collect the payment as a repository of the global payment, and then recycle this global payment to the multiple destination accounts.


    Ex 3: 
    When you create accounting entries for cross-currency payments, the resulting accounting entry consists of two currencies: the invoice currency and the payment currency. Payables ensures that the entry balances in your ledger currency. The entry, however, does not balance in the entered currency. General Ledger identifies cross-currency entries created in Payables. These entries have a category of 'Cross-Currency'. For each of these entries, General Ledger separates the entries by currency before balancing them. General Ledger ignores the out of balance errors. Then General Ledger creates a balancing journal entry that is charged to a clearing account. A clearing account is called a 'Suspense Account' in Oracle General Ledger.

    Note: The entry to the clearing account will always be zero in your ledger currency because the journal entry already balances in your ledger currency. You do not need to enable suspense accounting for your ledger to create cross-currency payments in Payables. You only need to define a suspense account for journal entries created by cross-currency payments. When defining a Suspense Account for your ledger in the Suspense Accounts window in General Ledger, enter a source of Payables.

    Saturday, December 5, 2009

    What is Financial Statement Generator Reports (FSG)?

    Oracle General Ledger’s Fiancial Statement Generator (FSG) is a powerful and flexible tool you can use to build your own custom reports without programming.

    You can define custom financial reports, such as income statements and balance sheets, online with complete control over the rows, columns, and content of your report. You can control account assignments, headings, descriptions, format, and calculations in addition to the actual content. The reusable report components make building reports quick and easy. You can copy a report component from one report, make minor edits, then apply the report component to a new report without having to create a new report from scratch.

    What is Enterprise Planning and Budgeting (EPB)?

    An application built on the integrated multi-dimensional and relational technology in Oracle10g.
    An application for planning, budgeting, forecasting, reporting, monitoring, and analysis.
    An application that provides sophisticated data modeling and multi-dimensional analysis.
    A keystone of Oracle's CPM initiative.
    An application tailored for customer's own business processes.

    Types of reporting available in GL?

    Online Account and Transaction Analysis:
    Drilldown to account balances and journal entries to their source. For example, you can drill down from a Payables journal entry to the original transaction in Oracle Payables.

    Standard Reports and Listings:
    Oracle General Ledger provides over 70 different standard reports and listings to help you view financial and non-financial information.

    Financial Statement Generator reports:
    The Financial Statement Generator (FSG) is a powerful tool that allows you to create custom financial statements without programming.

    Web ADI Report Manager:
    With Report Manager, you can define reports graphically in Excel, then upload the report definitions to General Ledger as Financial Statement Generator (FSG) report objects. You can also download existing FSG reports, modify them in Report Wizard, then save the modified definition to General Ledger. You can select amounts from spreadsheet-based FSG reports and drill into the underlying financial information within Oracle Applications.

    Oracle Enterprise Planning and Budgeting:
    Use Oracle Enterprise Planning and Budgeting, Oracle's On Line Analytical Processing (OLAP) application, to perform in depth analysis, modeling, budgeting, reporting, and forecasting functions using General Ledger data without additional data entry.

    How to transfer data from Subledger to GL?

    Transferring information from Oracle subledgers is a two-step process:

    • Data is pushed into the GL_INTERFACE table from the subledger using a transfer program.
    • Then Journal Import pulls the information from the interface table to create valid, postable journal entries in General Ledger.

    When you initiate the transfer program from Oracle subledgers, such as Oracle Payables or Oracle Receivables, you can choose to also submit the Journal Import process. If you do not choose to run Journal Import from the subledger, you must run Journal Import separately in General Ledger, using the Import Journals window, in order to create postable journal entries.

    Friday, December 4, 2009

    Explain Flexfield Qualifiers in GL?

    Need to assign qualifiers to individual accounting key flexfield segments to identify or represent the purpose in COA.

    Natural Account Each Accounting Flexfield structure must contain only one natural account segment. When setting up the values, you will indicate the type of account as Asset, Liability, Owner's Equity, Revenue, or Expense.

    Balancing Account Each structure must contain only one balancing segment. Oracle General Ledger ensures that all journals balance for each balancing segment.

    Cost Center This segment is required for Oracle Assets. The cost center segment is used in many Oracle Assets reports and by Oracle Workflow to generate account numbers. In addition, Oracle Projects and Oracle Purchasing also utilize the cost center segment.

    Intercompany General Ledger automatically uses the intercompany segment in the account code combination to track intercompany transactions within a single ledger. This segment has the same value set and the same values as the balancing segment.

    R12 Encumbrance Accrual Accounting for PO and Invoice

    What is Budgetary Control?
    A method of systematically enforcing spending limits by ensuring availability of budgeted funds before approval of transactions, including pre-expenditures.

    What is Encumbrance?
    A method of tracking and controlling an organization’s spending from the very early stage of initial documented evidence showing intention to buy to the final stage of actual expenditure. It is a management tool used to reflect commitments in the accounting system and attempt to prevent overspending. Mostly Used by Government and Non-Profit Firms

    How it works?
    Once an encumbrance document(PO, Invoice..etc) is created, funds are set aside for the sole purpose of enabling the organization to pay for it. If funds are insufficient due to budget or previous commitments and expenditures, no new encumbrances can be entered, ensuring that budget will not be exceeded.

    Calculation of fund available
    F.A. = Budget – (Encumbrance + Actual)

    F.A. - Amount of money left in the account to spend
    Budget – Maximum amount that can be spend for the account
    Encumbrance – Reserved amount (Requisition, PO, invoice, and others)
    Actual – Amount liable to another party


    Encumbrance Accounting for documents PO and Invoice When accounting method Encumbrance Accrual is set
    Example:
    Budget is $1000
    Purchasing an item which costs $200
    Assume encumbrance is enabled for Purchase Orders and Invoices

    Fund available before transaction
       F.A. = Budget – (Encumbrance + Actual)
       F.A. = 1000   –  (0+0) = 1000

    Create a PO for $200.
       Application RESERVES the fund of $200 for PO
       PO  A/C------------------------200-----Dr
       RFE A/C------------------------200-----Cr
      
       F.A. = Budget – (Encumbrance + Actual)
       F.A. = 1000   - (200+0) = 800

    Created an Invoice for $200 and matched it to the above said PO and validate Invoice(bc_event and validation event get created).
       Step 1: Application REVERSES PO encumbrance accounting.
       PO  A/C------------------------200-----Cr
       RFE A/C------------------------200-----Dr
      
       Step 2: Application RESERVES the fund of $200 for Invoice(bc_event)
       Inv A/C------------------------200-----Dr
       RFE A/C------------------------200-----Cr

       F.A. = Budget – (Encumbrance + Actual)
       F.A. = 1000   - (200+0) = 800

    Run accounting for invoice actuals(Invoice Validation event).
       Step 1: Application REVERSES above Invoice encumbrances accounting(bc_event).
       Inv A/C------------------------200-----Cr
       RFE A/C-----------------------200-----Dr

       Step 2: Application creates original entries for invoice(Invoice Validation event).
       ItemExpenseA/C----------------200-----Dr
       LiabilityA/C---------------------200-----Cr

       F.A. = Budget – (Encumbrance + Actual)
       F.A. = 1000   - (0+200) = 800

    Note: Payment accounting may happen in two stages based on option selected in Payables->Setup->Options->PayablesOptions->AccountingOption tab->PaymentAccounting.
    Payment Accounting:
       Direct Pay-No Clearance
         Payment Time
         LiabilityA/C-------------------200----Dr
         CashA/C----------------------200----Cr

       Or

       Pay and Clear
         Payment Time
         LiabilityA/C-------------------200----Dr
         CashClearingA/C--------------200----Cr

         Clearing Time
         CashClearingA/C--------------200----Dr
         CashA/C----------------------200----Cr

    R12 Standard Accrual and Cash Accounting in Payables

    Standard Accrual
    In case of Standard Accrual, Invoice and Payment Accounting will be there.
    Reason: Transaction happens in two phases.
    1)Order goods and receive goods(Create PO, Create Receipt, Create Invoice and account it)
    2)Pay the amount for received goods within due time set by the supplier( Pay the invoice and account it)
    Since you are not paying the amount immediately, you need to keep track of the amount needs to pay to the supplier after phase one. You maintain this amount in LiabilityA/C(Cr). After second phase, you debit your LiabilityA/C and credit your CachA/C which shows your cash flow from your organization to the supplier.

    Here are the details of accounting for an item purchase of cost 100 dollars.

    Note: Payment accounting may happen in two stages based on option selected in Payables->Setup->Options->PayablesOptions->AccountingOption tab->PaymentAccounting.

    Accounting Method: Standard Accrual
    Invoice Accounting:
    ItemExpenseA/C----------------------100----Dr
    LiabilityA/C---------------------------100----Cr

    Payment Accounting:
      Direct Pay-No Clearance
        Payment Time
        LiabilityA/C------------------------100----Dr
        CashA/C--------------------------100----Cr
     
      Or

      Pay and Clear
        Payment Time
        LiabilityA/C------------------------100----Dr
        CashClearingA/C-------------------100----Cr

        Clearing Time
        CashClearingA/C------------------100----Dr
        CashA/C--------------------------100----Cr


    Standard Cash
    In case of Standard Cash, only payment accounting will be there.
    Reason: While purchasing an item you pay amount immediately to the supplier. So you don't have any debt to the supplier to record. so there is nothing to record in LiabiltyA/C.

    Here are the details of accounting for an item purchase of cost 100 dollars.

    Note: Payment accounting may happen in two stages based on option selected in Payables->Setup->Options->PayablesOptions->AccountingOption tab->PaymentAccounting.

    Accounting Method: Standard Cash
    No Invoice Accounting..
    No LiabiltiyA/C

    Payment Accounting:
      Direct Pay - No Clearance
        Payment Time
        ItemExpneseA/C------------------100----Dr
        CashA/C-------------------------100----Cr

      Or

      Pay and Clear
        Payment Time
        ItemExpneseA/C------------------100----Dr
        CashClearingA/C-----------------100----Cr
     
        Clearing Time
        CashClearingA/C-----------------100----Dr
        CashA/C-------------------------100----Cr

    Thursday, December 3, 2009

    Create XML Publisher Report(With out RDF file)

    Required Files:
    Template file: HGXPUBTEST.rtf
    Data Template: HGXPUBTEST.xml

    Output Files:
    Output in PDF: HGXPUBTEST_OUTPUT.pdf

    Define Concurrent Program
    Navigate to System Administrator->Concurrent->Program->Define
    Provide folliowing information as shown in the picture.
    Program: HG-XML Publisher Test Report
    Short Name: HGXPUBTEST
    Application: Payables
    Executable Name: XDODTEXE
    Format: XML

    Points To Note:
    1.Note down short name. We need to use this XML Publisher defintion to refer this CP.
    2.Select executable name as "XDODTEXE" if xml data source is data template(HGXPUBTEST.xml). Method is Java Concurrent Program. If you are generating xml data using Oracle Reports(RDF), then you must define executable(System Administrator->Concurrent->Program->Executables) for this CP and provide it's name in CP define window. Method will be Oracle Reports in this case.
    3.XML Publisher engine needs data input in XML format. So always select format is XML.( Final output will be PDF/RTF/HTML.. as selected by you in report submission.)
    4.If you want to see final output in XML format then you need set format type as Text instead of XML.

    CP definition looks like this after creation.


    Add new CP to the Request Group, then add Request Group to your Responsibilty.

    Create Data Definition
    Navigate to XML Publisher Administrator->Data Definitions
    Click Create Data Definition button.

    Provide folliowing information as shown in the picture.
    Code: HGXPUBTEST
    Name: HG-XML Publisher Test Report(your choice)
    Application: Payables(your choice)
    Click Apply
    In the second part of the same page upload file HGXPUBTEST.xml as the Data Template.
    Click Save.

    Points To Note:
    1.Value given in the Code field must be same as the short name of the CP 'HG-XML Publisher Test Report'.
    2.HGXPUBTEST.xml is the data template file which holds Paramters, Data Query, Triggers, Data Structure of the report.

    Definition looks like this after creation.

    Create Template
    Navigate to XML Publisher Administrator->Templates
    Click Create Template button.

    Provide folliowing information as shown in the picture.
    Code: HGXPUBTEST(your shoice)
    Name: HG-XML Publisher Test Report(your choice)
    Application: Payables(your choice)
    Type: RTF
    Data Definition: HG-XML Publisher Test Report
    Upload template HGXPUBTEST.rtf.
    Click Apply

    Template looks like this after creation.

    Submit Request
    If you want final output in different format(RTF, HTML, etc), click Options button and change the Format type. Default is PDF.

    CP Output(PDF)

    Wednesday, December 2, 2009

    Oracle Reports-Frequently Use SRW Functions

    SRW Package is a collection of PL/SQL constructs that provide developers with a suite of built-in functions, procedures, and exceptions that can be used in any of your libraries or reports. The following lists several of these constructs, and briefly describes how Applications uses them in reports.

    SRW.DO_SQL and SRW.DO_SQL_FAILURE
    When it is necessary to perform data definition statements (DDL), the SRW.DO_SQL packaged procedure must be used. You cannot perform DDL statements in PL/SQL. In conjunction with this, we use the SRW.DO_SQL_FAILURE
    exception which raises an error if the statement should fail.

    Example
    BEGIN
    SRW.DO_SQL('Create table Test...');
    EXCEPTION 
      when SRW.DO_SQL_FAILURE then
      .....
    END;

    SRW.MESSAGE
    This procedure allows developers to create their own messages and return them at runtime. It takes two arguments, a message number and message text. It can be used for error handling or debugging. Applications uses this feature to standardize and share messages across reports.

    Example
    SRW.MESSAGE('500','First debug point');

    SRW.USER_EXIT and SRW.REFERENCE
    Because Applications reports commonly call user exits it is critical that Oracle Reports support such calls. To facilitate this requirement the Package offers  SRW.USER_EXIT and SRW.REFERENCE. User exits may be called from any PL/SQL interface within a report, but it must be called with SRW.USER_EXIT. Furthermore, to ensure that the value of an object passed to the user exit contains the most recently computed or fetched value, SRW.REFERENCE will add the object to the user exit dependency list.

    Example
    BEGIN
    SRW.REFERENCE(:Currency_code);
    SRW.REFERENCE(:Currency_value);
    SRW.USER_EXIT('FND FORMAT CURRENCY CODE=":Currency_code"                         
                   AMOUNT=":Currency_value"                        
                   DISPLAY=":Currency_formatted"');
    RETURN(:Currency_formatted);
    EXCEPTION WHEN
    SRW.USER_EXIT_FAILURE THEN
    RETURN('FORMAT ERROR');
    END:

    Invoice Price Corrections In Payables

    Corrections enable you to adjust the invoiced price, quantity, or amount of previously matched purchase order shipments, distributions, or receipts. You can use a correction when a supplier sends an invoice for a change for an invoice you have already matched to a purchase order. Price corrections adjust the invoiced unit price of previously matched purchase order shipments, distributions, or receipts, without adjusting the quantity billed.

    The type of correction that you can make depends on the type of purchase order line you are correcting:
    • Goods. You can make price or quantity corrections.
    • Services. You can make amount corrections on all services, with the exception of Rate Services.
    • Rate Services. You can only make Quantity corrections for Rate Services.
    If the purchase order line is a Milestone, then you cannot enter corrections. In this case, you must completely reverse the invoice.

    To record a correction enter a Standard invoice to record a price increase, or enter a Credit Memo or Debit Memo to record a price decrease.

    For example, if the original unit price was $100.00 and quantity is 2 and the supplier is decreasing the price by $10.00, enter -10.00 in Unit Price field. If the invoice Type is Credit or Debit Memo, the value in the Unit Price field must be negative.

    Enter PO with quantity 2 and unit price 100

    Enter invoice HG-Std, match to PO 5765, validate and pay.

    To correct the unit price to 90, enter credit memo for same supplier and click Correction button. Provide standard invoice num HG-Std and click Find.

    In Price Corrections window, change Unit Price to -10 and tab out. Click Correct button.

    See the results in Invoice Lines and Invoice Distributions.

    Tuesday, December 1, 2009

    System Created Invoices/Creating Invoices Automatically in Payables

    Recurring Invoices
    You can set up your system to automatically create periodic invoices, for example, rent invoices.

    RTS Invoices
    If you use Return to Supplier feature in Oracle Purchasing, the system creates these debit memos directly in your Payables system.

    Retroactive Price Adjustment Invoices
    If Oracle Purchasing users use the Retroactive Pricing of Purchase Orders feature, the system automatically creates Adjustment and PO Price Adjustment invoices.
    • PO Price Adjustment Invoice: This invoice is for the difference in price between the original invoice and the new purchase order price.   PO price adjustment invoices can be matched to both purchase orders and invoices.
    • Adjustment Invoice: This invoice effectively reverses any outstanding regular Payables price corrections and PO Price Adjustment invoices. This is so the PO Price Adjustment document can be for only the price difference between the original invoice and the new PO price.
    Related Posts Plugin for WordPress, Blogger...