When "Accrue At Receipt" is Checked.
When "Accrue At Receipt" is Not Checked.
Case Scenario: If company is paying Rent in the month of "April" but the amount is inclusive of accumulated total for 3 Months i.e. April, May & June. Business wants to distribute this amount in all three above mentioned period without creating separate invoice in different month.
Solution Approach: As per the above case, In Payables we have "Multiperiod Accounting" functionality to distribute that amount in the next future periods without opening those periods. To elaborate the approach, business has created an invoice for Rs. 1,00,000 in the month of April and want to distribute that amount in the future months (Never Opened). Here system behavior's is to generate accounting entries for all the the three months and by distributing that amount on the basis of "Proration Type".
In that accounting entry system distribute the invoice amount in the months but will only post balance to trial balance for current open month which is April, rest will be transferred to GL but will only get posted once those period is opened.
For proper understanding of this functionality you can follow the below process in which I have explained what Custom SLA setups needs to be done.
To understand the step by step process for Custom SLA Setups. (Click Here)
Step 1: Create Value Set and add values
Step 2: Create Mapping Set
Step 3: Add Context DFF at Invoice Line Level
Step 4: Create Account Derivation Rule
Step 5: Create Journal Line Definition by Copying the standard and assign the same to "Invoices" Event Class in your Custom Application Accounting Definition.
Go to your Custom Application Accounting Definition. Click on "Invoices" Event Class.
Go to "Journal Line Definition". Click on Copy and enter name and chart of accounts.
Remove standard JLD and assign your custom.
Step 6: Create 2 Journal Line Type, one for accrual and one for recognition. Will explain the concept of "Accrual" and "Recognition" at the time of accounting entry.
Open your Custom Journal Line Definition and go to Journal Line Type of "Item Expense" and click on "Line Type" and then copy the same for your "Accrual" Line Type.
Change the setup for JLT after copying as below for Accrual.
Copy "Item Expense" JLT again for Recognition and change the setup as shown below. Also delete all the conditions for "Recognition" JLT as per oracle standards.
Step 7: Go to Journal Line Definition and Inactive the standard "Item Expense" JLT and add your new JLT for "Accrual"
Click on "Multiperiod Accounting"
Enter Values according to Business Process.
Save and Click on "Line Assignments"
Accrual Line Type is already added here. We need to our Recognition Line Type here and our Custom Account Derivation Rule to it which we created at step 4.
Save and Close
Now Validate the Application Accounting Definition and assign the same to your Custom Sub-Ledger Accounting Method and assign the Custom Sub-Ledger Accounting Method to your ledger.
Now we create AP Invoice.
For system to understand this AP Invoice is of Prepaid Expense we have to give the invoice "Deferred Dates". By which system treats this invoice as prepaid expense invoice and recognize the expense in future months.
Enter "Default Distribution Account" as "Prepaid Expense" and enable "Deferred Dates" check box and after that enter enter Start Date and End Date in which prepaid expense amount will be distributed.
Go to Line Level DFF and enter value as "RENT" which was mapped to GL Code "E10266" and will distribute the balance from Prepaid Expense GL Code (entered at line level) to Expense Account mapped at ADR Level at Step 2.
Validate the Invoice and Submit Create Accounting to its impact.
/************************************************************
*PURPOSE: To change/reset password of a user from backend *
*************************************************************/
SET serveroutput ON;
DECLARE
v_user_name VARCHAR2(30):= upper('JAIN ROHAN');
v_new_password VARCHAR2(30):= 'Rohan777';
v_status BOOLEAN;
BEGIN
v_status := fnd_user_pkg.ChangePassword ( username => v_user_name,
newpassword => v_new_password
);
IF v_status THEN
dbms_output.put_line ('The password reset successfully for the User:'||v_user_name);
COMMIT;
ELSE
DBMS_OUTPUT.put_line ('Unable to reset password due to'||SQLCODE||' '||SUBSTR(SQLERRM, 1, 100));
ROLLBACK;
END IF;
END;