Step1 : Create the Element and Element links
Step2: write the fast formula
Step3: Attach the fast formula in Formula Results
Package used to call the fast formula from the backed : ff_exec
Simple Code Snippet below:
l_formula_id NUMBER;
l_element_inputs ff_exec.inputs_t;
l_element_outputs ff_exec.outputs_t;
l_in_count NUMBER;
l_out_count NUMBER;
l_pay_value NUMBER;
BEGIN
BEGIN
SELECT formula_id
INTO l_formula_id
FROM ff_formulas_f
WHERE formula_name = ‘XX_PAYROLL_FORMULA’
AND p_effective_date BETWEEN effective_start_date
AND effective_end_date;
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line (‘NO formula exists’);
END;
IF l_formula_id IS NOT NULL
THEN
— Insert FND_SESSIONS row ( Optional )
INSERT INTO fnd_sessions
( session_id,
effective_date
)
VALUES
( USERENV (‘sessionid’),
p_effective_date
);
—
— Initialize the formula.
—
ff_exec.init_formula (l_formula_id,
p_effective_date,
l_element_inputs,
l_element_outputs
);
—
— Loop through the Input Values
—
FOR l_in_count IN l_element_inputs.FIRST .. l_element_inputs.LAST
LOOP
—
— Pass The each Input value name and its Value : Eg: START_DATE and p_start_date
—
IF (l_element_inputs (l_in_count).NAME = ‘START_DATE’)
THEN
l_element_inputs (l_in_count).VALUE :=
fnd_date.date_to_canonical (p_start_date);
END IF;
END LOOP;
—
–Run The formula
—
ff_exec.run_formula (l_element_inputs, l_element_outputs);
—
— Get the Out Put Values
—
FOR l_out_count IN l_element_outputs.FIRST .. l_element_outputs.LAST
LOOP
—
— Get all the Out Put Values Here L_PAY_VALUE is the out put value
—
IF (l_element_outputs (l_out_count).NAME = ‘L_PAY_VALUE’)
THEN
l_pay_value := l_element_outputs (l_out_count).VALUE;
END IF;
END LOOP;
RETURN (l_pay_value);
END;
Here i am Explaining how to create Fnd Messages via E-Business suite and the implementation of message retrieval via the pl/sql API package provided with Oracle Applications.
Creating an Oracle E-Business Suite Message
To create a message in the E-Business suite message library you will need the “Application Developer” responsibility.
Navigate to Application Developer > Application > Messages. This will launch a form
Enter a unique name for your message
Eg: XX_CUSTOMER_MSG
Select the language that your message is written in and the application that the message belongs
Enter the message text in the “Current Message Text” box.
Eg: This is my first message
Click the save icon.
Retrieving a message using PL/SQL:
In order to retrieve the message from the database we need to use a standard API’s in the FND_MESSAGE package.
An E-Business suite message should be retrieved as follows:
1. Clear the current session of any message variables that may already be set
2. Tell E-Business suite which message you wish to retrieve
3. Retrieve the actual message string
4. Clear the session (Optional)
Below is the PL/SQL Block to retrive the message
DECLARE
my_message VARCHAR2(100);
BEGIN
–Initialize Apps Session
fnd_global.apps_initialize( user_id => 1234
,resp_id => 1235
,resp_appl_id => 1236
);
/*–Note: You will get the uer_id, resp_id and Resp_appl_id using below Query
select fnd.user_id ,
fresp.responsibility_id,
fresp.application_id
from fnd_user fnd,
fnd_responsibility_tl fresp
where fnd.user_name = ‘OEAG’
and fresp.responsibility_name = ‘Custom HRMS
*/
–Clear the existing session
FND_MESSAGE.CLEAR;
–Tell e business suite which message you want (custom application short name/message name)
FND_MESSAGE.SET_NAME(‘XXERP’,’XX_CUSTOMER_MSG’);
–Retrieve the message
my_message := FND_MESSAGE.GET;
–Output the message
DBMS_OUTPUT.PUT_LINE(my_message);
END;
Output for the Above Block Is : This is my first message
Using Tokens in the message:
The Oracle E-Business suite allows the substitution of tokens within a message string to enable the programmer to add dynamic content to the message at run time.
Open the E-Business Suite message create a New Message
Navigate to Application Developer > Application > Messages. This will launch a form
Enter a unique name for your message
Eg: XX_UNAME_TOKEN_MSG
Select the language that your message is written in and the application that the message belongs
Enter the message text in the “Current Message Text” box.
Eg: This is my second message and the Token User name is &USERNAME
Click the save icon.
Note: In order to insert a token into a message it is necessary to prefix the token with a ampersand e.g. &USERNAME
Retrieving message With Token Substitution
Here USERNAME is called as TOKEN, we will Add the value dynamically
Example Block is below:
DECLARE
my_message VARCHAR2(100);
BEGIN
–Initialize Apps Session
fnd_global.apps_initialize( user_id => 1234
,resp_id => 1235
,resp_appl_id => 1236
);
/*–Note: You will get the uer_id, resp_id and Resp_appl_id using below Query
select fnd.user_id ,
fresp.responsibility_id,
fresp.application_id
from fnd_user fnd,
fnd_responsibility_tl fresp
where fnd.user_name = ‘OEAG’
and fresp.responsibility_name = ‘Custom HRMS Responsibility’;
*/
–Clear the existing session
FND_MESSAGE.CLEAR;
–Tell e business suite which message you want (Application short name/message name)
FND_MESSAGE.SET_NAME(‘
–Set the username message token with the current applications user
FND_MESSAGE.SET_TOKEN(‘USERNAME’,FND_GLOBAL.USER_NAME);
–Retrieve the message
my_message := FND_MESSAGE.GET;
–Output the message
DBMS_OUTPUT.PUT_LINE(my_message);
END;
Out put for above block is :
Downloading and Uploading Messages using the Generic Loader
To download our example message we would use the following command at the Unix prompt on the mid-tier:
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afmdmsg.lct XX_UNAME_TOKEN_MSG.ldt
FND_NEW_MESSAGES APPLICATION_SHORT_NAME=’PER’ MESSAGE_NAME=”XX_UNAME_TOKEN_MSG”
To Upload our example message we would use the following command at the Unix prompt on the mid-tier:
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afmdmsg.lct XX_UNAME_TOKEN_MSG.ldt
————–
a) set of books should be defined
b) Current Conversion rates and accounting periods need to be defines
c) Source and Category Name Should be defined
Interface Tables:
—————-
GL_INTERFACE
Base Tables:
———–
GL_JE_HEADERS
GL_JE_LINES
GL_JE_BATCHES
Standard Program:
Go to General Ledger Vision Operations(USA)
Run =>Import
Here Give the Source name and Save.
While Click on the save button Back end One Program Concurrent Program is running.If it is Success the Records are Successfully loaded from interface table to base Table Others wise Some Error are there.
Copy that Request_id and Enter into Generals our Records will be there………..
Validation Columns:
——————
Source period_name currency_code set_of_books_id
je_source je_catregory accounting_date entered_dr , entered_cr
accounted_cr accounted_dr encumberance_type_id
Source = ‘NEW’
period need to be open status in gl_period_statuses
souce_name defined in gl_je_source table
category_name defines gl_je_Category
currency available in fnd_Currencies
accounted_cr and accounted_dr total should be same.
Control file for GL_Interface:
LOAD DATA
INFILE *
TRUNCATE INTO TABLE GL_INTERFACE_TEMP
FIELDS TERMINATED BY ‘,’ OPTIONALLY ENCLOSED BY ‘”‘
TRAILING NULLCOLS
(STATUS,
SET_OF_BOOKS_ID,
ACCOUNTING_DATE,
CURRENCY_CODE,
DATE_CREATED,
CREATED_BY,
ACTUAL_FLAG,
USER_JE_CATEGORY_NAME,
USER_JE_SOURCE_NAME,
SEGMENT1,
SEGMENT2,
SEGMENT3,
SEGMENT4,
SEGMENT5,
ENTERED_DR,
ENTERED_CR,
ACCOUNTED_DR,
ACCOUNTED_CR,
GROUP_ID)
BEGIN DATA
NEW,1,11-AUG-2002,USD,11-AUG-2002,1318,A,Inventory,JETFORMS,01,110,7730,0000,000,555,555,555,555,11
NEW,1,11-AUG-2002,USD,11-AUG-2002,1318,A,Inventory,JETFORMS,01,110,7730,0000,000,554,554,554,554,11
Script
sqlldr apps/apps control=’/apps/aptest/visappl/xxcus/11.5.0/bin/xx_gl.ctl’ log=’/apps/aptest/visappl/xxcus/11.5.0/bin/xx_gl.log’
exit 0
GL Interface Package:
CREATE OR REPLACE package body APPS.xx_gl_int_pkg
is
procedure dis_log(p_msg in varchar2)
is
begin
fnd_file.put_line(fnd_file.log,p_msg);
end;
procedure main(errbuf out varchar2,
retcode out varchar2
)
is
cursor c1 is select a.rowid row_id,a.* from GL_INTERFACE_TEMP a;
v_gl_int gl_interface%rowtype;
v_process_flag varchar2(10);
v_error_msg varchar2(100);
v_tot_err_msg varchar2(1000);
begin
dis_log(‘before entering the loop’);
for i in c1 loop
v_error_msg :=null;
v_process_flag:=’S’;
v_tot_err_msg:=null;
v_gl_int:=null;
–currency_code validation
begin
select currency_code into v_gl_int.currency_code
from fnd_currencies
where currency_code=i.currency_code;
exception
when no_data_found then
v_process_flag:=’E’;
v_error_msg := ‘Invalid Currency Code =>’||i.currency_code;
v_tot_err_msg:= v_tot_err_msg||’ ‘||v_error_msg ;
when others then
v_process_flag:=’E’;
v_error_msg := ‘ Exception at Currency Code =>’||i.currency_code;
v_tot_err_msg:= v_tot_err_msg||’ ‘||v_error_msg ;
end;
–user_je_source_name validation
begin
select user_je_source_name into v_gl_int.user_je_source_name
from gl_je_sources
where user_je_source_name=i.user_je_source_name;
exception
when no_data_found then
v_process_flag:=’E’;
v_error_msg := ‘Invalid Sourec Name =>’||i.user_je_source_name;
v_tot_err_msg:= v_tot_err_msg||’ ‘||v_error_msg ;
when others then
v_process_flag:=’E’;
v_error_msg := ‘ Exception at Sourec Name =>’||i.user_je_source_name;
v_tot_err_msg:= v_tot_err_msg||’ ‘||v_error_msg ;
end;
–category_name validation
begin
select user_je_category_name into v_gl_int.user_je_category_name
from gl_je_categories
where user_je_category_name=i.user_je_category_name;
exception
when no_data_found then
v_process_flag:=’E’;
v_error_msg := ‘Invalid category_name =>’||i.user_je_category_name;
v_tot_err_msg:= v_tot_err_msg||’ ‘||v_error_msg ;
when others then
v_process_flag:=’E’;
v_error_msg := ‘ Exception at category_name =>’||i.user_je_category_name;
v_tot_err_msg:= v_tot_err_msg||’ ‘||v_error_msg ;
end;
–user id validation
begin
select user_id into v_gl_int.created_by from fnd_user
where user_id = i.created_by;
exception
when no_data_found then
v_process_flag:=’E’;
v_error_msg := ‘Invalid user id =>’||i.created_by;
v_tot_err_msg:= v_tot_err_msg||’ ‘||v_error_msg ;
when others then
v_process_flag:=’E’;
v_error_msg := ‘ Exception at user id =>’||i.created_by;
v_tot_err_msg:= v_tot_err_msg||’ ‘||v_error_msg ;
end;
— set of books id validation
begin
SELECT SET_OF_BOOKS_ID INTO v_gl_int.set_of_books_id
FROM GL_SETS_OF_BOOKS WHERE SET_OF_BOOKS_ID=i.set_of_books_id;
exception
when no_data_found then
v_process_flag:=’E’;
v_error_msg := ‘Invalid set of books id =>’||i.set_of_books_id;
v_tot_err_msg:= v_tot_err_msg||’ ‘||v_error_msg ;
when others then
v_process_flag:=’E’;
v_error_msg := ‘ Exception atset of books id =>’||i.set_of_books_id;
v_tot_err_msg:= v_tot_err_msg||’ ‘||v_error_msg ;
end;
v_gl_int.status :=i.status;
— v_gl_int.set_of_books_id :=i.set_of_books_id;
v_gl_int.accounting_date :=i.accounting_date;
— v_gl_int.currency_code :=i.currency_code;
v_gl_int.date_created :=i.date_created;
–v_gl_int.created_by :=i.created_by;
v_gl_int.actual_flag :=i.actual_flag ;
–v_gl_int.user_je_category_name :=i.user_je_category_name;
–v_gl_int.user_je_source_name :=i.user_je_source_name;
v_gl_int.segment1 :=i.segment1;
v_gl_int.segment2 :=i.segment2;
v_gl_int.segment3 :=i.segment3;
v_gl_int.segment4 :=i.segment4;
v_gl_int.segment5 :=i.segment5 ;
v_gl_int.entered_dr :=i.entered_dr;
v_gl_int.entered_cr :=i.entered_cr;
v_gl_int.accounted_dr :=i.accounted_dr;
v_gl_int.accounted_cr :=i.accounted_cr;
v_gl_int.group_id :=i.group_id;
dis_log(‘before inserting the loop’);
if v_process_flag = ‘S’ then
insert into gl_interface values v_gl_int;
end if;
update GL_INTERFACE_TEMP set process_flag=v_process_flag,
error_message=v_tot_err_msg
where rowid=i.row_id;
dis_log(‘after inserting the loop’);
end loop;
exception
when others then
dis_log(‘exception occured at main loop’);
end main;
end xx_gl_int_pkg;
Two types of classification s:
I.STATIC CURSOR S:
Static : Normal cursor (implicit or explicit)
Cursor attributes for implicit and explicit:
%FOUND – records fetched successfully
%NOTFOUND – no records fetched
%ROWCOUNT – Number of records fetched
%ISOPEN – returns TRUE if cursor is open
a. Implicit :
Cannot be opened outside the statement
More fast and less coding effort.
Will never raise INVALID_CURSOR error
Raises NO_DATA_FOUND and TOO_MANY_ROWS exceptions (eg: select <stmt>)
Example Implicit Cursor:
select * from emp
If SQL%FOUND then
v_count:= SQL%ROWCOUNT
end if;
b. Explicit : 2 network round trips. Store data first then retrieve data.
More programmatic control.
Programmer could open; fetch data, close, check attributes etc.
Syntax:
open c1; — cursor c1 is select <stmt>
fetch <>
exit when c1%NOTFOUND
Example Explicit cursor:
Without Using Loop s
Declare
Cursor cur1 is
select ename,empno,sal from emp
where sal<50000 and deptno=50
begin
open cur1;
fetch cur1 into v_ename,v_empno,v_sal;
exit when cur1%notfound;
—<do processing>
close cur1;
end;
Using Loops:
Declare
Cursor cur1 is
select ename,empno,sal from emp
where sal<50000 and deptno=50
begin
For rec in cur1
loop
dbms_output.put_line(‘Employee Number ‘||rec.empno);
end loop;
end;
Using Loops with Cursor Parameters:
Declare
Cursor cur1( cp_deptNo Number)
is
select ename,empno,sal from emp
where sal<50000 and deptno=cp_deptNo
l_deptNo Number :=50;
begin
For rec in cur1(l_deptNo)
loop
dbms_output.put_line(‘Employee Number ‘||rec.empno);
end loop;
end;
II. DYNAMIC CURSOR s :
Oracle REF CURSOR Types:
With the REF_CURSOR you can return a recordset/cursor from a stored procedure
(i.e Ref Cursors can have Record/s as return types.)
Could be declared once and defined many times in different procedures.
a)Strong : For the strong ref cursor the returning columns with data type and length need to be known at compile time.
b)Weak :For the weak ref cursor the structure does not need to be known at compile time.
Example For the Ref Cursor :
–SPECK PACKAGE
CREATE OR REPLACE PACKAGE REFCURSOR_PKG
AS
TYPE WEAK_REF_CURSOR IS REF CURSOR; — Until 9i
TYPE STRONG_REF_CURSOR IS REF CURSOR RETURN EMP%ROWTYPE;
END REFCURSOR_PKG;
The pl/sql procedure that returns a ref-cursor looks like this:
–BODY PACKAGE
CREATE OR REPLACE PACKAGE BODY REFCURSOR_PKG
AS
— For Weak Ref Cursor:
PROCEDURE
WEAK_REF_CUR_PRC( p_deptno IN number,
p_cursor OUT REFCURSOR_PKG.WEAK_REF_CURSOR — Until 9i
—- From 9i (p_cursor OUT SYS_REFCURSOR )—-
)
IS
BEGIN
OPEN p_cursor FOR
SELECT * FROM emp
WHERE deptno = p_deptno;
end WEAK_REF_CUR_PRC;
— For Strong Ref Cursor:
PROCEDURE
STRONG_REF_CUR_PRC( p_deptno IN number,
p_cursor OUT REFCURSOR_PKG.STRONG_REF_CURSOR
)
IS
BEGIN
SELECT * FROM emp
WHERE deptno = p_deptno;
end STRONG_REF_CUR_PRC;
END REFCURSOR_PKG;
Accounts receivable is an asset account in the general ledger that documents money owed to a business by customers who have purchases goods or services on credit.
Accounts receivable can be contrasted with accounts payable, a liability account in the GL that documents money the business owes for the purchase of goods or services.
Accounts receivable, accounts payable and payroll are usually listed as the top three mission-critical business processes in a disaster recovery plan .
Receivables Workbenches:
Oracle Receivables provides four integrated workbenches that you can use to perform most of your day–to–day Accounts Receivable operations. You can use the Receipts Workbench to perform most of
your receipt–related tasks and the Transactions Workbench to process your invoices, debit memos, credit memos, on–account credits, chargebacks, and adjustments. The Collections Workbench lets you review customer accounts and perform collection activities such as recording customer calls and printing dunning letters. The Bills Receivable Workbench lets you create, update, remit, and manage your bills receivable.
Each workbench lets you find critical information in a flexible way, see the results in your defined format, and selectively take appropriate action. For example, in the Transactions Workbench, you can query transactions based on the bill–to or ship–to customer, currency, transaction number, or General Ledger date. You can then review financial, application, and installment information, perform adjustments, create a credit memo, or complete the transaction. All of the windows you need are accessible from just one window, so you can
query a transaction once, then perform several operations without having to find it again.
Receivables Setups in R12:
Overview of Setting Up:
During setup, you define business fundamentals such as the activities you process and their accounting distributions, your accounting structure, and various control features. Setup is also the time to define
comprehensive defaults that Receivables uses to make data entry more efficient and accurate. In addition, setup lets you customize Receivables to employ the policies and procedures that you use in your business.
You can set up Receivables a number of different ways. The following graphic shows the most complete setup scenario. If you use the Oracle Applications Multiple Organization Support feature to use multiple sets of books for one Receivables installation, please refer to the Multiple Organizations in Oracle Applications manual before proceeding. If you plan to use Oracle Cash Management with Oracle Receivables, additional setup steps are required.
Note: If you plan to use Multiple Reporting Currencies (MRC) with Receivables, additional setup steps are required. For more information, refer to the Multiple Reporting Currencies in Oracle Applications manual.
Related Product Setup Steps:
The following steps may need to be performed to implement Oracle Receivables. These steps are discussed in detail in the Setting Up sections of other Oracle product user guides.
Set Up Underlying Oracle Applications Technology
The Implementation Wizard guides you through the entire Oracle Applications setup, including system administration. However, if you do not use the Wizard, you need to complete several other setup steps, including:
• performing system–wide setup tasks such as configuring concurrent managers and printers
• managing data security, which includes setting up responsibilities to allow access to a specific set of business data and complete a specific set of transactions, and assigning individual users to one or more of these responsibilities.
• setting up Oracle Workflow
General Ledger Setup Steps:
The following table lists steps and a reference to their location within the Applications Implementation Wizard (AIW).
- Define Chart of Accounts
- Define Currencies
- Define Calendars
- Define Calendar Period Types
- Define Ledger
- Assign Ledger to a Responsibility
Define Chart of Accounts:
Define Segments:
Navigation: General Ledger –> Setups –> Flexfields –> Key –> Segments.
Query With Accounting Flexfield and click on New.
Give your coa name and save.
Click on Segments.
Enter your segments names.
Navigation: General Ledger –> Setups –> Flexfields –> Key –>Values.
Enter the below information and click on find button.
Enter the company values names and save your work.
Like wish define values for all reaming segments.
Define Currencies:
Navigation: General Ledger –> Setup –> Currencies –> Define.
Enter information and save.
Define Calendar Period Types:
Navigation: Setup –> Financials –> Calendars –> Types.
Enter the information and save.
Define Calendar:
Navigation: Setup –> Financials –> Calendars –> Accounting.
Save.
Define Ledger :
See this post for how to define Ledger in R12.
Assign Ledger to a Responsibility:
Navigation: System Administrator –> Profile –> Systems.
Click on find.
Assign Ledger to GL Responsibility.
Save.
Oracle Inventory Setup Steps:
- Define Operating Unit.
- Define Inventory Organizations
- Define Items
Define Operating Unit:
Define Inventory Organization:
Navigation: Inventory –> Setup –> Organizations –> Organizations.
Click on New.
Enter information in the required fields.
Save your work and click on othres.
click on Accounting information.
Enter the required information and save.
Click on Others and select the inventory information.
Under Inventory Parameters tab enter the following information.
Under Costing Information tab enter the following information.
Under the other accounts tab enter the required information.
Save your work.
- Define System Options
- Define Transaction Flexfield Structure
- Define Sales Tax Location Flexfield Structure
- Define AutoCash Rule Sets
- Define Receivables Lookups
- Define Invoice Line Ordering Rules
- Define Grouping Rules
- Define Application Rule Sets
- Define Payment Terms
- Define AutoAccounting
- Open or Close Accounting Periods
- Define Transaction Types
- Define Transaction Sources
- Define Collectors
- Define Approval Limits
- Define Remittance Banks
- Define Receivables Activities
- Define Receipt Classes
- Define Receipt Sources
- Define Payment Methods
- Define Statement Cycles
- Define System Profile Options
- Define Salespersons
- Define Customer Profile Classes
- Define Customers
- Define Remit–To Addresses
System options also control how Receivables calculates tax on your transactions. You must specify a tax method, choose a Location Flexfield Structure, indicate whether to compound tax, select the address validation to use, and define tax defaults and rounding options. As you can set up your system to calculate Sales Tax, Value Added Tax, or Canadian Tax, we recommend that you carefully review the appropriate implementing tax essay before defining your system options.
There are four types of transaction flexfields:
• Line Transaction Flexfield
• Reference Transaction Flexfield
• Link–To Transaction Flexfield
• Invoice Transaction Flexfield
transaction line. AutoInvoice always uses the Line Transaction Flexfield structure for both the Link–to and Reference information when importing invoices. You must explicitly define the Link–to, Reference,
and Invoice Transaction Flexfield structures only if this information is to be displayed on a custom window.
Receivables gives you the option of displaying Invoice Transaction Flexfield information in the reference column of invoice lists of values.
order number for imported invoices when using an invoice list of values, you must assign the transaction flexfield segment that holds the order number to the AR: Transaction Flexfield QuickPick Attribute
profile option. The order number will now display in the reference column of invoice lists of values.
Reference Transaction Flexfields have the same structure as the Line Transaction Flexfields.
Transactions 4 – 235 Reference Transaction Flexfields are used to apply a credit memo to an invoice or associate an invoice to a specific commitment.
Create a new flexfield with a similar structure as the Line Transaction Flexfield, but only include header level segments. For example, if the Line Transaction Flexfield structure has four segments and the last two segments contain line level information, define your Invoice Transaction Flexfield using the first two segments only. Segments included in the Invoice Transaction Flexfield should be included in the AutoInvoice grouping rules.
• Country
• State and City
• Province and City
• City
• Province
• State, County and City
your customer addresses.
You can confirm that the required segments are enabled by navigating to the Segments Summary window. Navigate back to the Key Flexfield Segments window to freeze your flexfield structure by checking the
Freeze Flexfield Definition check box and then compiling the flexfield.
account, tax, freight, creation sign, posting, and receivables information. Receivables provides two predefined transaction types: Invoice and Credit Memo.
Define Approval Limits:
Define approval limits to determine whether a Receivables user can approve adjustments or credit memo requests. You define approval limits by document type, dollar amount, reason code, and currency.
Approval limits affect the Adjustments, Submit AutoAdjustments, and Approve Adjustments windows as well as the Credit Memo Request Workflow.
Navigation: Receivables –> Setup –> Transactions –> Approval Limits.
Define Remittance Banks:
Proceed to the next step if you already defined your remittance banks in Oracle Payables. Define all of the banks and bank accounts you use to remit your payments. You can define as many banks and bank accounts as you need and define multiple currency bank accounts to accept payments in more than one currency.
Define Receivables Activities
Define Receivables Activities to provide default accounting information when you create adjustments, discounts, finance charges, miscellaneous cash transactions, and bills receivable. Receivables also uses Receivables Activities to account for tax if you calculate tax on these activities.
Navigation: Receivables –> Setup –> Receipts –> Receivable Activities.
Like wise we should define reaming receivable actives also.
Define Receipt Classes:
Define receipt classes to specify whether receipts are created manually or automatically. For manual receipts, you can specify whether to automatically remit it to the bank and/or clear your accounts. For automatic receipts, you can specify a remittance and clearance method, and whether receipts using this class require confirmation.
Navigation: Receivables –> Setup –> Receipts –> Receipts Class.
Click on Bank accounts.
Enter information in respective fields.
Save your work.
Define Payment Method:
Define the payment methods to account for your receipt entries and applications and to determine a customer’s remittance bank information. When defining payment methods, you must enter a receipt class, remittance bank information, and the accounts associated with your payment receivables type. You can also specify accounts for confirmation, remittance, factoring, bank charges, and short–term debt.
Navigation: Receivables –> Setup –> Receipts –> Receipts Class.
Define Statement Cycles:
Define statement cycles to control when you create customer statements. You assign statement cycles to customers in the Customer Profile Classes window.
Navigation: Receivables –> Setup –> Print –> Statement Cycle.
Define profile options:
Define profile options to provide default values for some Receivables operations, specify how Receivables processes data, and control which actions users can perform.
Navigation: Administrator –> Profile –> Systems.
During your implementation, you set a value for each Receivables user profile option to specify how Receivables controls access to and processes data. Receivables lets you govern the behavior of many of
the windows that use profile options.
Profile options can be set at the following levels:
• Site: This is the lowest profile level. Site level profile option values affect the way all applications run at a given site.
• Application: These profile option values affect the way a given application runs.
• Responsibility: These profile option values affect the way applications run for all users of a given responsibility.
• User: These profile option values affect the way applications run for a specific application user. The values you enter for options at the User level supersede the values that your system administrator has entered for you for these options.
Each of these user profile options affect the behavior of Receivables in different contexts. In Receivables, operations that profile options can affect include receipt application, the entry of adjustments, the creation
and remittance of automatic receipts and taxes, and posting to your general ledger.
You may also have additional user profile options on your system that are specific to applications other than Receivables.
To change profile options at the Site, Application, or Responsibility level, choose the System Administrator responsibility, then navigate to the Personal Profile Values window. Query the Profile Name field to
display the profile options with their current settings, make your changes, then save your work. You can change profile options at the user level in the Personal Profile Values window. To do this, navigate to the Personal Profile Values window, query the profile option to change, enter a new User Value, then save your work. Generally, your system administrator sets and updates profile values at each level.
Attention: For any changes that you make to profile options to take effect, you must either exit, and then reenter Receivables, or switch responsibilities.
Define Salespersons:
Define salespersons to allocate sales credits to invoices, debit memos, and commitments. If you do not want to assign sales credits for a transaction, you can enter No Sales Credit. If AutoAccounting depends on salesperson, Receivables uses the general ledger accounts that you enter for each salesperson along with your AutoAccounting rules to determine the default revenue, freight, and receivable accounts for transactions.
Define Customer Profile Classes:
Define customer profile classes to categorize customers based on credit, payment terms, statement cycle, automatic receipt, finance charge, dunning, and invoicing information. When you initially set up your customers, you assign each customer to a profile class. To customize the profile class for a specific customer, use the Customer Profile Classes window.
Navigation: Receivables –> Customers –> Profile Classes.
In Profile Class window enter the following information.
In Profile class Amount tab enter the following information.
Save your work.
Define Customers:
Define customers and customer site uses to enter transactions and receipts in Receivables. When you enter a new customer, you must enter the customer’s name, profile class and number (if automatic customer numbering is set to No). You can optionally enter customer addresses, contacts, site uses and telephone numbers. You must enter all the components of your chosen Sales Tax Location Flexfield when entering customer addresses in your home country.
Navigation: Receivables –> Customers –> Standard.
Define Remit–To Addresses:
Define remit–to addresses to inform your customers where to send payments. Associate each remit–to address with one or more state, country, and postal code combinations.
For example, if you want your customers in California and Nevada to send their payments to a specific address, enter the remit–to address and associate the states CA and NV with this address. Remit–to addresses are assigned based on the bill–to address on the transaction.
Navigation: Setup –> Print –> Remit-to-addresses.
Click on Create Remit to addresses.
Enter the required information
Click on Apply.
Enter the country name in the same page and then click on the GO.
Click on the Receipts form Create button.
Enter the following information and click on Apply button.
Latest Posts
- R12 – How to Handle NULL for :$FLEX$.VALUE_SET_NAME In Oracle ERPAugust 25, 2023 - 1:20 pm
- R12 – How to Delete Oracle AR TransactionsMarch 22, 2019 - 8:37 pm
- How to Define Custom Key Flexfield (KFF) in R12January 19, 2018 - 5:43 pm
- AutoLock Box Concepts In R12November 10, 2017 - 8:30 am
- R12 – java.sql.SQLException: Invalid column type in OAFSeptember 15, 2017 - 9:39 am
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Recent Comments