Monday, 28 October 2013

Item Conversion to Update Allow Description Update checkbox in Inventory for all Items in the Organization.

DECLARE
   l_item_tbl_typ                               ego_item_pub.item_tbl_type;
   x_item_table                                 ego_item_pub.item_tbl_type;
   x_inventory_item_id                          mtl_system_items_b.inventory_item_id%TYPE;
   x_organization_id                            mtl_system_items_b.organization_id%TYPE;
   x_return_status                              VARCHAR2 (1);
   x_msg_count                                  NUMBER (10);
   x_msg_data                                   VARCHAR2 (1000);
   x_message_list                               error_handler.error_tbl_type;
BEGIN
   --Setting FND global variables.
   --Replace MFG user name with appropriate user name.
   fnd_global.apps_initialize (1318
                             , 50583
                             , 401
                              );
   --FIRST Item definition
   l_item_tbl_typ (1).transaction_type := 'UPDATE';   -- Replace this with 'UPDATE' for update transaction.
   l_item_tbl_typ (1).inventory_item_id := 63;
   l_item_tbl_typ (1).organization_id := 204;
   l_item_tbl_typ (1).ALLOW_ITEM_DESC_UPDATE_FLAG := 'N';
   DBMS_OUTPUT.put_line ('=====================================');
   DBMS_OUTPUT.put_line ('Calling EGO_ITEM_PUB.Process_Items API');
   ego_item_pub.process_items (p_api_version        => 1.0
                             , p_init_msg_list      => fnd_api.g_true
                             , p_commit             => fnd_api.g_true
                             , p_item_tbl           => l_item_tbl_typ
                             , x_item_tbl           => x_item_table
                             , x_return_status      => x_return_status
                             , x_msg_count          => x_msg_count
                              );
   DBMS_OUTPUT.put_line ('==================================');
   DBMS_OUTPUT.put_line ('Return Status ==>' || x_return_status);

   IF (x_return_status = fnd_api.g_ret_sts_success)
   THEN
      FOR i IN 1 .. x_item_table.COUNT
      LOOP
         DBMS_OUTPUT.put_line ('Inventory Item Id :' || TO_CHAR (x_item_table (i).inventory_item_id));
         DBMS_OUTPUT.put_line ('Organization Id   :' || TO_CHAR (x_item_table (i).organization_id));
      END LOOP;
   ELSE
      DBMS_OUTPUT.put_line ('Error Messages :');
      error_handler.get_message_list (x_message_list      => x_message_list);

      FOR i IN 1 .. x_message_list.COUNT
      LOOP
         DBMS_OUTPUT.put_line (x_message_list (i).MESSAGE_TEXT);
      END LOOP;
   END IF;
   DBMS_OUTPUT.put_line ('==================================');
EXCEPTION
   WHEN OTHERS
   THEN
      DBMS_OUTPUT.put_line ('Exception Occured :');
      DBMS_OUTPUT.put_line (SQLCODE || ':' || SQLERRM);
      DBMS_OUTPUT.put_line ('=====================================');
END;

Tuesday, 3 September 2013

Order Management tables

Order Management Tables - 11i


Order Management Tables.
Entered
oe_order_headers_all 
1 record created in header tableoe_order_lines_all Lines for particular records
oe_price_adjustments 
When discount gets applied
oe_order_price_attribs 
If line has price attributes then populated
oe_order_holds_all 
If any hold applied for order like credit check etc.

Booked
oe_order_headers_all 
Booked_flag=Y Order booked.wsh_delivery_details Released_status Ready to release

Pick Released 
wsh_delivery_details Released_status=Y Released to Warehouse (Line has been released to Inventory for processing)
wsh_picking_batches 
After batch is created for pick release. 
mtl_reservations This is only soft reservations. No physical movement of stock

Full Transaction
mtl_material_transactions 
No records in mtl_material_transactionsmtl_txn_request_headers
mtl_txn_request_lines

wsh_delivery_details Released to warehouse.wsh_new_deliveries if Auto-Create is Yes then data populated.wsh_delivery_assignments deliveries get assigned
Pick Confirmed
wsh_delivery_details 
Released_status=Y Hard Reservations. Picked the stock. Physical movement of stock

Ship Confirmed
wsh_delivery_details Released_status=C Y To C:Shipped ;Delivery Note get printed Delivery assigned to trip stopquantity will be decreased from stagedmtl_material_transactions On the ship confirm form, check Ship all boxwsh_new_deliveries If Defer Interface is checked I.e its deferred then OM & inventory not updated. If Defer Interface is not checked.: Shipped
oe_order_lines_all Shipped_quantity get populated.wsh_delivery_legs 1 leg is called as 1 trip.1 Pickup & drop up stop for each trip.
oe_order_headers_all 
If all the lines get shipped then only flag N
Autoinvoice
wsh_delivery_details Released_status=I Need to run workflow background process.
ra_interface_lines_all 
Data will be populated after wkfw process.
ra_customer_trx_all 
After running Autoinvoice Master Program forra_customer_trx_lines_all specific batch transaction tables get populated

Price Details
qp_list_headers_b To Get Item Price Details.
qp_list_lines


Items On Hand Qty
mtl_onhand_quantities TO check On Hand Qty Items.

Payment Terms
ra_terms Payment terms

AutoMatic Numbering System
ar_system_parametes_all you can chk Automactic Numbering is enabled/disabled.

Customer Information
hz_parties Get Customer information include name,contacts,Address and Phonehz_party_sites
hz_locations
hz_cust_accounts
hz_cust_account_sites_all
hz_cust_site_uses_all
ra_customers

Document Sequence
fnd_document_sequences Document Sequence Numbersfnd_doc_sequence_categories
fnd_doc_sequence_assignments

Default rules for Price List
oe_def_attr_def_rules Price List Default Rulesoe_def_attr_condns
ak_object_attributes

End User Details 
csi_t_party_details To capture End user Details
Sales Credit Sales Credit Information(How much credit can get)oe_sales_credits

Attaching Documents 
fnd_attached_documents Attched Documents and Text information
fnd_documents_tl
fnd_documents_short_text

Blanket Sales Order
oe_blanket_headers_all 
Blanket Sales Order Information.
oe_blanket_lines_all

Processing Constraints
oe_pc_assignments 
Sales order Shipment schedule Processing Constratins
oe_pc_exclusions

Sales Order Holds
oe_hold_definitions 
Order Hold and Managing Details.
oe_hold_authorizations
oe_hold_sources_all
oe_order_holds_all

Hold Relaese
oe_hold_releases_all 
Hold released Sales Order.

Credit Chk Details
oe_credit_check_rules 
To get the Credit Check Againt Customer.

Cancel Orders
oe_order_lines_all Cancel Order Details.

Tuesday, 27 August 2013

Create/Enable DFF in the Custom Form

Create/Enable DFF in the Custom Form

Steps for creating DFF in Custom Form


Go to Application Developer
Flex Fields----------Descriptive Flex Fields
1) Select the application: Appropriate Top
2) DFF Name: You’r Choice
3) Title: You’r Choice
4) Description: You’r Choice
5) Table Name: The name which we are using in the Block (We need to create using that)

Table:EXECUTE ad_dd.register_table('XXTCC', 'XXTBK_OPM_INGRID_BATCH', 'T',8, 10, 90);

Columns
EXECUTE ad_dd.register_column('XXTCC', 'XXTBK_OPM_INGRID_BATCH','ATTRIBUTE_CATEGORY1',19, 'VARCHAR2', 150, 'N', 'N');
EXECUTE ad_dd.register_column('XXTCC', 'XXTBK_OPM_INGRID_BATCH','ATTRIBUTE1',20, 'VARCHAR2', 50, 'N', 'N');
EXECUTE ad_dd.register_column('XXTCC', 'XXTBK_OPM_INGRID_BATCH','ATTRIBUTE2',21, 'VARCHAR2', 50, 'N', 'N');
EXECUTE ad_dd.register_column('XXTCC', 'XXTBK_OPM_INGRID_BATCH','ATTRIBUTE3',22, 'VARCHAR2', 50, 'N', 'N');

EXECUTE ad_dd.register_column('XXTCC', 'XXTBK_OPM_INGRID_BATCH','ATTRIBUTE4',23, 'VARCHAR2', 50, 'N', 'N');
EXECUTE ad_dd.register_column('XXTCC', 'XXTBK_OPM_INGRID_BATCH','ATTRIBUTE5',24, 'VARCHAR2', 50, 'N', 'N');



And fill all the above details as below.













Click on Columns Select the list of columns to be displayed in DFF













Next
Segments:Query your DFF













Attach the Value set or leave it as blank

incase user will enter manually.












These are all the steps to be followed to create a DFF in Custom Form.
And next go to forms
The below are two mandatory steps to be followed in FMB1) Create Item ITEM_DFF for which property:
TEXT_ITEM_DESC_FLEX
2) And write the below in code in WHEN_NEW_ITEM_INSTANCE for
the item ITEM_DFF
fnd_flex.event ('WHEN-NEW-ITEM-INSTANCE');
3) Finally in WHEN-NEW_FORM_ INSTANCE we have to call the felx filed structure.

