Oracle APPS Interview Question & answers

Embed Size (px)

DESCRIPTION

Oracle APPS Interview Question & answers

Citation preview

WHAT IS THE DIFFERENCE BETWEEM APPS SCHEMA AND OTHER SCHEMAS?

ANS: APPS SCHEMA DOESN'T CONTAIN DATABASE OBJECTS, IT CONTAINS ONLY SYNONYMS AND THIS SCHEMA WILL HAVE THE RIGHTS TO ACCESS OTHER SCHEMA DATABASE OBJECTS.

WHAT IS MEANT BY CUSTOM TOP? WHATS THE PUPOSE?

ANS:CUSTOM TOP WILL BE CREATED OR DEVELOPED BY CLIENT FOR CUSTOMER DEVELOPMENT AND CUSTOMIZATION.

IF WE DONT HAVE CUSTOM TOP, WE CAN ALSO USE THE PRODUCT TOP FOR DEVELOPMENT AND CUSTOMIZATION.

EVERY CLIENT WILL HAVE ATLEAST ONE CUSTOM TOP OR MULTIPLE CUSTOM TOPS...

WHAT THE SIGNIFICANCE OF US FOLDER?

ANS:THIS IS LANGUAGE SPECIFIC FOLDER. WHEN WE ARE USING MULTIPLE LANGUAGES FOR THE CLIENT, WE WILL USE THIS US FOLDER.BY DEFAULT AMERICAN LANGUAGE. US FOLDER IS AVAILABLE ONLY FOR FORMS AND REPORTS, BECAUSE BOTH ARE GUI(GRAPHICAL USER INTERFACE)'S.

It is nothing but language specification by default it is in american language. We can have multiple languages FOLDERS BASED on installed languages. from backend we can get it fromFND_LANGUAGES -- COL --INSTALLED_FLAG I,B,D

I--INSTALLED,B--BASE,D--DISABLEselect language_code,nls_language from fnd_languages where installed_flag like 'B'

Where did U find the Applcation short name and basepath names?

select basepath, APPLICATION_short_name from fnd_application--- from the backend. From the from end we can getitNavigation Application Developer.---> Application-->Register The application name we will get from FND_APPLICATION_TL

Where can U find the release version from backend?

SELECT release_name from FND_PRODUCT_GROUPS;

WHAT ARE THE FOLDERS WE WILL FIND BELOW 11.5.0 FOLDER?

ANS: AVAILABLE FOLDERS are ADMIN, BIN, FORMS, REPORTS, LOG, OUT, SQL, XML, MDS..CAN WE CREATE THE TABLES IN APPS SCHEMA?

ANS: noCAN WE HAVE CUSTOMS SCHEMA? WHEN IT REQUIRED?

ANS: yes, we can have custom schema, when we want to create a new table we required custom schema. What is application top? What are the types and purpose?

A) When we connect to the server we will find the top called application top. Under application top we have

Product top.

Custom top

Product top is the default top built by the manufacturer. Custom top is used to select the Client for his business purposes. Customizations are done with the Custom top.

What is US folder in the Custom Top?

It is a language specific folder used to store the G.U.I like reports and forms.

What is Apps Schema and Schema?

Schema: Schema is the location in database contains database objects like views, tables, and synonyms.

Apps Schema: It is used to connect the all schemas to get the information from The database.

is it possible to run the interface without using oracle apps?Yes it is very much possible to run the interface without using Oracle application's front end, you can do that from back end. but for the same, one needs to be well aware of minimum parameters of the interface program.

What is FORWARD DECLARATION in Packages?

PL/SQL allows for a special subprogram declaration called a

forward declaration. It consists of the subprogram

specification in the package body terminated by a semicolon.

You can use forward declarations to do the following:

? Define subprograms in logical or alphabetical order.

? Define mutually recursive subprograms.(both calling each

other).

? Group subprograms in a package

Example of forward Declaration:

CREATE OR REPLACE PACKAGE BODY forward_pack

IS

PROCEDURE calc_rating(. . .); -- forward declaration

PROCEDURE award_bonus(. . .)

IS

-- subprograms defined

BEGIN

-- in alphabetical order

calc_rating(. . .);

. . .

END;

PROCEDURE calc_rating(. . .)

IS

BEGIN

. . .

END;

END forward_pack;

the differance between Master Item and organization Item in Inventory?

master item will avaliable all inv organizations under the operating unit organition item is avaliable only a particular inv org in master item their is no transaction

how can u link a org-id with a responsibility in reports?profile option Mo_operating_unit is setup at responsibility level

what is tuning in oracle apps technicalTuning in apps to resolve the performance issues (means ot reduce the time taken by a Query using the Explin Plan and TK Proof)

What is the Lookup's and what is the use of lookup's?Lookups are referred in more locations.

instead of storing the original value,we can store the lookup codes.

this will reduce the space that is occupied in the database.

this is one reason.

the main reason is, take an example... in a table xx_emp there is one column gender. possible values are male m female f other o

define the above values in a lookup.

if u want to change the male to female ..u go and update the lookups then automatically all the records referring to that lookup will also change dynamically...

This saves time and complexity.

Oder of firing triggers in formThe order of firing triggers will be as follows Form -> Block -> Item level..

If the same trigger exist in all the level then only it will start from the lowest level to highest level.

Give a brief overview on OrderManagement.order manAgement deals with order to cash

first we have to enter the order

order returns----sales order

we have to enter the order in headers and lines information

when we enter the order it shows entered in both headers

and lines

after that we have to book the order

after entering it shows booked in headers and awaiting shipping in lines

it shows the release status --R means ready for relaese

after that we have to do pick release

when picked it shows booked in HEADERS AND picked in lines

it shows the flow status code changes from R to Y means Pick Confirmed

in the back ground two concurrent will run

1) Pick Slip Report

2) Shipping Exceptions report

After that we have to do shipping.while shipping the flow status code will change from Y to C

means Ship Confirmed

in the background it runs 5 Concurrent programs

Automatically

1)Bill of Lading

2) Commercial Invoice

3)Packing slip Report

4)Interface trip stop

5)Vehicle load sheet Details

After that we have to run the workflow Background Program

After that we have to do the Invoices

After that we have to do the receipts

After that we will transfer it in to General Ledger

Transform Program

What is GLOBAL TEMPORARY TABLE and It's SIGNIFICANCE?Creation of Global Temporary Tables

The data in a global temporary table is private, such that

data inserted by a session can only be accessed by that

session. The session-specific rows in a global temporary

table can be preserved for the whole session, or just for

the current transaction. The ON COMMIT DELETE ROWS clause

indicates that the data should be deleted at the end of the

transaction.

CREATE GLOBAL TEMPORARY TABLE my_temp_table (

column1 NUMBER,

column2 NUMBER

) ON COMMIT DELETE ROWS;

In contrast, the ON COMMIT PRESERVE ROWS clause indicates

