Common Queries - Responsibility

on Friday, September 25, 2009

List of Responsibilities

SELECT (SELECT application_short_name
FROM   fnd_application fa
WHERE fa.application_id = frt.application_id) application,
          frt.responsibility_id, frt.responsibility_name
FROM  apps.fnd_responsibility_tl frt;

Menus associated with Responsibility

SELECT DISTINCT a.responsibility_name, c.user_menu_name
FROM    apps.fnd_responsibility_tl a,
           apps.fnd_responsibility b,
           apps.fnd_menus_tl c,
           apps.fnd_menus d,
           apps.fnd_application_tl e,
           apps.fnd_application f
WHERE  a.responsibility_id(+) = b.responsibility_id
AND      a.responsibility_name p_responsbility_name
AND      b.menu_id         =   c.menu_id
AND      b.menu_id         =   d.menu_id
AND      e.application_id  =   f.application_id
AND      f.application_id   =   b.application_id
AND      a.LANGUAGE      =   'US';

Sub Menus and Function attached to this Main Menu

SELECT c.prompt, c.description
FROM    apps.fnd_menus_tl a, fnd_menu_entries_tl c
WHERE  a.menu_id             = c.menu_id
AND      a.user_menu_name = p_menu_name;

Assigned Responsibility to a User

SELECT  DISTINCT
            u.user_id ,SUBSTR (u.user_name, 1, 30)  user_name
           ,SUBSTR (r.responsibility_name, 1, 60)     responsibility
           ,SUBSTR (a.application_name, 1, 50)       application
FROM    fnd_user u,
           fnd_user_resp_groups g,
           fnd_application_tl a,
           fnd_responsibility_tl r
WHERE  g.user_id(+)                         =   u.user_id
AND      g.responsibility_application_id  =   a.application_id
AND      a.application_id                     =   r.application_id
AND      g.responsibility_id                  =   r.responsibility_id
ORDER BY SUBSTR (user_name, 1, 30),
SUBSTR (a.application_name, 1, 50),
SUBSTR (r.responsibility_name, 1, 60);

Responsibility and attached Request Groups

SELECT    responsibility_name responsibility,request_group_name,frg.description
FROM       fnd_request_groups frg, fnd_responsibility_vl frv
WHERE     frv.request_group_id = frg.request_group_id
ORDER BY responsibility_name;

Request attached to Responsibility Listing


SELECT    responsibility_name, frg.request_group_name
             ,fcpv.user_concurrent_program_name, fcpv.description
FROM       fnd_request_groups frg, fnd_request_group_units frgu,
              fnd_concurrent_programs_vl fcpv, fnd_responsibility_vl frv
WHERE     frgu.request_unit_type  =  'P'
AND         frgu.request_group_id   =  frg.request_group_id
AND         frgu.request_unit_id     =  fcpv.concurrent_program_id
AND         frv.request_group_id    =  frg.request_group_id
ORDER BY responsibility_name;

All Request with Application


SELECT  fa.application_short_name, fcpv.user_concurrent_program_name,
            description,DECODE (fcpv.execution_method_code,
            'B', 'Request Set Stage Function',
            'Q', 'SQL*Plus',
            'H', 'Host',
            'L', 'SQL*Loader',
            'A', 'Spawned',
            'I', 'PL/SQL Stored Procedure',
            'P', 'Oracle Reports',
            'S', 'Immediate',
            fcpv.execution_method_code
            ) exe_method,
            output_file_type, program_type, printer_name,minimum_width,
            minimum_length, concurrent_program_name,concurrent_program_id
FROM    fnd_concurrent_programs_vl fcpv, fnd_application fa
WHERE  fcpv.application_id = fa.application_id
ORDER BY description

Request Status Listing


SELECT  f.request_id
           ,pt.user_concurrent_program_name user_concurrent_program_name
           ,f.actual_start_date actual_start_date
           ,f.actual_completion_date actual_completion_date
           ,floor(((f.actual_completion_date-f.actual_start_date)*24*60*60)/3600)
           || ' HOURS ' ||
           floor((((f.actual_completion_date-f.actual_start_date)*24 *60*60)
           - floor(((f.actual_completion_date-f.actual_start_date)*24*60 *60)/3600)
                                                                                               *3600)/60)
           || ' MINUTES ' ||
            round((((f.actual_completion_date-f.actual_start_date)*24*60*60)
           - floor(((f.actual_completion_date-f.actual_start_date)*24*60*60)/ 3600)
                                                                                                      *3600
           - (floor((((f.actual_completion_date-f.actual_start_date)*24*60*60)
           - floor(((f.actual_completion_date-f.actual_start_date)*24*60*60)/3600)
                                                                                     *3600)/60)*60) ))
           || ' SECS ' time_difference,
DECODE
           (p.concurrent_program_name,'ALECDC'
           ,p.concurrent_program_name||'['||f.description||']'
           ,p.concurrent_program_name) concurrent_program_name
           ,decode(f.phase_code,'R','Running','C','Complete',f.phase_code) Phase
           ,f.status_code