fnd_descr_flex.define ( block => Block name in which the DFF
field => Field from which DFF
appl_short_name => 'XXTCC',
desc_flex_name => TCC_PROD_BATCH_DFF'
);

Friday, 2 August 2013

Queries on HZ Tables



1. Customer listing with all Sites for a specific Org 


execute dbms_application_info.set_client_info('Org_id') ;

SELECT

  substrb(party.party_name,1,50)         Customer_Name ,
  cust.account_number                    Customer_Number ,
  substrb(look.meaning, 1, 8)            Site_Use       ,
  acct_site.cust_acct_site_id            Address_Id,
  substrb(loc.address1,1,30)             Address_Line_1,
  substrb(loc.city,1,15)                 City          ,
  substrb(loc.state,1,2)                 State         ,
  substrb(loc.postal_code,1,10)          Zip_Code      ,
  cust.status                            Cust_Status
FROM
  ar_lookups look,
  ar_lookups look_status,
  hz_cust_accounts cust,
  hz_parties party,
  hz_cust_site_uses site_uses,
  hz_cust_acct_sites acct_site,
  hz_party_sites party_site,
  hz_locations loc
WHERE       cust.cust_account_id  = acct_site.cust_account_id
  AND cust.party_id = party.party_id
  AND acct_site.party_site_id  = party_site.party_site_id(+)
  AND loc.location_id(+)      =   party_site.location_id
  AND acct_site.cust_acct_site_id  = site_uses.cust_acct_site_id(+)
  AND look.lookup_type(+) = 'SITE_USE_CODE'
  AND look.lookup_code(+)= site_uses.site_use_code
  AND look_status.lookup_type(+)  = 'CODE_STATUS'
  AND look_status.lookup_code(+) = nvl(cust.status, 'A')
ORDER BY
  party.party_name  ;



2. Customer listing with only Identifying Addresses for a specific Org 

The IDENTIFYING_ADDRESS_FLAG column of HZ_PARTY_SITES table indicates
if the Address is Identifying Address or not. (Values = Y or N).

(The Select and the From clause is the same as above query)

execute dbms_application_info.set_client_info('Org_id') ;

SELECT

  . . .
FROM
  . . .
WHERE       cust.cust_account_id  = acct_site.cust_account_id
  AND cust.party_id = party.party_id
  AND acct_site.party_site_id  = party_site.party_site_id(+)
  AND loc.location_id(+)  = party_site.location_id
  AND acct_site.cust_acct_site_id  = site_uses.cust_acct_site_id(+)
  AND look.lookup_type(+)  = 'SITE_USE_CODE'
  AND look.lookup_code(+) = site_uses.site_use_code
  AND look_status.lookup_type(+)  = 'CODE_STATUS'
  AND look_status.lookup_code(+) = nvl(cust.status, 'A')
  AND party_site.identifying_address_flag = ‘Y’
ORDER BY
  party.party_name  ;




3. Listing of all Customer Sites that do not have any Business Purpose
The SITE_USE_CODE of the HZ_CUST_SITE_USES_ALL table stores the ‘Business Purpose’ code of the site. If we need a listing of Customer sites that do not have any Business Purpose, we add the where clause of  ‘site_uses.site_use_code is NULL ‘ to the query. This listing was used for data cleanup purpose.
 
(The Select and the From clause is the same as above query)


execute dbms_application_info.set_client_info('Org_id') ;

SELECT

  . . .
FROM
  . . .
WHERE       cust.cust_account_id  = acct_site.cust_account_id
  AND cust.party_id = party.party_id
  AND acct_site.party_site_id  = party_site.party_site_id(+)
  AND loc.location_id(+)  = party_site.location_id
  AND acct_site.cust_acct_site_id  = site_uses.cust_acct_site_id(+)
  AND look.lookup_type(+)= 'SITE_USE_CODE'
  AND look.lookup_code(+)= site_uses.site_use_code
  AND look_status.lookup_type(+)  = 'CODE_STATUS'
  AND look_status.lookup_code(+) = nvl(cust.status, 'A')
  AND site_uses.site_use_code is NULL
ORDER BY
  party.party_name  ;




4. Listing of all Customer with Primary Bill To Address
The address with a ‘Bill To’ business purpose has the SITE_USE_CODE column of the HZ_CUST_SITE_USES_ALL table as ‘BILL_TO’

(The Select and the From clause is the same as above query)

execute dbms_application_info.set_client_info('Org_id') ;

SELECT

  . . .
FROM
  . . .
WHERE      cust.cust_account_id  = acct_site.cust_account_id
  AND cust.party_id = party.party_id
  AND acct_site.party_site_id  = party_site.party_site_id(+)
  AND loc.location_id(+)  = party_site.location_id
  AND acct_site.cust_acct_site_id  = site_uses.cust_acct_site_id(+)
  AND look.lookup_type(+)  = 'SITE_USE_CODE'
  AND look.lookup_code(+) = site_uses.site_use_code
  AND look_status.lookup_type(+)  = 'CODE_STATUS'
  AND look_status.lookup_code(+) = nvl(cust.status, 'A')
  AND site_uses.site_use_code  = 'BILL_TO'
  AND site_uses.primary_flag   = 'Y'
  AND site_uses.status   = 'A'
ORDER BY
  party.party_name  ;



5. Listing of all Customer with Bill To Address with whom we had transaction in the 
last 1 year  


The BILL_TO_SITE_USE_ID of the RA_CUSTOMER_TRX_ALL table stores the
SITE_USE_ID of HZ_CUST_SITE_USES_ALL table.

(The Select and the From clause is the same as above query)

execute dbms_application_info.set_client_info('Org_id') ;

SELECT

  . . .
FROM
  . . .
WHERE      cust.cust_account_id  = acct_site.cust_account_id
  AND cust.party_id = party.party_id
  AND acct_site.party_site_id  = party_site.party_site_id(+)
  AND loc.location_id(+)  = party_site.location_id
  AND acct_site.cust_acct_site_id  = site_uses.cust_acct_site_id(+)
  AND look.lookup_type(+)  = 'SITE_USE_CODE'
  AND look.lookup_code(+) = site_uses.site_use_code
  AND look_status.lookup_type(+)  = 'CODE_STATUS'
  AND look_status.lookup_code(+) = nvl(cust.status, 'A')
  AND SITE_USES.site_use_id in (SELECT distinct trx.bill_to_site_use_id from ra_customer_trx trx
where trx.creation_date > sysdate - 365)
ORDER BY
  party.party_name  ;



6. Listing of Customer’s with Profile Class Name, Collector Name, Bill To Address  
execute dbms_application_info.set_client_info('Org_id') ;

SELECT

  substrb(party.party_name,1,50)         Customer_Name ,
  cust.account_number                    Customer_Number ,
  pc.name      Profile_Class_Name ,
  coll.name         Collector_Name ,
  substrb(look.meaning, 1, 8)            Site_Use       ,
  acct_site.cust_acct_site_id            Address_Id,
  substrb(loc.address1,1,30)             Address_Line_1,
  substrb(loc.city,1,15)                 City          ,
  substrb(loc.state,1,2)                 State         ,
  substrb(loc.postal_code,1,10)          Zip_Code      ,
  cust.status                            Cust_Status
FROM
  ar_lookups look,
  ar_lookups look_status,
  hz_cust_accounts cust,
  hz_parties party,
  hz_cust_site_uses site_uses,
  hz_cust_acct_sites acct_site,
  hz_party_sites party_site,
  hz_locations loc,
  hz_customer_profiles prof,
  hz_cust_profile_classes pc ,
  ar_collectors coll
WHERE       cust.cust_account_id  = acct_site.cust_account_id
  AND cust.party_id = party.party_id
  AND acct_site.party_site_id  = party_site.party_site_id(+)
  AND loc.location_id(+)  = party_site.location_id
  AND acct_site.cust_acct_site_id  = site_uses.cust_acct_site_id(+)
  AND look.lookup_type(+)  = 'SITE_USE_CODE'
  AND look.lookup_code(+)  = site_uses.site_use_code
  AND look_status.lookup_type(+)  = 'CODE_STATUS'
  AND look_status.lookup_code(+) = nvl(cust.status, 'A')
  AND cust.cust_account_id  = prof.cust_account_id (+)
  AND prof.collector_id  = coll.collector_id(+)
  AND prof.profile_class_id   = pc.profile_class_id
  AND prof.site_use_id is NULL
  AND SITE_USES.site_use_id in (SELECT distinct trx.bill_to_site_use_id from ra_customer_trx trx
where trx.creation_date > sysdate - 60)
ORDER BY
 party.party_name  ; 

Types of Important Documents In Oracle Apps



Types of Documents in Oracle Applications



What are Types of Documents in Oracle Applications :


AIM (Application Implementation Maintenance) developed by Oracle Applications.
MD050 - Module Design - By Functional Consultants
MD070 - Technical Document Design - By Technical Consultants
MD020 - Testing Document Design - By Functional Consultants
MD0120 - Migration/ User Training - By Technical Consultants
CV040 - Conversion of Functional Document - By Functional Consultants
CV060 - Conversion of Technical Document - By Technical Consultants