that rows should be preserved until the end of the session.

CREATE GLOBAL TEMPORARY TABLE my_temp_table (

column1 NUMBER,

column2 NUMBER

) ON COMMIT PRESERVE ROWS;

Miscellaneous Features

* If the TRUNCATE statement is issued against a

temporary table, only the session specific data is trucated.

There is no affect on the data of other sessions.

* Data in temporary tables is automatically delete at

the end of the database session, even if it ends abnormally.

* Indexes can be created on temporary tables. The

content of the index and the scope of the index is that same

as the database session.

* Views can be created against temporary tables and

combinations of temporary and permanent tables.

* Temporary tables can have triggers associated with them.

* Export and Import utilities can be used to transfer

the table definitions, but no data rows are processed.

* There are a number of restrictions related to

temporary tables but these are version specific.

How you will Diaplay the Company LOGO In report? in report builder draw a image feild. you can get this image option from tool pallate. then change source file format as image where as default is

text in the property pallate of that image. then give the proper path where youe company logo is been kept at the source file format feild.

now run the report and u can see the company logo. If yet it.s not comming or showing some error then check wat frame that image belongs to.

What is the link between AP and GL in oracle apps R/12?AP_INVOICES_ALL --> Invoice_id = APPLIED_TO_SOURCE_ID_NUM_1

INVOICE_DISTRIBUTION_ID =

SOURCE_DISTRIBUTION_ID_NUM_1 Profile

Name : Test MOAC in R12

Business Group : Vision Corporation

Security Type : Security Organiztions by organization hierarchy and/or organization list

classification : Vision Operation

classification : Vision Construction

classification : Vision Ope (USA)

Step 2: Submit single Request set "Security List Maintenance"

Parameters:

Generate list for : ALL Security Profiles

process : Current People only

Static user Processing : Process all Static Users

Step 3: Go to Sysadmin Security-> Responsibility->Define

Responbility Name : Test MOAC

Application : Paybles

Define Group : Standard

Application : Paybles

Menu : AP_NAVIGATE_GUI12

Request Group : ALL Reports

Application : Paybles

Step 4: Assign "Test MOAC" Responsibility to any User

Step 5: Goto Sysadmin Profile->System

Profile Option Name : MO Security Profile

Responsibility Testing MOAC:Test-MOAC Feature

Step 6: Goto Test MOAC Responsibility

Invoices->Entry Invoices

r12 multi org flow?i)Business Group (Which dealt with HRMS Module) It is the Higest level in the ORG structure.

2)ledgers

3)Legar Entity ( Dealt with Tax entities, Govt reporting authorities)

4)Operating Unit (Dealt with 5 sub ledger modules by name AP/AR/GL/PO/OM

5)Inventory Organisation (Dealt with INV/BOM/WIP/MS_MRP)

Why the PO Receipt functionality will come at Inventory organization level?

user is creating receipt means indirectley he will be receiving the materials from suppliers.materials will be received at Gowdons ,Warehouses,manufcaturing plants all these organizations will come at Inventory Organization level.

PURCHASE ORDER

HOW TO FIND THE PO NUMBER IF WE GIVE REQUISITION NUMBER?

po_DISTRIBUTIONS TABLE join with req table

HOW TO SET UP BUYER?

i)attach the Responsibility called "US HRMS Manager"

ii)Create Employee

People => Enter and Maintain=>Select New button

iii)Enter Emp name

select action option select "create Employement" select the optiona s "Buyer"

iv)enter Data of Birth

save => Ok = > Empoyee number will be generated.

v)Goto System Administrator open the User form create or query user

select the Person field attach the emp name (Which we have created)

vi)Save.

vii)Goto Purchasing Responsibility

open the Buyers form

enter the employee name and save the transactions.

Setup => Personnal =>Buyers

WHAT IS THE DIFFERENCE BETWEEN BLANKET AND STANDARAD?

Standard PO: For all the Purchase Orders we will use Standard PO as the PO type where we will specify terms & conditions items, price, quantity, delivery Schedule and so on.

Planned PO: if delivery schedule is not confirmed then we will create planned PO

Blanket Agreement: Supplier and Buyer will have the agreements where we will find terms & conditions and items price may or may not. Whenever buyer is required material he will release the order as per that supplier will supply material.

Contract PA: we will have only terms and conditions buyer can purchase any item from the supplier.

Purchase order Information will be entered at 4 Levels:

1. Header level

2. Line Level

3. Shipments

4. Distributionsrfq?

Bid: BID RFQ will be created for the large & expensive items where you will not find any discount means no price breaks.

Catalog: Catalog RFQ will be created for the items, which we are purchasing frequently where we can get the price breaks and terms & conditions.

Standard: This will be created for the items, which we will purchase only once not very often. If we are sending Bid RFQ, to the suppliers then we will receive the bid quotation from the suppliers for the catalog RFQs we will be receiving quotations and for standard RFQ, standard quotation will be sent by the suppliers.

RFQ information will be entered at 3 levels

_ Headers

_ Lines &

_ Shipments

HOW TO ATTACH CONTRACT PO TO THE STANDARD PO? WHY THERE IS NO _ALL FOR PO_VENDORS TABLE?

VENDOR IS COMMON FOR ALL ORGANIZATIONS ,VENDOR IS NOT ORGANIZATION SPECIFIC

Which table will get effect in Inv when we receive the receipt in Inventory?

MTL_MATERIAL_TRANSACTIONS

MTL-ON_HAND_QUANTITIES_DETAILS

can we create pO with out Requisition no? Yes

How can we identify the Requision no for a perticular PO from front end?

In the Distributions Tab we have the field called requisition no.

tables and their relation ships?-------------------------Requisiion-------------------------------------------

INTERNAL

PURCHASE REQUISITION

HEADER

LINE

DISTRIBUTION

SELECT * FROM PO_REQUISITION_HEADERS_ALL

WHERE SEGMENT1='14454' --R_H_ID=181555

SELECT * FROM PO_REQUISITION_LINES_ALL

WHERE REQUISITION_HEADER_ID=181555 --R_L_ID=208743

SELECT * FROM PO_REQ_DISTRIBUTIONS_ALL

WHERE REQUISITION_LINE_ID=208743 --D_ID=207282

SELECT * FROM PO_LINE_TYPES

WHERE LINE_TYPE_ID=1

SELECT * FROM PO_DOCUMENT_TYPES_ALL

SELECT * FROM MTL_SYSTEM_ITEMS_B --INVENTORY_ITEM_ID

WHERE INVENTORY_ITEM_ID=210955

SELECT * FROM MTL_CATEGORIES

WHERE CATEGORY_ID=1

------------------------------RFQ----------------------------------------------

BID

CATALOG

STANDARD

HEADER

LINE

SHIPMENT/LINE LOCATION

SELECT * FROM PO_HEADERS_ALL