FROM    apps.fnd_concurrent_programs p
           ,apps.fnd_concurrent_programs_tl pt
           ,apps.fnd_concurrent_requests f
WHERE  f.concurrent_program_id = p.concurrent_program_id
AND      f.program_application_id = p.application_id
AND      f.concurrent_program_id = pt.concurrent_program_id
AND      f.program_application_id = pt.application_id
AND      pt.language = USERENV('Lang')
AND      f.actual_start_date IS NOT NULL;

Overview of Fixed Asset

on Thursday, September 17, 2009

INTRODUCTION

Oracle Fixed Assets is fully integrated with other modules so that data input in Purchasing, Payables and Projects will flow through Fixed Assets into the General Ledger. This also means that any asset can be queried and the source information obtained by drilling down to find details of invoices. You can perform most of your transactions in Oracle Assets using just three windows: the Assets Workbench, Mass Additions Workbench, and Tax Workbench.

ADDITIONS

The majority of assets should come via the Purchasing, Payables / Project modules using the Mass Additions / Interface Supplier Costs process. There may be a few occasions when manual additions are required. Ordinary assets can be quickly entered using Quick Additions. Detailed Additions can be used to handle more complex assets as follows:

· Assets with a salvage value.
· Assets with more than one assignment.
· Assets with more than one source line.
· Assets that Category defaults do not apply.
· Subcomponents Assets.
· Leased assets and Leasehold Improvements.

DEPRECIATION

Default depreciation rates can be set up for each asset category and also can be overridden in special cases. Before running depreciation you can change any field but after running depreciation you can only change asset cost and depreciation rate. You then can choose whether to amortize the adjustment or expense it.

RETIREMENT

You can retire an entire asset or you can partially retire an asset. You can also use Mass Retirements to retire a group of assets at one time.

TAX BOOK MAINTENANCE

Oracle Assets allows you to copy your assets and transactions from your corporate book to your tax books automatically using Initial / Periodic Mass Copy. You can create as many tax books as you need, maintain your asset information in your corporate book, and then update your tax books with assets and transactions from your corporate book.

PREPAID SERVICES


To record warranty and maintenance information into Oracle Assets, a purchase order must be created and the data input will flow into Payables with the proper prepaid account. Prepaid accounts are maintained in the general ledger and amortized over the period of coverage; however, the accounts charged are based on the designated account(s) for the prepaid services. The charges into the Fixed Assets account and asset category is based on the monthly charges from the monthly amortization of the prepaid services.

CAPITALIZED LEASES vs. OPERATING LEASES

Oracle Assets allows you to test leased assets in accordance with generally accepted accounting principles to determine whether to capitalize and depreciate your leased assets. Lease Capitalization Test: (1) the ownership of the asset transfers to the lessee at the end of the lease (2) a bargain purchase option exists (3) the term of the lease is more than 75% of the economic life of the leased asset (4) the present value of the minimum lease payment exceeds 90% of the fair market value of the asset at lease inception.

Regarding Operating leases, Fixed Assets tracks your payments under operating leases, or leases that do not meet any of the criteria, for informational purposes. You can use this information to create a schedule of future minimum payments under operating leases, information that may require disclosure in the footnotes of your financial statements.

Period-End Process

· Ensure All Assets have been Properly Assigned.
· Copy New Assets Entries into Tax Books.
· Run Depreciation for the Corporate Book.
· Create Journal Entries.
· Post Journal Entries to the General Ledger.

Increasing Auto Invoice Performance

on Tuesday, September 8, 2009

The performance of Auto Invoice is affected by several factors. Checking the following could improve performance considerably.


When using the interface_line_attribute fields, create indexes on RA_INTERFACE_LINES_ALL for these fields. Use the minimum number of interface_line_attribute fields.

Some installations use RA_INTERFACE_DISTRIBUTIONS_ALL to populate accounting details while populating segments instead of code combination IDs. In this instance, create an index for segments to improve performance.

If possible, populate all the code IDs for the RA_CUSTOMER_TRX_TYPES_ALL, MTL_SYSTEMS_ITEMS, and RA_TERRITORIES tables in RA_INTERFACE_LINES_ALL instead of passing values.

When loading more than 5,000 invoices, split them into batches of 5,000. A batch of more than 5,000 rapidly decreases Auto Invoice performance.


For a batch with 3,000 to 5,000 invoices, run more than one instance of AutoI nvoice by giving a value between five and eight in the Number of Instances field in the Auto Invoice Run screen. This will split your data into five to eight batches (and five to eight import programs), increasing performance.


The amount of memory allocated to Auto Invoice for validation can affect performance. \Navigate System System Options Invoice and Customers and enter three MB in the Max Memory (In Bytes) field.


SQL*Trace to uncover bottleneck areas.