Note: Conversion means, moving data from old Database to new Database.
Example: Conversion from IBM to ORA APPS


AIM Document List

Business Process Architecture (BP)

BP.010 Define Business and Process Strategy

BP.020 Catalog and Analyze Potential Changes

BP.030 Determine Data Gathering Requirements

BP.040 Develop Current Process Model

BP.050 Review Leading Practices

BP.060 Develop High-Level Process Vision

BP.070 Develop High-Level Process Design

BP.080 Develop Future Process Model

BP.090 Document Business Procedure


Business Requirements Definition (RD)


RD.010 Identify Current Financial and Operating Structure

RD.020 Conduct Current Business Baseline

RD.030 Establish Process and Mapping Summary

RD.040 Gather Business Volumes and Metrics

RD.050 Gather Business Requirements

RD.060 Determine Audit and Control Requirements

RD.070 Identify Business Availability Requirements

RD.080 Identify Reporting and Information Access Requirements



Business Requirements Mapping


BR.010 Analyze High-Level Gaps

BR.020 Prepare mapping environment

BR.030 Map Business requirements

BR.040 Map Business Data

BR.050 Conduct Integration Fit Analysis

BR.060 Create Information Model

BR.070 Create Reporting Fit Analysis

BR.080 Test Business Solutions

BR.090 Confirm Integrated Business Solutions

BR.100 Define Applications Setup

BR.110 Define security Profiles



Application and Technical Architecture (TA)




TA.010 Define Architecture Requirements and Strategy

TA.020 Identify Current Technical Architecture

TA.030 Develop Preliminary Conceptual Architecture

TA.040 Define Application Architecture

TA.050 Define System Availability Strategy

TA.060 Define Reporting and Information Access Strategy

TA.070 Revise Conceptual Architecture

TA.080 Define Application Security Architecture

TA.090 Define Application and Database Server Archtecture

TA.100 Define and Propose Architecture Subsystems

TA.110 Define System Capacity Plan

TA.120 Define Platform and Network Architecture

TA.130 Define Application Deployment Plan

TA.140 Assess Performance Risks

TA.150 Define System Management Procedures



Module Design and Build (MD)



MD.010 Define Application Extension Strategy

MD.020 Define and estimate application extensions

MD.030 Define design standards

MD.040 Define Build Standards

MD.050 Create Application extensions functional design

MD.060 Design Database extensions

MD.070 Create Application extensions technical design

MD.080 Review functional and Technical designs

MD.090 Prepare Development environment

MD.100 Create Database extensions

MD.110 Create Application extension modules

MD.120 Create Installation routines



Data Conversion (CV)




CV.010 Define data conversion requirements and strategy

CV.020 Define Conversion standards

CV.030 Prepare conversion environment

CV.040 Perform conversion data mapping

CV.050 Define manual conversion procedures

CV.060 Design conversion programs

CV.070 Prepare conversion test plans

CV.080 Develop conversion programs

CV.090 Perform conversion unit tests

CV.100 Perform conversion business objects

CV.110 Perform conversion validation tests

CV.120 Install conversion programs

CV.130 Convert and verify data



Documentation (DO)



DO.010 Define documentation requirements and strategy

DO.020 Define Documentation standards and procedures

DO.030 Prepare glossary

DO.040 Prepare documentation environment

DO.050 Produce documentation prototypes and templates

DO.060 Publish user reference manual

DO.070 Publish user guide

DO.080 Publish technical reference manual

DO.090 Publish system management guide



Business System Testing (TE)



TE.010 Define testing requirements and strategy

TE.020 Develop unit test script

TE.030 Develop link test script

TE.040 Develop system test script

TE.050 Develop systems integration test script

TE.060 Prepare testing environments

TE.070 Perform unit test

TE.080 Perform link test

TE.090 perform installation test

TE.100 Prepare key users for testing

TE.110 Perform system test

TE.120 Perform systems integration test

TE.130 Perform Acceptance test

Multi Org and its Modules



MULTI ORG:

 MULTI ORG MEANS MULTIPLE ORGANIZATIONS UNDER SINGLE ORACLE IMPLEMENTATION. THIS KEEPS EACH OPERATING UNIT TRANSACTION DATA SEPERATE AND SECURE.


 MULTI ORG MEANS MULTIPLE ORGANIZATIONS THAT IS

1. BUSINESS GROUP (which dealt with HRMS module). It is the highest level in the organization.

2. Legal Entity (Dealt with Tax entities, Govt reporting authorities)