WHERE TYPE_LOOKUP_CODE='RFQ'

AND SEGMENT1='14454' --PO_HEADER_ID=110773

SELECT * FROM PO_LINES_ALL

WHERE PO_HEADER_ID = 110773 --PO_LINE_ID=173724

SELECT * FROM PO_LINE_LOCATIONS_ALL

WHERE PO_LINE_ID=173724 --LINE_LOCATION_ID

SELECT * FROM FND_CURRENCIES

SELECT * FROM AP_TERMS

SELECT * FROM PO_RFQ_VENDORS

WHERE PO_HEADER_ID=110773

---------------------------QUOTATION-------------------------------------------

SELECT * FROM PO_HEADERS_ALL PH

WHERE PH.TYPE_LOOKUP_CODE='QUOTATION'

AND PH.SEGMENT1='14454' --PO_HEADER_ID =110775

SELECT * FROM PO_LINES_ALL PL

WHERE PL.PO_HEADER_ID=110775 --PO_LINE_ID=173726

SELECT * FROM PO_LINE_LOCATIONS_ALL PLL

WHERE PLL.PO_LINE_ID=173726 --LINE_LOCATION_ID=264954

-------------------------------------------------------------------------------

STANDARD PO

PLANEED PO

BLANKET P AGGREMENT

CONTRACT P AGGREMENT

Standard PO Planned PO Blanket PA Contract PA

1. Terms & Conditions Known

Yes Yes Yes Yes

2. Goods or Services Known

Yes Yes Yes No

3. Pricing Known

Yes Yes May be No

4. Quantity Known

Yes Yes No No

5. Account Distributions Known

Yes Yes No No

6. Delivery Schedule Known

Yes May be No No

7. Can be Encumbered

Yes Yes No No

8. Can encumber releases

N/A Yes Yes N/A

HEADERS

LINES

SHIPMENTS

DISTRIBUTION

SELECT * FROM PO_HEADERS_ALL

WHERE SEGMENT1='6236' --PO_HEADER_ID=110776

SELECT * FROM PO_LINES_ALL

WHERE PO_HEADER_ID=110776 --PO_LINE_ID=173727

SELECT * FROM PO_LINE_LOCATIONS_ALL

WHERE PO_LINE_ID=173727 --LINE_LOCATION_ID=264955

SELECT * FROM PO_DISTRIBUTIONS_ALL

WHERE LINE_LOCATION_ID=264955 --PO_DITRIBUTION_ID=271320

SELECT * FROM PO_HEADERS_ARCHIVE_ALL

WHERE PO_HEADER_ID=110776

SELECT * FROM PO_LINES_ARCHIVE_ALL

WHERE PO_LINE_ID=173727

SELECT * FROM PO_DOCUMENT_TYPES_ALL PD

WHERE PD.DOCUMENT_TYPE_CODE='PO'

AND PD.DOCUMENT_SUBTYPE='STANDARD'

AND PD.ORG_ID=204

SELECT * FROM PO_LINE_TYPES

WHERE LINE_TYPE_ID=1

SELECT * FROM AP_SUPPLIERS

WHERE VENDOR_NAME LIKE 'TESCO' --VENDOR_ID=46170

SELECT * FROM AP_SUPPLIER_SITES_ALL

WHERE VENDOR_ID=46170 --V_S_ID=7173/4

SELECT * FROM AP_SUPPLIER_CONTACTS

WHERE VENDOR_SITE_ID IN(7173,7174)

SELECT * FROM PER_ALL_PEOPLE_F

WHERE PERSON_ID=25

SELECT * FROM PO_ACTION_HISTORY

WHERE OBJECT_ID =110776 --=PO_HEADER_ID

SELECT * FROM HR_LOCATIONS

WHERE LOCATION_ID=204

-------------------------------------------------------------------------------

SELECT * FROM RCV_SHIPMENT_HEADERS

WHERE RECEIPT_NUM='8562'

AND VENDOR_ID=46170 --SHIPMENT_HEADER_ID=4824908

SELECT * FROM RCV_SHIPMENT_LINES

WHERE SHIPMENT_HEADER_ID=4824908--S_L_ID=4815469

SELECT * FROM RCV_TRANSACTIONS

WHERE SHIPMENT_HEADER_ID=4824908 --TRANSACTION_ID=4904365

-------------------------------------------------------------------------------

AP

INVOICE TYPES

R12

STANDARD

CREDIT MEMO

DEBIT MEMO

EXPENSE REPORT

PREPAYMENT

RETAINAGE RELEASE

TRANSPORTATION INVOICES

WITHHOLDING TAX

MIXED

11i

STANDARD -CREATE INVOICE WITH SUPPNAME,SITE

CREDIT MEMO -SUPP IS GIVING DISCOUNT

DEBIT MEMO -BUYER IS GOING TO DEDUCT THE AMOUNT

EXPENSE REPORT -FOR EMP EXPENES

PREPAYMENT -WHEN SUPP REQ ADVANCE PAYMENT

PO DEFAULT -PROVIDE PO NUM AS PER PO AMOUNT INVOICE WILL BE GENERATED

QUICK MATCH -MATHCH INV EITHER WITH PO OR RECEIPT

RECURRING -FOR FIXED AMOUNT AND FIXED DURATION LIKE RENTS

MIXED TYPE

-MISC EXPENSES

WITHHOLDING TAX -IF SUPP IS NOT REGISTERED SUPP ON BEHALF OF SUPP

COMP WILL MAKE THE INCOME TAX TO THE GOVT

SELECT * FROM AP_INVOICES_ALL

WHERE INVOICE_NUM='AP001' --INVOICE_ID=211608

SELECT * FROM AP_INVOICE_LINES_ALL

WHERE INVOICE_ID=211608

SELECT * FROM AP_INVOICE_DISTRIBUTIONS_ALL --ACCOUNTING_EVENT_ID=3328832

WHERE INVOICE_ID=211608

SELECT * FROM AP_PAYMENT_SCHEDULES_ALL

WHERE INVOICE_ID=211608

SELECT * FROM XLA_EVENTS

WHERE EVENT_ID=3328832

SELECT * FROM XLA_AE_HEADERS

WHERE EVENT_ID=3328832 --A_H_ID=4951986

SELECT * FROM XLA_AE_LINES --GL_SL_LINK_ID=6859093/91/92/94

WHERE AE_HEADER_ID=4951986

SELECT * FROM GL_JE_LINES

--WHERE GL_SL_LINK_ID IN(6859091,6859092,6859093,6859094)

SELECT * FROM GL_JE_HEADERS

SELECT * FROM GL_JE_BATCHES

SELECT * FROM IBY_PAYMENTS_ALL

WHERE PAYEE_NAME LIKE 'TESCO' --PAYMENT_ID

SELECT * FROM IBY_DOCS_PAYABLE_ALL