3. Set of Books (Dealt with 3 c's that is chart of account, currency and calendar)

4. Operating unit (Dealt with 5 sub ledger modules like AP/AR/GL/PO/OM)

5. Inventory Organization (Dealt with Inv/Bom/Wip/MS-MRP)

You can assign any number of organizations under operating unit.

Short Names for the Modules in Oracle Apps Ocean


These are the Shortnames for the Modules in Oracle Apps Ocean.

ABM - Activity Based Management
AD - Applications DBA
AHL - Oracle Advanced Service Online
AK - Oracle Common Modules-AK
ALR - Oracle Alert
AMF - Oracle Fulfillment Services
AMS - Oracle Marketing
AP - Oracle Payables
AR - Oracle Receivables
AS - Oracle Sales
ASG - Oracle CRM Gateway for Mobile Services
ASL - Oracle Mobile Field Sales Laptop
ASO - Oracle Order Capture
AST - TeleSales
AX - Global Accounting Engine
AZ - Application Implementation
BEN - Oracle Advanced Benefits
BIC - Customer Intelligence
BIL - Sales Intelligence
BIM - Marketing Intelligence
BIS - Oracle Applications BIS
BIX - Call Center Intelligence
BNE - Oracle Web ADI
BOM - Oracle Bills of Material
BSC - Balanced Scorecard
CCT - Oracle Call Center and Telephony
CE - Oracle Cash Management
CHV - Oracle Supplier Scheduling
CLN - Supply Chain Trading Connector for RosettaNet
CN - Oracle Sales Compensation
CS - Oracle Service
CSC - Customer Care
CSD - Depot Repair
CSE - Oracle Enterprise Install Base
CSF - Field Service
CSI - Install Base
CSM - Oracle Field Service Palm
CSP - Oracle Spares Management
CSR - Oracle Scheduler
CSS - Support
CUG - Oracle Citizen Interaction Center
CUN - Oracle Network Logistics NATS
CZ - Oracle Configurator
EAM - Oracle Enterprise Asset Management
EC - Oracle e-Commerce Gateway
ECX - Oracle XML Gateway
EDR - Oracle E Records
ENG - Oracle Engineering
FII - Financials Intelligence
FLM - Oracle Flow Manufacturing
FND - Application Object Library
FTE - Oracle Transportation Hub
FV - Oracle Federal Financials
GHR - Oracle Federal HR
GL - Oracle General Ledger
GMA - Oracle Process Manufacturing Systems
GMD - Oracle Process Manufacturing Product Development
GME - Oracle Process Manufacturing Process Execution
GMF - Oracle Process Manufacturing Financials
GMI - Oracle Process Manufacturing Inventory
GML - Oracle Process Manufacturing Logistics
GMP - Oracle Process Manufacturing Process Planning
GMS - Oracle Grants Accounting
GR - Oracle Process Regulatory Mgmt
HRI - Human Resources Intelligence
HXC - Oracle Time and Labor
HXT - Oracle Time and Labor Rules
IBA - iMarketing
IBC - Oracle iContent
IBE - iStore
IBU - iSupport
IBY - iPayment
ICX - Oracle Self-Service Web Applications
IEB - Oracle Interaction Blending
IEC - Oracle Campaign Plus
IEM - Oracle eMail Center
IEO - Call Center Technology
IES - Scripting
IEU - Oracle Universal Work Queue
IEX - Oracle Collections
IGC - Commitment Administration
IGF - Student Systems Fin Aid
IGI - Oracle International Public Sector Financials
IGS - Oracle Student Sytems
IGW - Oracle Grants Proposal
INV - Oracle Inventory
IPD - Oracle Product Development Exchange
ISC - Supply Chain Intelligence
JTF - CRM Foundation
JTM - Oracle CRM Mobile Foundation
JTS - Oracle CRM Self Service Administration
MRP - Oracle Master Scheduling/MRP
MSC - Oracle Advanced Supply Chain Planning
MSD - Oracle Demand Planning
OFA - Oracle Assets
OKC - Oracle Contracts Core
OKI - Oracle Contracts Intelligence
OKL - Oracle Lease Management
OKR - Oracle Contracts for Rights
OKS - Oracle Contracts Service Module
ONT - Oracle Order Management
OPI - Operations Intelligence
OTA - Oracle Training Administration
OZF - Funds & Budgets
PA - Oracle Projects
PAY - Oracle Payroll
PER - Oracle Human Resources
PJM - Oracle Project Manufacturing
PN - Oracle Property Manager
PO - Oracle Purchasing
POA - Purchasing Intelligence
POM - Oracle Exchange
PON - Oracle Sourcing
POS - Internet Supplier Portal
PQH - Oracle Public Sector HR
PSA - Public Sector Applications
PSB - Oracle Public Sector Budgeting
PSP - Oracle Labor Distribution
PV - Partner Relationship Management
QA - Oracle Quality
QP - Oracle Pricing
QRM - Oracle Risk Management
RG - Application Report Generator
RLM - Oracle Release Management
VEA - Oracle Automotive
WIP - Oracle Work in Process
WMS - Oracle Warehouse Management System
WSH - Oracle Shipping
WSM - Shop Floor Management
XDP - Oracle Provisioning
XNC - Oracle Sales for Communications
XNI - Oracle Install Base Intelligence
XNP - Oracle Number Portability
XNS - Oracle Service for Communications
XTR - Oracle Treasury


Remove Language Selection from Login Page and from Global Preferences Page

Removing Language Selection From Login Page

1. Logon with Functional Administrator responsibility
2. Click on 'Personalization' Tab
3. Enter /oracle/apps/fnd/sso/login/webui in document path and click on 'Go' button
4. Click on 'Pencil' icon under 'Personalize Page' for /oracle/apps/fnd/sso/login/webui/LangImagesRN
5. Make sure that 'Include' for Site is checked and click on 'apply'
6. Look for „Table Layout‟ and click on 'Pencil' icon in ‟Personalize' column.
7. Change 'rendered' property value to 'false' at Site level from LOV and click on Apply.
8. This will disable the language selection links in the login page.


Removing Language Selection From Global Preferences Page

1. Logon with Functional Administrator responsibility
2. Click on 'Personalization' Tab
3. Enter /oracle/apps/fnd/preferences/webui in document path and click on 'Go' button
4. Click on 'Pencil' icon under 'Personalize Page' for 
/oracle/apps/fnd/preferences/webui/PreferencesPG
5. Make sure that 'Include' for Site is checked and click on 'apply'
6. Look for „Message Choice: Current Session Language‟ and click on 'Pencil' icon in ‟Personalize' column.
7. Change 'rendered' property value to 'false' at Site level from LOV and click on Apply.
8. Look for „Message Choice: Default Application Language‟ and click on 'Pencil' icon in ‟Personalize' column.
9.Change 'rendered' property value to 'false' at Site level from LOV and click on Apply.
10.This will disable the language selection links in the Preference page.


MLS and NLS Features In Oracle Apps



 National Language Support (NLS)


1. National Language Support (NLS) refers to the ability to run an Applications instance in any single supported language, including specific regional or territorial number and date formats.

2. Typically, in order to support a given language, only the customer-facing components of the Applications software (user interface, lookup tables, online documentation, and so on) are translated. 

3. Translations are delivered via NLS patches (more on that later).



 Multiple Language Support (MLS)

1. Multiple Language Support (MLS) refers to the ability to run multiple languages in the same Applications instance. 

2. MLS provides multiple language architecture, while NLS provides the individual language translations.

Enabling MLS Feature:-

Instructions from:

Oracle Applications, Maintenance Procedures, Release 12 
Adding and Maintaining NLS Languages

1. License Manager, active the language
2. adadmin, Maintain Multi-Lingual Tables 
(copies base language seed data)
3. Apply NLS patch 44400000 for the language 
(adds seed data translations)
4. Translation Synchronization Patch Utility and apply patch

5. Install NLS Help

Yes but now the fun begins

You must always apply the NLS Translation Patches for the patches you 
apply going forward, (this includes future upgrades).

This results in additional DBA work and increased down time windows

Your $APPL_TOP now includes many more code objects:
$AR_TOP/forms/<language>/ 
$AR_TOP/reports/<language>/
Deactivating a language is not supported. 
Even if you are not using them, once activated, you must maintain all languages that 
are active in an NLS system.
You have to now support your user base in non-English forms and 
reports.
Desktop procedures
Support calls
Customizations

Interview Questions

1. What is AD_DD package?

AD_DD Package is used to register the Table, Columns, and Primary Key in Oracle Applications.

PROCEDURE REGISTER_TABLE
Arguments:
P_APPL_SHORT_NAME
P_TAB_NAME
P_TAB_TYPE
P_NEXT_EXTENT
P_PCT_FREE
P_PCT_USED

PROCEDURE REGISTER_COLUMN
Arguments
P_APPL_SHORT_NAME
P_TAB_NAME
P_COL_NAME
P_COL_SEQ
P_COL_TYPE
P_COL_WIDTH
P_NULLABLE
P_TRANSLATE
P_PRECISION
P_SCALE


2. What are the Special and Pair Flex Field?

Special – Value Sets uses FlexField itself

Pair – Two Flex Fields together specifies a range of valid values.


3. What are the Translatable Dependent and Independent Flex Fields?

Translatable Independent – Input must exist on previously defined set List of
Values. Translated value can be used. 57
Translatable Dependent means Input is checked against a subset of values
Based on a prior value. Translated value can be used.

4. What is FND_REQUEST.SUBMIT_REQUEST?

It submits a Concurrent Request for Processing by a Concurrent Manager.
Arguments – Application, program, description,start_time,sub_request,arg1..


5. What is Client Info?

By calling this Program in SQL*PLUS or reports with correct parameters user can achieve concurrent program environment for testing.
FND_CLIENT_INFO.setup_client_info (application_id Number,
Responsibility_id Number,
User_id Number,
Security_Group_id Number);

6. Give the Directory structure in apps?

$APPL_TOP - Product Directory- Version-

7. What are the steps in Registering Concurrent Program?

Go to Programs and Define Executables.
Go to Programs and Define Concurrent Program
Go to Responsibility and attach the Request group you want.


8. What are the different types of executable available in Concurrent Programming?

Host
Oracle Reports
PL/SQL Stored Procedures
SQL*LOADER
SQL*PLUS
Spawned
JSP




9. What are Request Sets?

 Request set is a collection of Reports/Programs that you group together and can be submitted to run is a single interaction.

10. What is Standard Request Submission (SRS Feature)?

SRS provides you with a set of windows for running reports and Programs and a set of windows for creating groups of reports and programs to run together.
Features 
Specify whether reports or programs in a request set run sequentially or simultaneously
Specify whether to continue with a request set if a report or program in a sequential set fails
View a log file
Specify alternative requests based on completion status of previously run requests in a request set.


11. What are the different APIs for Concurrent Programming?

FND_CONCURRENT
FND_FILE
FND_PROGRAM
FND_SET
FND_REQUEST
FND_REQUEST_INFO
FND_SUBMIT

12. What are the FlexField Qualifiers?

A Flex field qualifier identifies a particular segment of a key flex field.

13. What are the Segment Qualifiers?

A Segment Qualifier identifies a particular type of value in a single segment of a key flex field.




14. What is a Dynamic Insertion?

Dynamic Insertion is the insertion of new valid combination into a Key Flexfields Combinations Table from a form other than the combinations form.
All Validation rules still will apply during insertion.

15. What are the different Level of Profiles?

User Profiles are used
To set options that affect your applications behavior o your preference.
A Collection of changeable options that affect the way your applications run
Modify Product Specific variables
Gives Control over certain Oracle Applications features.

16. Profile Levels
Site Level
Application Level
Responsibility Level
User Level
Note: Site Level is the lowest level.

17. Explain Multi-Organization Structure?

Set of book
A financial reporting entity  that uses a particular chart of accounts, functional currency and accounting calendar.
Business Group This is highest level in the Organization Structure. The Business group secures HR Information. Multiple set of books can share same business 

group. Legal Entity A legal company for which you prepare fiscal or tax reports. Balancing Entity
Represents an accounting entity for which you prepare financial statements.
This is the segment in Accounting Flexfield.
Operating Unit
An Organization that Uses Oracle Cash Management, Order Management and shipping Execution, Oracle Payables, Oracle Purchasing, Oracle receivables.
It may be a Sales office division or a department. An Operating Unit is associated with legal entity.
Inventory Organization An Organization for which you track Inventory transactions and balances and/or an Organization that manufactures or distributes products. HR Organization
HR Organization represents the basic work structure of any enterprise. They usually represent Functional Management or reporting groups that exists within a business group.

18. How can u see Multi-Organization is enabled or not from SQL Prompt? 

 SELECT MULTI_ORG_FLAG FROM fnd_product_groups;

19. What are the two mandatory parameters required for PL/SQL stored Procedure Concurrent Program? 
Errbuf and retcode two OUT Parameters are required while defining PL/SQL stored Procedure Concurrent Program.
Errbuf Returns any error message and
Retcode returns completion status.
Retcode returns 0 for success, 1 for warnings and 2 for error
.

20. Different Type of Value Sets. What is exactly Translatable independent and Translatable Dependent Value Sets (Introduced in latest version of 11i). Ans:- There are 8 types of Values Sets.

i. None (Non Validate at all) (Validation is Minimal)

j. Independent (Input must exist on previous defined list of values)

k. Dependent (Input is checked against a subset of values based on prior Value) 60 

l.Table (Input is checked against a subset of values in an application table)

m. Special (advanced) (Value set uses a flexfield itself)

n. Pair (advanced) (Two Flexfields together specify a range of valid values)

o. Translatable Independent (Input must exist on previous defined list of values. Translated value can be used)

p. Translatable Dependent. (Input is checked against a subset of values based on a prior value; translated value can be used)

(Note:- When you first define your flexfields, you choose how many segments
You want to use and what order you want them to appear. You also
Choose how you want to validate each of your segments. The decisions
You make affect how you define your value sets and your values.)



21. How to run a concurrent program. What all concurrent programs u have created. 
Ans:- (Definition :- A concurrent program is an instance of an execution filealong with parameter definitions and incompatibilities. Concurrent programs use concurrent program executables to locate the correct execution file.)

Oracle Tool Concurrent Program * A concurrent program written in
Oracle Reports, PL/SQL package procedures,
SQL*Loader, SQL*Plus, Host Scripting.

How to Run : * Write a execution file and place in correct directory.
Establish executables in Oracle apps specify execution file and method.
Define Concurrent Program (Program, Parameters and Incompatibilities)
Call your Program (- Thu application form, from other concurrent program.
- OR through standard request submission, you must check the „USE in SRS check box‟ and register your program parameters when you define your concurrent program. Add your program into the request security group for your custom application.)
I have created reports through concurrent program, load(sql*loader/pl-sql pkg-proc) the file through concurrent program.

22) What is parameter in apps and from where u can create it.

 Ans:- Parameters only using in report, you can create in defining the report in