WHERE CALLING_APP_DOC_REF_NUMBER='AP001'

SELECT * FROM AP_CHECKS_ALL

WHERE CHECK_ID=77759 --AMOUNT

SELECT * FROM AP_BANK_ACCOUNTS_ALL --11i

SELECT * FROM CE_BANK_ACCOUNTS

WHERE BANK_ACCOUNT_NAME LIKE 'BofA-204' --BANK_ACCOUNT_ID=10010

SELECT * FROM CE_BANK_ACCT_USES_ALL

WHERE BANK_ACCOUNT_ID=10010

AND ORG_ID=204

SELECT * FROM AP_HOLDS_ALL

WHERE INVOICE_ID=211608

SELECT * FROM AP_HOLDS_RELEASE_NAME_V

SELECT * FROM CE_PAYMENT_DOCUMENTS

p2p flow?

Whenever employee requires materials he will create the requisition. After requisition is approval RFQ(Request For Quotation) will be created. This

RFQ will be sent to multiple suppliers. After that we will receiving the quotation from supplier then company will do the quote analysis, one quotation will be selected as purchase order will send this PO to the supplier, as per PO terms & conditions supplier will supply the material while receiving the material we will create the document called the receipt. After the creation of receipt AP & Inventory Interfaces will be affected, which

are going to update both AP & Inventory Modules. After done contact purchase order . we can Create standard order for contract ., in that we mention Contract Po No. in Reff Doc column. In which table and what column that value is stored ?what is the common id for req and po?

What is Receipt Date Tolerance?

The buffer time during which receipts can be created with out

warning/error prior or later to receipt due dateHow do we set the Receipt Tolerance?

Receipt Tolerance can be set in three different places. 1. Master Item Form

(Item Level) 2. setup, organization form (Organization Level) 3. Purchase

Order, Receiving controls. (shipment levewhat are the tables link between

PO & Gl technically?l).

Give me some PO tables

PO_HEADERS_ALL, PO_LINES_ALL, PO_LINE_LOCATIONS_ALL, PO_DISTRIBUTIONS_ALL

Explain Approval Heirarchies in PO.

Approval hierarchies let you automatically route documents for approval. There are two kinds of approval hierarchies in Purchasing: position hierarchy and employee/supervisor relationships. If an employee/supervisor relationship is used, the approval routing structures are defined as you enter employees using the Enter Person window. In this case, positions are not required to be setup. If you choose to use position hierarchies, you must set up positions. Even though the position hierarchies require more initial effort to set up, they are easy to maintain and allow you to define approval routing structures that remain stable regardless of how frequently individual employees leave your organization or relocate within it

requisition?

Internal Requisition: Internal Requisition will be created whenever we are receiving the material from another organization in the company.

Purchase Requisition: Purchase Requisition will be created whenever company is purchasing material from suppliers.

Requisition information will be entered in 3 Levels

1. Headers

2. Lines and

3. Distributions

Ap

HOW to transfer transactions from AP to GL?

i. Create invoice and approve it

ii. Make payments and generate accounting transactions.

iii. Go to SRS Window, select concurrent program called Payables Transfer to GL.Enter invoice date in from date and to date parameters, system will submit theprogram internally called Journal Import.

iv. Copy the request id of journal import.

v. Go to the responsibility _ General Ledger Super user and go with the navigation

Journals _ Enter , paste the request id of Journal Import in the batch field

WHAT are the Base tables we have in AP?

WHAT is Distriutions set?

If we want to create distribution transactions by using the system then we will go for creation of distribution set.

Distribution set will be used to Distribute the Invoice amount automatically for the different accounts .

What is Payment Terms?

Payment Terms let you define the due date or the discount date , due amount or discount amount. Once the payment terms are defined, you can attach these to the suppliers and supplier sites and these terms will be automatically populated once the invoice is entered for a supplier site.WHAT are the types of Payments we have?

MANUAL, QUICK, REFUNDManuval: If Organzation is going to pay the amount manuvally (by cheque or cash) then it will be captured under the manuval payment type.

Quick : We will Give the Invoice number System will automatically genrate the

Payment transaction as per the Invoice number we have provided.

System will automatically generates the Cheque number also.

Refund : If any refundable amount we have to pay to the supplier or customer or emp then those payments will be select as Refund method.r12Bill Payable

check

clearing

comcheck payment method

Electronic

Outsourced Check

wire

Payment Method.

Check. Payment in a payment batch, Quick payment, or manual payment. Usually a paper check you give to your supplier.

Electronic. You pay electronic payments either through the EDI Gateway, or by delivering a payment batch file to your bank. For both methods, Payables creates a file during payment batch creation. For EDI Gateway payments, the file is processed through the EDI Gateway and delivered to your bank to create payments. For electronic funds transfers, the file is formatted and delivered to your ap.out directory for you to deliver to your bank.

Wire. A payment method where you pay invoices outside of Payables by notifying your bank that you want to debit your account and credit your supplier's account with appropriate funds. You provide your bank with your supplier's bank information, and your bank sends you confirmation of your transaction. Your supplier's bank sends your supplier confirmation of the payment. You then record the transaction manually.

Payment Clearing. Payment method you use to account for intercompany expenses when you do not actually disburse funds through banks. Generally, you do not generate a payment document with the Clearing payment method.

When you enter the invoice, you enter Clearing for the payment method. You can record a clearing payment using a Manual type payment only.

Future Dated. You generate and send to your bank a payment which includes a future date that instructs your bank when to transfer funds to your supplier's bank. A Bill of Exchange is an example of a payment document that uses this method. You can enter this payment method only if you enable the Allow Future Payment Method Payables option. When you create a payment batch, create a Quick payment, or record a manual payment, you select a payment document that uses a Future Dated payment format.

Manual Future Dated. This method is the same as the future dated payment method except that your supplier includes with an invoice a payment notice. You approve the payment notice, which includes a future payment date, and forward it with the payment to your supplier. You can enter this payment method if you enable the Allow Future Payment Method Payables option. Since you do not generate a payment document, you use a Manual payment with a Manual Future Dated payment document to record the payment.

WHAT is diff between Supplier and Vendor?

it's the same thing. The term Vendor tends to be used from the technical side (po_vendors, po_vendor_sites_all, ...) and Supplier tend to be used from functional side (in the PO responsibilities you will find Supply Base, Approver Supplier List, Supplier Merge), but both Vendor and Supplier refer to the same entity.

Supplier - Supplier are those which provide some material to the company but they have not any contract to the companyVendor - They also provide the material to the company but they have contract to the companyWHERE the Accounting entries will be stored? ap_ae_headers_all, AP_ae_lines_all

WHAT are the Interfces we have in AP module?

PAYABLES

What is the process/steps for Vendor Conversion?

Insert the Vendor info into the interface tables and perform the required validations: AP_SUPPLIERS_INT AP_SUPPLIER_SITES_INT AP_SUP_SITE_CONTACT_INT Run the below programs to load the data into the Base tables: Supplier Open Interface Import Supplier Sites Open Interface Import Supplier Site Contacts Open Interface Import

What is Invoice Tolerance?

We can define the matching and tax tolerances i.e how much to allow for variances between invoice, purchase order, receipt, and tax information during matching. You can define both percentagebased and amountbased tolerances.

Explain the set up used for Automatic or Manual Supplier Numbering.

In the Financials Options window, you can set the Supplier Number entry option to either Autimoatic or Manual Automatic: The system automatically assigns a unique sequential number to each supplier when you enter a new supplier. Manual: You enter the supplier number when you enter a supplier

What is a Payable Document?

A medium you use to instruct your bank to disburse funds from your bank account to the bank account or site location of a supplier.

In which table we can find the vendor number?

PO_VENDORS (11i) AP_SUPPLIERS(R12) --COL: SEGMENT1

Give the cycle from creating an invoice to transferring it to GL in AP.

1)Create Invoice 2)Validate Invoice 3)Create Accounting entries using Payables Accounting Process 4)Submit the Payables Transfer to General Ledger program to send invoice and payment accounting entries to the General Ledger interface. 4)Journal Import (GL) 5)Journal Post (GL)

You have created a new SOB. How will you attach this SOB to AP?

Go to Payables Manager for the appropriate Operating Unit. Navigation:Setup>Set of Books>choose.

can we create invoice without PO in payables? then how?

yesIn AP the suppliers didnt visible in India Creditors Ledger Report Parameter?

pls check whether that particular supplier is available in Suppliers addition inforamtion or not.

What will accrue in Payables?

Expenses and Liabilities

What is a Hold? Explain the types of Hold.

Payables lets you apply holds manually on an invoice, Payments etc to prevent the payment from being made or to prevent the accounting entries to be created etc. Some of the Payable holds are Invoice Hold, Accounts Hold, Funds Hold, Matching Hold, Variance Hold, Misc hold.

Which module is the owner of Vendor/Supplier tables?

Purchasing

How many key flexfields are there in Payables?

No Key Flexfields in AP

What is the Distribution Type while entering the Invoice?

Item, Tax, Miscellaneous,Freight, Withholding Tax

What are the Prepayment types?

Temporary and Permanent

What is Aging Periods?

Aging Periods window are the time periods for the Invoice Aging Report. The Invoice Aging Report provides information about invoice payments due during four periods you specify.

Whats the difference between the Payables Open Interface Import

Program and the Payables Invoice Import program?

Payables Open Interface for importing regular invoices Payables Invoice Import for importing expense reports. In 11i renamed as Expense Report Import.

What is prepayment & steps to apply it to an Invoice?

Prepayment is a type pf invoice that you enter to make an advance payment to a supplier or employee. To Apply it to an Invoice ,in the Invoices window, query either the prepayment or the invoice to which you want to apply it. Choose the Actions button and select the Apply/Unapply Prepayment check box. Click OK.

Can you hold the partial payment if yes then how?

Yes. 1.Go to the Invoice window. Go to the scheduled payments tab. 2.Click Split to split the scheduled payment into as many payments as you wish. 3.Check Hold against the Payment line you wish to hold.

How you will transfer payables to general ledger?

Create Accounting. Transfer the transactions to GL_Interface Import the Journals Post the Journals

What program is used to transfer AP transactions to GL?

Payables Transfer to General Ledger Program(11i)

JOURNAL TRANSFER TO GENERAL LEDGER

What is use of AP Accounting Periods?

In Payables accounting periods have to be defined to enter and account for transactions in these open periods. Payables does not allow transaction processing in a period that has never been opened. These periods are restricted to Payables only. The period statuses available in Payables are Never Opened, Future,Open, Closed, and Permanently Closed

What are the different interface programs in AP?Payables Open Interface Import to load Invoices and other transactions. Supplier Open Interface Import to load Suppliers. Supplier Sites Open Interface Import to load Supplier sites. Supplier Site Contacts Open Interface Import to load Supplier Site contacts.

Account Payables

==============

INVOICE TYPES

R12

STANDARD

CREDIT MEMO

DEBIT MEMO

EXPENSE REPORT

PREPAYMENT

RETAINAGE RELEASE

TRANSPORTATION INVOICES

WITHHOLDING TAX

MIXED

11i

STANDARD

-CREATE INVOICE WITH SUPPNAME,SITE

CREDIT MEMO -SUPP IS GIVING DISCOUNT

DEBIT MEMO -BUYER IS GOING TO DEDUCT THE AMOUNT

EXPENSE REPORT -FOR EMP EXPENES

PREPAYMENT -WHEN SUPP REQ ADVANCE PAYMENT

PO DEFAULT -PROVIDE PO NUM AS PER PO AMOUNT INVOICE WILL BE GENERATED

QUICK MATCH -MATHCH INV EITHER WITH PO OR RECEIPT

RECURRING -FOR FIXED AMOUNT AND FIXED DURATION LIKE RENTS

MIXED TYPE -MISC EXPENSES

WITHHOLDING TAX -IF SUPP IS NOT REGISTERED SUPP ON BEHALF OF SUPP

COMP WILL MAKE THE INCOME TAX TO THE GOVT

11i

R12

Hr_Employees

per_all_people_f

po_vendors

Ap_suppliers

po_vendor_sites_all

AP_SUPPLIER_SITES

po_vendor_contacts

AP_SUPPLIER_CONTACTS

payments

ap_invoice_payments_all

ap_invoice_payments_all

ap_checks_all

ap_checks_all

ap_accounting_events_all

ap_accounting_events_all

CE_BANK_ACCOUNTS

CE_PAYMENT_DOCUMENTS

IBY_EXTERNAL_PAYEES_ALL

IBY_PMT_INSTR_USES_ALL

AP_BANK_BRANCHES

CE_BANK_BRANCHES_V

AP_BANK_ACCOUNTS_USES_AL

---------------------

AP_CHECK_STOCKS_ALL

CE_PAYMENT_DOCUMENTS

payment Methods

Bill Payable

check

clearing

comcheck payment method

Electronic

Outsourced Check

wire

payment types

manual

quick

refund

SELECT * FROM AP_INVOICES_ALL

WHERE INVOICE_NUM='AP001' -- -INVOICE_ID=211608

-- - INVOICE_AMOUNT

-- SOURCE='Manual Invoice Entry'

SELECT * FROM AP_INVOICE_LINES_ALL

WHERE INVOICE_ID=211608

-- LINE_NUM

--ORG_ID

--DESCRIPTION(Item Desc)

--INVENTPRY_ITEM_ID

--MATCH_TYPE=ITEM_TO_PO

--AMOUNT

--UANTITY_INVOICED

--UNIT_PRICE

--PO_HEADER_ID

--PO_LINE_ID