apps (you can create the parameter there only)

23) What all are the tables used in the modules u have worked on. *In GL
 – I have worked on GL_JE_HEADERS(JOURNALS HEADER),GL_JE_LINES(JOURNAL LINES), GL_JE_BACHES(JOURNAL BATCHES), GL_SET_OF_BOOK(SET_OF_BOOK_ID),
*In PO- I have worked on PO_HEADER_ALL,PO_LINES_ALL,PO_DISTRIBUTIONS_ALL


24) What is Profile? Explain different levels of Profile.
 Ans:- A user profile is a set of changeable options that affects the way your
applications run.
Oracle Application Object Library establishes a value for each option in a users profile when the user logs on or changes responsibility.
Your user can change the value of profile options at any time
 a) To create Profile Option. ( Profile Option can created by developer in application developer area)
b)set the value (Values of the profile option , who will have what value at various levels is set by SYSADMIN). 
Oracle Application Object Library provides many options that. (Edit profile feature for every user is available to set any value to allow the user).
Your users can set to alter the user interface of your applications to satisfy their individual preferences. Profile Option – set at run time like – User Related, responsibility, Sequence, Printer, Security.


25 Values in 4 Levels(HIEARCHY WISE) :- 

E. USER
F. RESPONSIBILITY
G. APPLICATION
H. SITE

Application Developer create the profile.
 System Administrator make profile option.
(NOTE:- If any change in value, it will active when you re-login or switch to the responsibility.)
( Usage in the multi-tier, the profile is biggest impact)


26) How to restrict the data for a responsibility as per the ORG-ID 
Ans:-Through Multi – Org(MO) u can restrict the data for a responsibility as per the ORG-ID. Only in GL- Set of book Id you set the value to restrict the data for a responsibility

27) is Flexfield? What is flexfield qualifier and what is segment qualifier?
 Ans:- A flexfield is made up a segments (Which are actually table columns).
Each segment has a name that can be assigned, and set of valid value.
Purpose and Application:-
* Flexibility to implement code structure.
* Flexibility to capture additional information.

Two Types of Flexfields in oracle apps.
1. Key Flexfields (KFF)
2. Descriptive Flexfields (DFF)

A key flexfield segment has a name you assign, and set of valid values you specify. Each value has a meaning which can be specified.
 Flexfield Qualifier:-flexfield qualifier identifies a particular segment of a key flexfield.. Usually an application needs some method of identifying a particular
segment for some application purpose such as security or computations. However, since a key flexfield can be customized so that segments appear in any order with any prompts, the application needs a mechanism other than the segment name or segment order to use for segment identification.
Segment Qualifier :- 
A segment qualifier identifies a particular type of value in a single segment of a key flexfield.
In the Oracle Applications, only the. Accounting Flexfield uses segment qualifiers. You can think of a segment qualifier as an "identification tag" for a value. In the Accounting Flexfield, segment qualifiers can identify the account type

28) Which flexfield qualifiers are mandatory?
 Ans:- „Balancing Segment flex field qualifier is mandatory. 

29) Difference Between versions of Apps.(Front end & Database) 
Ans:- In backend- Client server architecture (old)/ Three tire architecture
           In font end- Client Server Application (old)/ Web Based application 

30) What is MULTI-ORG and what is structure of multi-org. 
Ans:- Use a single installation of any oracle applications product to support any number of organizations. if those organizations use different set of books.
Support any number or legal entities with a single installation of oracle applications. 
 Secure access to data so that users can access only the information that is relevant to them. 
Structure :- 
Business Unit -HRMS(Employee)
-GL(Set of Books)(Currency, Calendar, Chart of Account)
|
Balancing Segment(You can do multiple balancing segment)
-Operating Units (Purchase, Selling, Fixed Asset, Payable,
Receivables)
-Inventory Organizations (Storing Items, Transaction Happening,
Ware Housing)
(Note:- Means if you maintaining GL(set of book id), If u have operating unit, if you
have inventory then its called MULTI-ORG)

31)What is difference between ORG_ID and ORGANIZATION_ID in Multi-Org.
At where we can set ORG_ID and ORGANIZATION_ID level it comes in the
structure.
Ans:-A Global Variable exists in the oracle database called CLIENT_INFO, which is 64 bytes long. The first 10 bytes are used to store the operating unit ID(or ORG_ID) for the multiple organization support feature.
Multi-Org views are partitioned by ORG_ID. The ORG_ID value is stored in CLIENT_INFO variable.(It comes in AP,PO,AR,OM level)
ORGANIZATION_ID – Its for Inventory, Mfg, & BOM.

32)ORG_ID can be set at master levels or transaction level. 
Ans:- ORG_ID can be set at transaction Level.




33)Differnet type of execution methods in Conc.Progs. Explain Each Type. 
Ans:- a.Oracle Reports- You can register your report as executable file type is oracle reports.
b. PL/SQL Package Procedure - You can register your PL/SQL Package Procedure as executable file type is oracle PL/SQL Package Procedure.
1. SQL Loader- You can register your SQL Loader SQL Loader is your executable file type.(for data loading)
2. SQL*Plus :- You can register your SQL script as SQL*Plus executable type.
3. Host Scripting:- You can write down Unix Host scripting and register here. 

34)What is difference between oracle schema and apps schema. 
Ans:-Database Schema-
The APPS schema- is an ORACLE schema that has access to the
complete Oracle Applications data model. This schema is maintained
by AutoInstall.

 35) What are the objects APPS schema contain.
 Ans:- The APPS schema contains synonyms to all tables and sequences as well as all server–side code (stored procedures, views,and database triggers).
For ERP applications, data partitioning is performed by database views. These views reside in the APPS Oracle schema and derive the appropriate operating unit context from an RDBMS variable. 

36) What are the names of the parameters u pass to the Procedure which u register in the apps? 
 1) retcode in varchar2
 2) errbuf in varchar2 

37) What is application short name for General Ledger you specify in FND FLEXSQL user exit?
 A. SQLGL 


38) How do you set profile in oracle applications In Application Developer responsibility? 
A. Open “Profile” Function 

39) What is the syntax for loading data through SQL * Loader from multiple files simultaneously 
A. Sqlldr scott/tiger@orcl control = ctlfile
parfile -- parameter file: name of file that contains parameter specifications
parallel -- do parallel load (Default FALSE) 



40) Give the relation between categories and items table. 
MTL_SYSTEM_ITEMS
MTL_CATEGORIES_B
Relation INVENTORY_ITEM_ID

41) In which tables are the categories of an item stored. 
MTL_CATEGORIES_B
MTL_ITEM_CATEGORIES
 42) Significance of ALL in apps tables. 
Tables which are related with Multiorg is suffixed with ALL. 
43) Explain about flexfield in GL.In what way it is useful?

 A KFF is a set of segments, each segment will identify a unique characterstic of an entity. it can be termed as intelligent key. We can define our business requirements without doing any programming.
A DFF is a set of segments which can be used to capture extra info With out any customization

44) Execution methods?
Ans. 
a. Host b. Immediate
c. Java Stored Procedure
d. Java Concurrent Program
e. Multi Language Function
f. Oracle Reports
g. PL/SQL Stored Procedure
h. Request Set Stage Function
i. Spawned
j. SQL*Loader
k. SQL*Plus 

45) What is TCA (Trading Community Architecture)?
Ans. 
Oracle Trading Community Architecture (TCA) is a data model that allows you to manage complex information about the parties, or customers, who belong to your commercial community, including organizations, locations, and the network of hierarchical relationships among them. This information is maintained in the TCA Registry, which is the single source of trading community information for Oracle E-Business Suite applications.



46) Difference between Application Developer and System Administrator? Role of Technical Consultant:
1. Designing New Forms, Programs and Reports
2. Forms and Reports customization
3. Developing Interfaces
4. Developing PL/SQL stored procedures
5. Workflow automations
Role of System Administrator:
1. Define Logon Users
2. Define New/Custom Responsibility
3. Define Data Groups
4. Define Concurrent Managers
5. Define Printers
6. Test Network Preferences
7. Define/Add new Modules
Role of an Apps DBA:
1. Installing of Application
2. Upgradation
3. Migration
4. Patches
5. Routing maintenance of QA
6. Cloning of OA 

47) Registration of PL/SQL with parameters? 
Ans. 
1. Create the procedure in the module specific schema.
2. Create a public synonym for that procedure in the Apps schema.
3. Create the executable for that procedure.
4. Create a concurrent program.
5. Attach the concurrent program to that procedure.
Note: There are two mandatory parameters 1. Errbuf 2. Retcode. Any parameter which are to be passed should be succeeded with these two parameters and have to be registered. When calling the procedure, these two parameters are not mentioned.

48) What is template?
a) The TEMPLATE form is the required starting point for all development of new Forms.
b) The TEMPLATE form includes platform–independent attachments of several Libraries.
APPSCORE :- It contains package and procedures that are required of all forms to support the MENUS ,TOOLBARS.
APPSDAYPK :- It contains packages that control the oracle applications CALENDER FEATURES.
FNDSQF :- it contains packages and procedures for MESSAGE DICTONARY, FLEX FIELDS, PROFILES AND CONCURRENT PROCESSING.
CUSTOM :- it allows extension of oracle applications forms with out modification of oracle application code, you can use the custom library for customization such as zoom ( such as moving to another form and querying up specific records)

49) What are ad-hoc reports?
Ans.: Ad-hoc Report is made to meet one-time reporting needs. Concerned with or formed for a particular purpose. For example, ad hoc tax codes or an ad hoc database query

50) Difference between User and Super User? 
User : login user or front end user
Super user : it has full access of particular module

 51)What is invoice? 
Send you a request for payment

52 In which tables FF are stored?
A) FND - ID - FLEXS
B) FND-ID-FLEX-STRUCTURES 
53. Oracle Applications Architecture
- Internet computing Architecture is a frame work for 3-tired, distributed computing that supports Oracle Applications products.
- The Three tiers are
1 Data Base Tier
2 Application Tier
3 Desk Top Tier
- Database tier manages Oracle 8i database.
- Application tier manages Oracle Applications and other tools.
- Desktop tier provides the user interface displace.
- With internet computing architecture, only the presentation layer of Oracle Applications is on the Desk Top tier in the form of a plug-in to a standard internet browse

54) List of some APIS
FND_PROGRAM.EXECUTABLE
FND_PROGRAM.REGISTER
FND_PROGRAM.PARAMETER
FND_PROGRAM.ADD_TO_GROUP
FND_REQUEST.SUBMIT_REQUEST
FND_PROFILE.VALUE
FND_PROFILE.GET

55)How to get second parameter value based on first parameter?
$flex $ value setname.

56)How to call WHO columns into the form
By using FND_STANDARD APIS
1. FND_STANDARD.FORM_INFO
Provides information about the form.
Should be called form when_new_form - instance - instance trigger.
2. FND_standard.set_who
loads WHO columns with proper user information.
Should be called from PRE_UPDTE and PRE_INSERT
Triggers for each block with WHO fields
If this is used FND-GLOBAL need not be called. (FND_GLOBAL.WHO)
3. FND_STANDARD.SYSTEM_DATE
This is a function which returns date.
Behave exactly like SYSDATE built-in.
4. FNID_STANDARD.USER
This is a function which returns varchar2
Behaves exactly like built in USER.


57) APPCORE APIS
APP_COMBO
APP_DATE
APP_EXCEPTION
APP_FIELD
APP_FIND
APP_ITEM
APP_ITEM_PROPERTY
APP_NAVIGATE
APP_RECORD
APP_REGION 
APP_STANDARD
APP_WINDOW

58)FNDSQF APIS
FND_CURRENCY
FND_DATE
FND_GLOBAL
FND_ORG
FND_STANDARD
FND_UTILITIES.OPEN_URL
FND_UTILITIES. PARAM_EXISTS

59)How to call flex fields in the form?
By using FND_FLEX.EVENT (EVENT varchar 2)
How to register an executable and define a concurrent program through backend?
By using concurrent processing APIS
1. FND_CONC_GLOBAL.REQUES_DATA
.SET_REQUEST_GLOBALS
2. FND_CONCURRENT.AF_COMMIT
.AF_ROLLBACK
.GET_REQUEST_STATUS
.WAIT_FOR_REQUEST
.SET_COMPLETION_STATUS
3. FND_FILE . PUT
. PUT_LINE
.NEW_NAME .PUT_NAMES
.CLOSE
4. FND-PROGRAM . MESSAGE
. EXECUTABLE
. REGISTER
. PARAMETER
. IN COMPATIBILITY
. EXECUTABLE_EXISTS
5. FND_REQUEST . SET-OPTIONS
.SET_REPEAT_OPTIONS
.SET_PRINT_OPTIONS
.SUBMIT_REQUEST
.SET_MODE
6. FND_REQUEST_INFO . GET_PARAM_NUMBER
. GET_PARAM_INFO
. GET_PROGRAM
. GET_PARAMETER
7. FND_SET . MESSAGE
.ADD_PROGRAM
.ADD_STAGE
.IN COMPATIBILITY
8. FND_SUBMIT . SET_MODE
.SET_REQUEST_STATUS
.SUBMIT_PROGRAM 
9.SUBMIT_SET
* FND_PROGRAM.EXECUTABLE
- is used to define a concument program executable
- it takes 8 parameters ( all are IN mode )
syntax procedure FND_PROGRAM.EXECUTABLE
(executable IN varchar2,
(Full name)
description IN varchar2 default null
execution_method IN varchar2,
execution_file_name IN varchar2 default null,
icon_name IN varchar2 default null,
language_code IN varchar2 default (VS)
* FND_PROGRAM.REGISTER
- this procedure no used to define a concument program.
- It has 30 IN paranmeters. Out of which 9 are mandatory, the remaining are default.
(program IN varchar2,
application IN varchar2,
enabled IN varchar2,
short_name IN varchar2,
description IN varchar2, default null, 
executable_application IN varchar2,
mls_function_shelt_name IN varchar2,
mls_function_application IN varchar2,
inerementor IN varhcar2);






60. How to write to a file through concurrent program.
* By using FND_FILE package and it can be used only for log and output files.
1. FND_FILE.PUT
- this is used to write text to a file without a new line character
- Multilane calls to FND_FILE.PUT will produce consummated text.
Procedure FND_FILE.PUT (which IN Number, Buff IN varchar2);
- can be FND_FILE.LOG or FND_FILE.OUTPUT.
2. FND_FILE.PUT_LINE - this procedure as used to write a line of text to a file followed by a new line character.
Procedure FND_FILE.PUT_LINE (which IN number, buff IN varchar2);
EX:- FND_FILE.PUT_LINE( FND_FILE.LOG, find_message_get);
3. FND_FILE.NEW_LINE
- this procedure is used to write line terminators to a file
procedure FND_FILE.NEW_LINE (which IN number LINES IN NATURAL:=1);
Ex:- to write two newline characters to a log file
Fnd_file.new_line (fnd_file.log,2);
4. FND_FILE.PUT_NAMES
- this procedure as used to set the temporary log file and output filenames and the temporary directory to the user specified values.
- This should be called before calling my other FND_FILE procedure and only once per a session.

61)Function FND_REQUEST.SUBMIT_REQUEST
( application in varchar2 default null,
program in varchar2 default null,
description in varchar2 default null,
start-time in varchar2 default null,
sub_request in bookan default False,
argument1,
arguemnt2,
argument 100) return number;
* If this is submitted from oracle forms, all the arguments ( 1 to 100 ) must be specified. 
62. How to submit concurrent programs through OS?
- From the operating system the utility .CONCSUB is used to submit is concurrent propgram.
- This is basically used to test a concurrent program .
- By using the WAIT token. The utility checks the request status every 60 seconds and returns the OS prompt upon completion of the request.
- Concurrent manager doesnot abort, shutdown or start up until the concurrent request completes.
* If the concurrent program is compatible with itself, it can be checked for data integrity and dead locks by submitting it many times so that it runs concurrently with itself.
*PL/SQL procedures can submit a request to run a program as a concurrent process by calling.
FND_REQUEST. SUBMIT_REQUEST.
* Before submitting a request, the following functions also should be called optionally.
FND_REQUEST.SET_OPTIONS
FND_REQUEST.SET_REPEAT_OPTIONS
FND_REQUEST.SET_PRINT_OPTIONS
FND_REQUEST.SET_MODE