SELECT * FROM AP_INVOICE_DISTRIBUTIONS_ALL

WHERE INVOICE_ID=211608 ---ACCOUNTING_EVENT_ID=3328832

DIST_CODE_COMBINATION_ID

INVOICE_ID

SELECT * FROM AP_PAYMENT_SCHEDULES_ALL

WHERE INVOICE_ID=211608

SELECT * FROM XLA_EVENTS

WHERE EVENT_ID=3328832

SELECT * FROM XLA_AE_HEADERS

WHERE EVENT_ID=3328832 --A_H_ID=4951986

SELECT * FROM XLA_AE_LINES --GL_SL_LINK_ID=6859093/91/92/94

WHERE AE_HEADER_ID=4951986

SELECT * FROM GL_JE_LINES

--WHERE GL_SL_LINK_ID IN(6859091,6859092,6859093,6859094)

SELECT * FROM GL_JE_HEADERS

SELECT * FROM GL_JE_BATCHES

SELECT * FROM IBY_PAYMENTS_ALL

WHERE PAYEE_NAME LIKE 'TESCO' --PAYMENT_ID

SELECT * FROM IBY_DOCS_PAYABLE_ALL

WHERE CALLING_APP_DOC_REF_NUMBER='AP001'

SELECT * FROM AP_CHECKS_ALL

WHERE CHECK_ID=77759 --AMOUNT

SELECT * FROM AP_BANK_ACCOUNTS_ALL --11i

SELECT * FROM CE_BANK_ACCOUNTS

WHERE BANK_ACCOUNT_NAME LIKE 'BofA-204' --BANK_ACCOUNT_ID=10010

SELECT * FROM CE_BANK_ACCT_USES_ALL

WHERE BANK_ACCOUNT_ID=10010

AND ORG_ID=204

SELECT * FROM AP_HOLDS_ALL

WHERE INVOICE_ID=211608

SELECT * FROM AP_HOLDS_RELEASE_NAME_V

SELECT * FROM CE_PAYMENT_DOCUMENTS

r12-- Transfer Journal Entries to GL

11i-- payables transfer to general ledgers

11 I ACCOUNT RECEIVABLE

-------------------------------------------------------------------------------------------------------------------------------------------

Parties and Customer Account Table:

HZ_LOCATIONS

HZ_PARTY_SITES

HZ_PARTIES

HZ_PARTY_RELATIONSHIPS

HZ_ORGANIZATION_PROFILES

HZ_PERSON_PROFILES

HZ_ORG_CONTACTS

HZ_CUST_ACCOUNTS

HZ_CUST_SITE_USES_ALL

HZ_CUST_ACCOUNT_ROLES

HZ_CONTACT_POINTS

Mapping of RA_CUSTOMER Table/view (R11) to HZ_PARTY Table:

View Tables in 11i

RA_CUSTOMERS_ALL

HZ_PARTIES

HZ_PERSON_PROFILES

HZ_ORGANIZATIONS_PROFILES

HZ_CUSTOMER_ACCOUNTS

RA_ADDRESSES_ALL

HZ_PARTY_SITES

HZ_LOCATIONS

HZ_CUST_ACCT_SITES_ALL

RA_PHONES

HZ_CONTACT_POINTS

HZ_CUST_CONTACT_POINTS

RA_CONTACTS

HZ_CUST_ACCCOUNT_ROLES

HZ_ORG_CONTACTSHZ_PARTIES

HZ_PARTY_RELATIONSHIPS

RA_CONTACT_ROLES

HZ_ROLE_RESPONSIBILITY

RA_CUSTOMER_RELATIONSHIPS_ALL HZ_CUST_ACCT_RELATE_ALL

RA_SITE_USES_ALL

HZ_CUST_SITE_USES_ALL

AR_CUSTOMER_PROFILE_CLASSES

HZ_CUSTOMER_PROFILE_CLASSES

AR_CUST_PROF_CLASS_AMOUNTS

HZ_CUST_PROF_CLASS_AMOUNTS

AR_CUSTOMER_PROFILES

HZ_CUSTOMER_PROFILES

AR_CUSTOMER_PROFILE_AMOUNTS HZ_CUSTOMER_PROFILE_AMOUNTS

Receivables Tables (PARTY) :

HZ_PARTIES

HZ_LOCATIONS

HZ_PARTY_SITES

HZ_RELATIONSHIPS

HZ_ORGANIZATION_PROFILES

HZ_PERSON_PROFILES

HZ_ORG_CONTACTS

HZ_CUST_ACCOUNTS

HZ_CUST_SITE_USES_ALL

HZ_CUST_ACCOUNT_ROLES

HZ_CONTACT_POINTS

Receivables Tables (Customer Invoice) :

RA_CUSTOMER_TRX_ALL

RA_CUSTOMER_TRX_LINES_ALL

RA_CUST_TRX_LINE_GL_DIST_ALL

RA_CUST_TRX_LINE_GL_DIST_ALL

RA_CUST_TRX_TYPES_ALL

RA_CUSTOMER_TRX_ALL

AR_PAYMENT_SCHEDULES_ALL RA_CUSTOMER_TRX_LINES_ALL

RA_CUST_TRX_LINE_GL_DIST_ALL

GL_CODE_COMBINATIONS

MTL_SYSTEM_ITEMS

RA_ACCOUNT_DEFAULTS_ALL

RA_ACCOUNT_DEFAULTS_SEGMENTS

RA_ACCOUNT_DEFAULTS_SEGMENTS

Receivables Tables (Receipts) : AR_CASH_RECEIPTS_ALL AR_CASH_RECEIPT_HISTORY_ALL

AR_CASH_RECEIPTS_ALL

AR_MISC_CASH_AR_CASH_RECEIPT_HISTORY_ALL DISTRIBUTIONS_ALL

AR_DISTRIBUTIONS_ALL

GL_CODE_COMBINATIONS

AR_PAYMENT_SCHEDULES_ALL AR_RECEIVABLE_APPLICATIONS_ALL

AR_MISC_CASH_DISTRIBUTIONS_ALL

AR_DISTRIBUTIONS_ALL

AR_RECEIPT_CLASSES

AR_RECEIPT_METHODS

AR_RECEIPT_METHOD_ACCOUNTS_ALL

R12

TRANSCATION TYPES:

INVOICE

CREDT MEMO

DEBIT MEMO

DEPOSIT

GURANTEE

BILL RECEIVABLE

CHARGEBACK

TRANSACTION STATUS:

CLOSED

OPEN

PENDING

VOID

AUTO INVOICE

Receivables ---> Interfaces-->AutoInvoice

RUN AUTO INVOICE MASTER PROGRAM

general ledger tansfer program

Transfer Journal Entries to GL

SELECT * FROM RA_TERMS WHERE NAME='5/10,NET 30' -- TERM_ID=1227

select * from RA_TERMS_LINES WHERE TERM_ID=1227

SELECT * FROM RA_TERMS_LINES_DISCOUNTS WHERE TERM_ID=1227 --TERMS_LINES_DISCOUNT_D(Primary Key)

select * from RA_CUST_TRX_TYPES_ALL WHERE NAME ='SAR DEBIT MEMO'; -- CUST_TRX_TYPE_ID=3365

SELECT * FROM RA_CUST_TRX_TYPES_ALL WHERE CUST_TRX_TYPE_ID=3365

RA_CUSTOMER_TRX_ALL--CUSTOMER_TRX_ID

RA_CUSTOMER_TRX_LINES_ALL RA_RECEIVABLES_TRX_ALL

AD_ADJUSTMENTS_ALL

AR_DISTRIBUTIONS_ALL

AR_TRANSCATION_HISTORY_ALL

AR_DISTRIBUTION_SETS_ALL

AR_CASH_RECEIPTS_ALL

AR_PAYMENT_SCHEDULES_ALL

HZ TABLES

HZ_PARTIES

HZ_PARTY_SITES

HZ_LOCATIONS

HZ_CUST_ACCOUNTS_HZ_CUST_ACCT_SITES_ALL

HZ_CUST_SITE_USES_ALL

HZ_CUSTOMER_PROFILE

HZ_PARTY_RELATIONSHIPS

HZ_CUSTOMER_PROFILE_CLASSES

form personalization

What is Forms Personalization? Where it is used? What For?

Forms Personalization is a standard feature provided by oracle and supported by oracle to customize the forms. With Forms personalization you can hide fiedls, make fields mandatory, create zoom functionality, change lov dynamically e.t.c

What are different triggers that can be used in personalization?

WHEN-NEW-FORM-INSTANCE

WHEN-NEW-BLOCK-INSTANCE

WHEN-NEW-RECORD-INSTANCE

WHEN-NEW-ITEM-INSTANCE

WHEN-VALIDATE-RECORD

MENUS SPECIAL EVENTS

What is the difference between having personalization at function level rather than form level?

A Form can have multiple functions. Having the personalization at function level limits the scope of the personalization. For example in Inventory for both Master Item form and Organization Item form uses same form named INVIDITM where as both have different fucntions linked to them.

Can you use global variables in forms personalization? If so How?

Yes.

Can you hide a text field using personalization? How?

Yes. In the actions set DISPLAYED property to false.

How do you make a field mandatory or not mandatory using Forms Personalization?

Can you transfer the data from one form to another form using personalization?

Yes. Using global Variables.

How do you move personalization from one instance/database to other?

Form Personlizations can be moved easily through FNDLOAD from one instance to other. Refer to the Article FNDLOAD for more details: http://www.erpschools.com/Apps/oracle-applications/articles/General/FNDLOAD-to-transfer-the-menus-concurrent-programs-personalization-from-one-instance-to-other/index.aspx

What is personalization and what features can be achieved through personalization?

Personalization gives us the ability to customize Forms in a very easy manner. The below customizations are possible through Personalization: Zoom from one form to another Pass data from one form to another through global variables Change LOV values dynamically Enable/Disable/Hide fields dynamically Display user friendly messages when required Launch URL directly from oracle form Execute PL/SQL programs through FORM_DDL package Call custom libraries dynamically

Can you default a value in a text filed through personalization? How?

How can you restrict the access (to oracle apps) to A GROUP OF users using personalization?

At what level you can restrict personalization code?

FORM level and FUNCTION level

What can be implemented through Forms Personalization?

Zoom from one form to another Pass data from one form to another through global variables Change LOV values dynamically Enable/Disable/Hide fields dynamically Display user friendly messages when required Launch URL directly from oracle form Execute PL/SQL programs through FORM_DDL package Call custom libraries dynamically

How to do implement ZOOM Functionality using personalization?

What are the advantages/disadvantages of Forms Personalization when compared to CUSTOM.pll?

Personalizations are stored in tables rather than files Will not have a bigger impact when you upgrade or apply patches to the environment Can be moved easily through FNDLOAD from one instance to other Can be restricted at site/responsibility/user level Easy to disable/enable with click of a button. Personalization will store who columns with which we have the ability to track who created/modified it where as in CUSTOM.PLL we dont have that ability. Disadvantages: Not all can be customized using Personalization.

When you display a error message at WHEN-VALIDATE Trigger will the data will be saved into database?

No. If it is normal message or warning data will be saved but not for error message.

form personalization tables?

FND_FORM_CUSTOM_RULESFND_FORM_CUSTOM_SCOPESFND_FORM_CUSTOM_ACTIONSFND_FORM_CUSTOM_PARAMSFND_FORM_CUSTOM_PROP_VALUESFND_FORM_CUSTOM_PROP_LIST

utl_file

where we use utl_FILE package?UTL_FILE Package :

==================

this is One of the PL/SQL Package which will be used to transfer the data

from table to files... from files to tables

But when we are working for file to table we will use SQl *Loader

to transfer from table to file we have no alternative we have to use UTL_FILE.

We will use following three functions to generate the file.

1)Utl_File.fopen = To open (or) Create the file

2)Utl_File.Put_line = To Transfer the data into the File.

3)Utl_File.fclose = To close the File after Data transfer.

outbound Interface Process:

=============================

1)Develop the PL/SQL Program (Either Procedure or Package)

2)Write the Cursor to retrieve the data from database tables.

3)Create file or Open the File by using UTL_File.fopen().

4)Open the Cursor

5)If any validations are there write the validations

6)Transfer the Data into File by using UTL_File.Put_Line().

7)Close the Cursor.

8)Close the File by using UTL_File.fclose();

9)Register the Procedure or Package as Concurrent Program and submit from SRS Window. UTL_FILE Package Exceptions?Exception NameDescription

INVALID_PATHFile location is invalid.

INVALID_MODEThe open_mode parameter in FOPEN is invalid.

INVALID_FILEHANDLEFile handle is invalid.

INVALID_OPERATIONFile could not be opened or operated on as requested.

READ_ERRORDestination buffer too small, or operating system error occurred during the read operation

WRITE_ERROROperating system error occurred during the write operation.

INTERNAL_ERRORUnspecified PL/SQL error

CHARSETMISMATCHA file is opened using FOPEN_NCHAR, but later I/O operations use nonchar functions such as PUTF or GET_LINE.

FILE_OPENThe requested operation failed because the file is open.

INVALID_MAXLINESIZEThe MAX_LINESIZE value for FOPEN() is invalid; it should be within the range 1 to 32767.

INVALID_FILENAMEThe filename parameter is invalid.

ACCESS_DENIEDPermission to access to the file location is denied.

INVALID_OFFSETCauses of the INVALID_OFFSET exception:

ABSOLUTE_OFFSET = NULL and RELATIVE_OFFSET = NULL, or