63. How to checks the request states?
- A PL/SQL procedure can check the status of a concurrent request by calling.
FND_CONCURENT.GET_REQUEST_STATUS
FND_CONCURRENT.WAIT_FOR_REQUEST
- FND_CONCURRENT.GET_REQUEST_STATUS
- This function returns the status of a concurrent request
- If the request is already computed, it also returns the completion message.
- This function returns both user friendly (translatable) phase and status values as well as developer phase and status vales that can drive program logic. 
( request_id in out number,
application in varchar2 default null,
program in varchar2 default null,
phase out varchar2,
status out varchar,
dev_phase out varchar2,
dev_status out varchar2,
message out varchar2) return BOOLEAN;
- when application and program are specified, the request_id of the last request for the specified program should be returned to request_id.
- Phase, and status values should be taken from
FND_LOOKUPS
dev_phase dev_status
pending normal, standby, scheduled, paused
running normal, waiting, resuming, terminating.
Complete normal, Error, warning, cancelled, terminated
Inactive disabled, on-hold, No-manager, supended
- FND_REQUEST.WAIT_FOR_REQUEST
- This function waits for request completion, then returns the request phase/status and completion message to the caller.
- Goes to sleep between checks for request completion.
Syntax
( request_id in number default null,
interval in number default 60,
max_wait in numbe default 0, 
phase out varchar2,
status out varchar2,
dev_phase out varchar2,
dev_status out varchar2,
message out varchar2) return BOOLEN;
* FND_CONCURRENT.SET_COMPLETION_STATUS
- this function should be called from a concurrent program to set its completion states.
- This function returns TRUE on success, other wise FALSE.
ENT.SET_COMPLETION_STATUS
( status in varchar2,
message in varchar2) return BOOLEAN;
normal
status warning
Error

64. What is the reason for not getting any data when a multi org view is quired?
- to get the data correctly, the xxx-ALL must be referenced and the ORG_ID value should be specified to extract portioned data.
- Multiorg views are partitioned by using ORG_ID.
- So access through multiorg views will not return any roes, as the CLIENT_INFO Value is not set
- Use HR_OPERATING UNITS to identify the organization _id of the OU on which query is based.
- Use FND_CLIENT_INFO package to set the value in CLIENT INPO using set_org_contest.
- Execute fnd_client_info. Set_org_context („<org_id>);
- Now qurying of multiorg views can be done.


65. what are Handlers?
* Handler is a group of packaged procedures which is used by Oracle Applications to organize . PL/SQL code in forms.
- Handlers provide a way to centralize the code so that it becomes easier to develop, maintain and debug.
- The packaged procedures available in a handler are called form the triggers by passing the name of the trigger as an argument for the procedure to process.
* Handlers are types :- 1) Item Handlers
2) Event Handlers
3) Table Handlers
4) Business Rules
- Handlers reside in program units in the form or in stored packed in the database.

66. Token

If Oracle reports are executed by a concurrent program, (for Oracle Reports Program), then a keyword or a parameter with the same name as in the report builder, should be defined which for each parameter, which is known as taken.
This is used to pass the parameters to the reports from the application (SRS Window)

67. What are security Attributes?
- Security Attributes are used by Oracle self service web Applications to allow rows of data to be visible to specified users responsibilities based on the specific data contained in the row.

68. What is a Profile Option?
- profile options are the set of changeable options that affects how the application looks and behaves.
- By setting profile options, the applications can be made to react in different ways for different users depending on the specific user attributes.

69. What are steps involved in developing a flex field?
- designing the table structure
- creating fields on the form (Visible/Hidden)
- calling appropriate routines
- registration of the flex field.
- Definition of the flex field.
<Flex fields / key/ Register>
<Flex fields/Descriptions / Register>

70) What are the types of Concurrent Managers 
3 MASTER CONCURRENT MANAGERS:
1. Internal Conccurent Manager (ICM): This is the one which monitors all other CMs
2. Standard Manager (SM) : This takes care of report running and batch jobs
3. Conflict Resolution Manager (CRM): checks concurrent program definitions for incompatability checks.
We cannot delete a concurrent manager... but we can disable it... but it's not recommended.

71) multi org set up
Begin
dbms_application_info.set_client_info('ORG_ID');
end;

72. What is the relation between Responsibility, Menu and Request Group?
Responsibility: - A responsibility is a set of authority in Oracle Apps that lets users access only that functionality of the application appropriate to their roles.
Menu: - A menu is a hierarchical arrangement of functions and menus of functions that appears in the Navigator. Each responsibility has a menu assigned to it.
Request Group: - it is a collection of reports or concurrent programs. A system Administrator defines report groups in order to control user access to reports and concurrent programs. Only a system administrator can create a request group.


73. What is a function, how to create one?
A function is apart of an applications functionality that is registered under a unique name for the purpose of assigning to it to, or excluding it from, a menu (and by extension, responsibility). There are several types of functions: - Form Functions, SubFunctions, and
Non-form functions. We often refer to a form function simply as a form.

74. What is meant by APPL_TOP?
Environment variable
An operating System variable that describes an aspect of the environment in which your application runs. For example, you can define an environment variable to specify a directory path. 
$APPL_TOP: An environment variable that denotes the installation directory for Oracle Application Object Library and your other Oracle applications. $APPL_TOP is usually one directory level above each of the product directories (which are often referred to as $PROD_TOP or $PRODUCT_TOP or $<prod>_TOP).

75. Explain briefly where are the Custom.pll, Forms, Reports, Sql Loader Control files, Shell Script source code and executables files kept?
Custom.pll - $AU_TOP/resource
Forms - $PROD_TOP/Forms/US
Reports - $PROD_TOP/Reports/US
SQL Control Files - $PROD_TOP/Bin
Shell Scripts - $PROD_TOP/Bin

76. When is Custom.pll used?
Custom.pll is used while making new or customizing standard oraclke forms in apps. It contains all the forms libraries for apps.

77. How can you know the form (fmb) name when you open a form in Apps?
Help

78. Where do you create a table and sequence in Apps? Is it APPS schema?
In custom schema and then grant privileges on it to APPS schema.

79) Can new profiles be created? If so how?
Yes. Application Developer.

80)How do you register a report? Explain passing of parameters between a concurrent program
Definition and report?
After developing the report (.rdf), FTP it to the UNIX server.
Define executable.
Define concurrent program and attach the executable.
Attach the concurrent program to a request group.

81) What is the approach to create a new form to be used in Oracle Apps?
The TEMPLATE form is the required starting point of all development of new forms. Start Developing each new form by copying the TEMPLATE.fmb file, located in
$AU_TOP/forms/US (or your language and platform equivalent), to local directory and Rename it as appropriate.

82. How do you set the operating unit context in a report?
Begin
Dbms_application_info.set-client-info(<Organization_Id>);
End;


83. Can you submit a concurrent request from the operating system directly?
Write a Shellscript.
Login to database
Run the function FND_REQUEST.Submit()

84. Explain how to generate a trace file for a pl/sql concurrent program for tuning?
Check theEnable Trace check box in concurrent program registration window.

85. How do you “write” to the concurrent request Log and Output file?
FND_FILE.PUT(FND_FILE.LOG or FND_FILE.OUTPUT, <Text>);

86. Why do we call FND SRWINIT from before Report Trigger
A. FND SRWINIT fetches concurrent request information and sets up the profile options. It must be included if one is using any ORACLE APPLICATION OBJECT LIBRARY features in his report (such as concurrent processing)

87. Why do we call FND SRWEXIT from after Report Trigger
A. FND SRWEXIT frees all the memory allocations done in other Oracle Applications user exits. It must be included if one is using any ORACLE APPLICATION OBJECT LIBRARY features in his report (such as concurrent processing)

88. Why do we call FND FLEXSQL from the Before Report Trigger?
A. One need to pass the concatenated segment values from the underlying code combinations table to the user exit so that it can display appropriate data and derive any description and values from switched value sets as needed. One gets this information by calling the AOL user exit FND FLEXSQL from the before report Trigger.

89 If u call the user exit FND FLEXSQL with MODE = “WHERE” from the Before Report Trigger. What will it do?
A. This user exit populates a lexical parameter that you specify with the appropriate SQL fragment at run time. You include this lexical parameter in the WHERE clause of the report query. This user exit is called once for each lexical to be changed.

90. If u call the user exit FND FLEXSQL with MODE = “ORDER BY” from the Before Report Trigger. What will it do?
A. This user Exit populates the lexical parameter that one specifies with the appropriate SQL fragment at run time. One includes this lexical parameter in the ORDER BY clause of the report query. This user exit is called once for each lexical to be changed.

91. How can we display flex field segment values, descriptions, and prompts on the report?
A. Create a formula Column. Call the user exit FND FLEXIDVAL as the formula for this column. This user exit automatically fetches more complicated information such as descriptions and prompts so that one does not has to use complicated table joins to the flex field tables.

92. Name some options of the FND FLEXSQL user exit
A CODE, APP_SHORT_NAME, OUTPUT, MODE, DISPLAY, SHOWDEPSEG, NUM or MULTINUM, TABLEALIAS, OPERATOR, OPERAND1, OPERAND2.