ABSOLUTE_OFFSET < 0, or

Either offset caused a seek past the end of the file

DELETE_FAILEDThe requested file delete operation failed.

RENAME_FAILEDThe requested file rename operation failed.

utl file functions and procedures?FOPEN Function

This function opens a file. You can specify the maximum line size and have a maximum of 50 files open simultaneously.

Syntax

UTL_FILE.FOPEN (

location IN VARCHAR2,

filename IN VARCHAR2,

open_mode IN VARCHAR2,

max_linesize IN BINARY_INTEGER DEFAULT 1024)

RETURN FILE_TYPE;

Parameters

FOPEN Function Parameters

ParameterDescription

locationDirectory location of file. This string is a directory object name and must be specified in upper case. Read privileges must be granted on this directory object for the UTL_FILE user to run FOPEN.

filenameFile name, including extension (file type), without directory path. If a directory path is given as a part of the filename, it is ignored by FOPEN. On Unix, the filename cannot end with /.

open_modeSpecifies how the file is opened. Modes include:

r -- read text

w -- write text

a -- append text

rb -- read byte mode

wb -- write byte mode

ab -- append byte mode

If you try to open a file specifying 'a' or 'ab' for open_mode but the file does not exist, the file is created in write mode.

max_linesizeMaximum number of characters for each line, including the newline character, for this file (minimum value 1, maximum value 32767). If unspecified, Oracle supplies a default value of 1024.

Return Values

FOPEN returns a file handle, which must be passed to all subsequent procedures that operate on that file. The specific contents of the file handle are private to the UTL_FILE package, and individual components should not be referenced or changed by the UTL_FILE user.

FOPEN Function Return Values

ReturnDescription

FILE_TYPEHandle to open file

Exceptions

INVALID_MAXILINESIZEINVALID_MODEINVALID_OPERATIONINVALID_PATHUsage Notes

The file location and file name parameters must be supplied to the FOPEN function as quoted strings so that the file location can be checked against the list of accessible directories as specified by the ALL_DIRECTORIES view of accessible directory objects.

FCLOSE Procedure

This procedure closes an open file identified by a file handle.

Syntax

UTL_FILE.FCLOSE (

file IN OUT FILE_TYPE);

Parameters

FCLOSE Procedure Parameters

ParameterDescription

fileActive file handle returned by an FOPEN or FOPEN_NCHAR call

Usage Notes

If there is buffered data yet to be written when FCLOSE runs, then you may receive a WRITE_ERROR exception when closing a file.

Exceptions

WRITE_ERROR

INVALID_FILEHANDLE

PUT_LINE Procedure

This procedure writes the text string stored in the buffer parameter to the open file identified by the file handle. The file must be open for write operations. PUT_LINE terminates the line with the platform-specific line terminator character or characters.

Syntax

UTL_FILE.PUT_LINE (

file IN FILE_TYPE,

buffer IN VARCHAR2,

autoflush IN BOOLEAN DEFAULT FALSE);

Parameters

PUT_LINE Procedure Parameters

ParametersDescription

fileActive file handle returned by an FOPEN call

bufferText buffer that contains the lines to be written to the file

autoflushFlushes the buffer to disk after the WRITE

Exceptions

INVALID_FILEHANDLEINVALID_OPERATIONWRITE_ERRORUsage Notes

The maximum size of the buffer parameter is 32767 bytes unless you specify a smaller size in FOPEN. If unspecified, Oracle supplies a default value of 1024. The sum of all sequential PUT calls cannot exceed 32767 without intermediate buffer flushes.

If file is opened for byte mode operations, then the INVALID OPERATION exception is raised.

FSEEK Procedure

This procedure adjusts the file pointer forward or backward within the file by the number of bytes specified.

Syntax

UTL_FILE.FSEEK (

file IN OUT UTL_FILE.FILE_TYPE,

absolute_offset IN PL_INTEGER DEFAULT NULL,

relative_offset IN PLS_INTEGER DEFAULT NULL);

Parameters

FSEEK Procedure Parameters

ParametersDescription

fileFile handle

absolute_offsetAbsolute location to which to seek; default = NULL

relative_offsetNumber of bytes to seek forward or backward; positive = forward, negative integer = backward, zero = current position, default = NULL

Exceptions

INVALID_FILEHANDLEINVALID_OFFSETINVALID_OPERATIONREAD_ERRORUsage Notes

Using FSEEK, you can read previous lines in the file without first closing and reopening the file. You must know the number of bytes by which you want to navigate.

If relative_offset, the procedure seeks forward. If relative_offset > 0, or backward, if relative_offset < 0, the procedure seeks through the file by the number of relative_offset bytes specified.

If the beginning of the file is reached before the number of bytes specified, then the file pointer is placed at the beginning of the file. If the end of the file is reached before the number of bytes specified, then an INVALID_OFFSET error is raised.

If absolute_offset, the procedure seeks to an absolute location specified in bytes.

If file is opened for byte mode operations, then the INVALID OPERATION exception is raised.

GET_LINE Procedure

This procedure reads text from the open file identified by the file handle and places the text in the output buffer parameter. Text is read up to, but not including, the line terminator, or up to the end of the file, or up to the end of the len parameter. It cannot exceed the max_linesize specified in FOPEN.

Syntax

UTL_FILE.GET_LINE (

file IN FILE_TYPE,

buffer OUT VARCHAR2,

len IN PLS_INTEGER DEFAULT NULL);

Parameters

GET_LINE Procedure Parameters

ParametersDescription

fileActive file handle returned by an FOPEN call.

The file must be open for reading (mode r); otherwise an INVALID_OPERATION exception is raised.

bufferData buffer to receive the line read from the file

lenThe number of bytes read from the file. Default is NULL. If NULL, Oracle supplies the value of max_linesize.

Exceptions

INVALID_FILEHANDLEINVALID_OPERATIONNO_DATA_FOUNDREAD_ERRORUsage Notes

If the line does not fit in the buffer, a READ_ERROR exception is raised. If no text was read due to end of file, the NO_DATA_FOUND exception is raised. If the file is opened for byte mode operations, the INVALID_OPERATION exception is raised.

Because the line terminator character is not read into the buffer, reading blank lines returns empty strings.

The maximum size of the buffer parameter is 32767 bytes unless you specify a smaller size in FOPEN.If unspecified, Oracle supplies a default value of 1024.

FILETYPE Record Type

The contents of FILE_TYPE are private to the UTL_FILE package. You should not reference or change components of this record.

TYPE file_type IS RECORD (

id BINARY_INTEGER,

datatype BINARY_INTEGER,

byte_mode BOOLEAN);

Fields

FILE_TYPE Fields

FieldDescription

idA numeric value indicating the internal file handle number

datatypeIndicates whether the file is a CHAR file, Nchar file or other (binary)

byte_modeIndicates whether the file was open as a binary file, or as a text file