93. Describe CODE option of the FND FLEXSQL user exit
A. Specify the flex field code for the report (for example, GL#, MCAT).

94. Describe the APP_SHORT_NAME option of the FND FLEXSQL user exit
A. Specifies the short name of the application that owns the flex field (for example: SQLGL, INV)

95. Describe the OUTPUT option of the FND FLEXSQL user exit
A. Specify the name of the lexical parameter to store the SQL fragment. One uses this lexical later in the report when defining the SQL statement that selects the flex field values. the data type of this parameter should be character.

96. Describe the MODE option of the FND FLEXSQL user exit
A. Specify the mode to use to generate the SQL fragment. Valid modes are :
SELECT: Retrieves all segments values in an internal (non- displayable format).
WHERE: Restrict the query by specifying constraints on flex field columns. The fragment returned includes the correct decode statement if one specifies MULTINUM. One must also specify an OPERATOR and OPERANDS.
HAVING: Same calling procedures and functionality as WHERE.
ORDER BY: Order required information by flexfield columns. The fragment Orders your flexfield columns and separates them with a comma. The fragment returned includes the correct decode statement, one specifies in MULTINUM.

97. Describe the DISPLAY option of the FND FLEXSQL user exit
A. One uses the DISPLAY token with the MODE token. The DISPLAY parameter allows you to specify segments that represent specified flexfield qualifiers or specified segments numbers, where the segment numbers are the order in that the segments appear in the flexfield window, not the segment number specified in the Define Key Segments form.
Eg. If your MODE is SELECT and you specify DISPLAY = “ALL” then the SELECT statement includes all the segments of the flexfield. . Similarly, if your MODE is WHERE and you specify DISPLAY = “ALL”, then your WHERE clause includes all segments.

98. Describe the SHOWDEPSEG option of the FND FLEXSQL user exit
A. SHOWDEPSEG = “N” disables automatic addition of depended upon segments to the order criteria. The default is “Y”. This token is valid only for MODE = “ODER BY” In FLEXSQL.

99. Describe the NUM option of the FND FLEXSQL user exit
A. Specify the name or lexical or source column that contains the flexfield structure information. If the flexfield uses just one structure, specify NUM only and use a lexical parameter to hold the value. If the flexfield uses multiple structures, specify MULTINUM only and use a source column to hold the value. The default value is 101.

100. Describe the TABLE ALIAS option of the FND FLEXSQL user exit
A. You use TABLE ALIAS if your SELECT joins to other flexfield tables or uses a self – join.

101. Describe the OPERATOR option of the FND FLEXSQL user exit
A. Specify an operator to use in the WHERE clause.

102. Describe the OPERAND1 option of the FND FLEXSQL user exit
A. Specify an operand to use in the WHERE clause,

103. Describe the OPERAND2 option of the FND FLEXSQL user exit
A. Specify a second operand to use with OPERATOR = “BETWEEN”

104. Where is FND FLEXIDVAL user exit used
A. Call this user exit to populate fields for display. You pass the key flex fields data retrieved by the query into this user exit from the formula column. With this exit you can display values, descriptions and prompts by passing appropriate token (any one of VALUE, DECRIPTION

105. Name the interface tables used for the customer interface?
A. 1. RA_CUSTOMERS_INTERFACE_ALL
2. RA_CUSTOMER_BANKS_INT_ALL
3. RA_CUST_PAY_METHOD_INT_ALL
4. RA_CUSTOMER_PROFILES_INT_ALL
5. RA_CONTACT_PHONES_INT_ALL

106. What is the name of the column in CUSTOMER_INTERFACE_TABLE that indicates whether you are inserting new or updating existing information?
A: When importing data into the interface tables, the column INSERT_UPDATE_FLAG indicates whether you are inserting new or updating existing information. This column is required in RA_CUSTOMERS_INTERFACE.
107. If the INSERT_UPDATE_FLAG is not set correctly or the required column is missing the value, will CUSTOMER INTERFACE reject the entire record or just the attributes u want to update?
A Reject the entire record.

108. List some of the required columns for the RA_CUSTOMERS_INTERFACE?
A. ORIG_SYSTEM_CUSTOMER_REF
INSERT_UPDATE_FLAG
CUSTOMER_NAME
CUSTOMER_NUMBER (if you are not using Automatic Customer Numbering)
CUSTOMER_STATUS
LAST_UPDATED_BY
LAST_UPDATE_DATE
CREATED_BY
CREATION_DATE
If you are importing an address and a business purpose, you must also populate the following columns:
PRIMARY_SITE_USE_FLAG (if you are inserting an address)
LOCATION (if you are not using Automatic Site Numbering)
SITE_USE_CODE (if you are inserting an address)
ADDRESS1

109. List some of the production tables that Customer Interface transfers customer data from the interface tables into?
A. AR_CUSTOMER_PROFILES
AR_CUSTOMER_PROFILE_AMOUNTS
RA_ADDRESSES
RA_CONTACTS
RA_CUSTOMERS
RA_CUSTOMER_RELATIONSHIPS
RA_CUST_RECEIPT_METHODS
RA_PHONES
RA_SITE_USES
AP_BANK_ACCOUNT_USES
AP_BANK_ACCOUNTS
AP_BANK_BRANCHES

110. What validation must be given on the customer_number?
A Must be null if you are using Automatic Customer Numbering. Must exist if you are not using Automatic Customer Numbering. This value must be unique within RA_CUSTOMERS.

111. What validation must be given on the CUSTOMER_STATUS?
A Must equal ’A’ for Active or ’I’ for Inactive.

112. Name some of the Oracle receivables Interfaces?
a) Auto Invoice
b) Auto Lockbox
c) Customer Interface
d) Sales Tax rate Interface
e) Tax Vendor Extension

113. Give some of the Oracle Payables interface?
A. a) Credit Card Transaction Interface
b) Invoice Import Interface
c) Payables Open Interface
d) Purchase Order Matching

114. Name some of the oracle general ledger Interface?
A Budget Upload
b) Importing Journals
c) Loading Daily rates

115. What is the use of Auto lock Box?
A Auto Lockbox (or Lockbox) is a service that commercial banks offer corporate customers to enable them to outsource their accounts receivable payment processing.

116. Auto Lockbox is a three-step process, what are those?
A. a) Import
b) Validation
c) PostQuickCash

117. What is the order in which Autolock box searches for the types of the matching number?
A. 1. Transaction Number
2. Sales Order Number
3. Purchase Order Number
4. Consolidated Billing Invoice Number
5. Other, user-defined number.

118 . What are validations to be done in Journal Import interface.
A. Batch level: Set of Books, Period Name, and Batch Name
Journal Level: Set of books, Period name, Source name, Journal entry name, Currency code, Category name, Actual flag, Encumbrance type ID, User conversion type, Accounting date, Budget version ID

119. What subclass in forms6i
A Specifies module, storage & name information about the source object and source module for a referenced objects.

120. What is the clause in SQL * Loader to program to override data into table
A. REPLACE

121. How do you set profile in oracle applications In Application Developer responsibility?
A Open ‘Profile’ Function

122. What is the syntax for loading data through SQL * Loader from multiple files simultaneously
A. Sqlldr scott/tiger@orcl <mailto:scott/tiger@orcl> control = ctlfile
parfile — parameter file: name of file that contains parameter specifications
parallel — do parallel load (Default FALSE)

123. Tell me names of important production tables & their purpose AP, AR, GL, PO
A AP: AP_INVOICES_ALL, AP_INVOICE_LINES_ALL
To store invoices
AR: RA_SHIPMENT_HEADERS/ _LINES, RA_CUSTOMERS, RA_CONTACTS
PO: PO_VENDORS, PO_VENDOR_SITES – For storing vendor data.

124. Name the interface tables used for the Lockbox Interface
A Interface table : AR_PAYMENTS_INTERFACE_ALL
Lockbox transfers the receipts that pass validation to the Receivables interim tables AR_INTERIM_CASH_RECEIPTS_ALL and AR_INTERIM_CASH_RCPT_LINES_ALL
When you run Post QuickCash, the receipt data is transferred from the QuickCash tables to the following Receipt tables:
AR_CASH_RECEIPTS_ALL
AR_RECEIVABLES_APPLICATIONS_ALL
AR_CASH_RECEIPT_HISTORY_ALL

125. Name the interface tables used for the AutoInvoice Interface.
A AutoInvoice transfers transaction data from the interface tables
RA_INTERFACE_LINES_ALL,
RA_INTERFACE_SALESCREDITS_ALL, and
RA_INTERFACE_DISTRIBUTIONS_ALL
into the following Receivables tables:
• RA_BATCHES_ALL
• RA_CUSTOMER_TRX _ALL
• RA_CUSTOMER_TRX_LINES _ALL
• RA_CUST_TRX_LINE_GL_DIST_ALL
• RA_CUST_TRX_LINE_SALESREPS_ALL
• AR_PAYMENT_SCHEDULES_ALL
• AR_RECEIVABLE_APPLICATIONS_ALL
• AR_ADJUSTMENTS_ALL



















Uploading PO Attachments from EBS to FTP Server

 create or replace PROCEDURE xx_upload_po_attachment(errbuff out varchar2, retcode out number)  IS CURSOR cur_new_attmt IS    select ponumbe...