Sunday, 1 May 2011

Understand Date Tracking in HRMS


Understand Date Tracking in HRMS


Effective DatesDate Tracking is a means of maintaining a history of changes to personnel records. It applies to the following parts of a person's record in Oracle HR: People, Assignments. Each of the areas that are date tracked within a record are date tracked independently.
We can 'date track' by setting an Effective Date. An effective date is the date at a particular point in time when a person's record is effective. When you set an effective date for your work, DateTrack ensures that only information effective on that day is used for any processing,
validation, enquiries and reporting you carry out.
Lets understand this in this simple diagram , which is consider as timeline of a personal record.
Persoanl record
It shows how the person's Status has changed over time to reflect their changing circumstances. As the changes are made in Oracle, the system keeps a record of each change. These records can be thought of as different slices - or different pages in a file that show each change. Date tracking allows you to visit each slice or page at any time. If you set the effective date to 17 July 2001.. for example, the record would show that this individual is Married. Reset back to today and the marital status would show as divorced.
Take a another example for employee Assignment
assigrecord
In this example the assignment record shows how this person's Position changes over time.
When this person originally started in company , their position was Programmer 1. Over time their position get changed and Oracle keep maintaining the history of this. In addition, this individual has been told that they have a new position which will take effect as of the 01 Jan 2008. Using date tracking you can record that this position change will take effect in advance of it happening - simply by setting the Effective Date to 01 Jan 2008 and making the change. Until that date actually arrives, the position will still show as the current one.
InsertIf there are future dated entries in the system (as in the assignment example above), and you wish to record a new change that will occur prior to the forthcoming change then Oracle will prompt you to Insert the record as part of the update. In this scenario, Oracle will insert a new 'slice' of history up to the date of the future change only.
assigrecord1

In above diagram example, a future dated change was entered to record that this individual's position is changing from Programmer Level 3 to Analyst on 1 Jan 2007. However, subsequent to this change being entered and saved in Oracle, this person will have a new supervisor from July 1st - i.e. before taking up the new position. If you now record the new supervisor change, Oracle will prompt you to 'insert' it. As such, a further slice of history will exist from 1 July 2007 to 1 Jan 2008.
Which columns in Oracle hold these values
To control these date tracking rows, every DateTracked table must include these columns:
  • EFFECTIVE_START_DATE DATE NOT NULL
  • EFFECTIVE_END_DATE DATE NOT NULL

Step by Step :Using Receipt API ->Create Cash Receipt


Step by Step :Using Receipt API ->Create Cash Receipt


Functional Importance of Receipt API's
Oracle receipt APIs provide an extension to existing functionality of creating and manipulating receipts through standard AR Receipts forms and lockboxes.
Most of the public receipt API caters to the following basic functionality via different API calls:
  1. Creating a cash receipt.
  2. Applying a cash receipt to a debit item.
  3. Creating a cash receipt and applying it to a debit item in one pass.
  4. On-account application.
  5. Unapplying the on-account application.
  6. Unapplying the receipt application to a particular transaction.
  7. Reversing the receipt.
  8. Activity application, such as Receipt Write-off.
  9. Creating a miscellaneous receipt.
  10. Other account application, such as Claim Investigation.
  11. Receipt-to-receipt application.
  12. Creating a cash receipt and an on-account application in one pass.
These API potentially used when you are using two major products like AR and Trade managment.
Which API's is not supported
  1. Creating a Batch Receipt
dgreybarrowWhy Receipts API are in demand
  • For Migration in Transformation/re-implemenation project , company want to bring old receipts to newer system. Except Lockbox, there is no other way other than API.
  • Integration :Some sectors like retail, healthcare , Telco need direct Integration with third party POS based system like (WINCOR etc)
  • Need for excel based upload interface : Majority of collection for companies are in third and fourth week of the month , and all entry should go into system thus need for excel based receipt upload cann't be denied. The business need for having receipt WEBADI is still not supported by Oracle.
dgreybarrow What is senarios
The senario which going to discuss here is "Create Cash Receipt "
In Reality a cash receipts may be created as identified (with a customer/Transaction) or as unidentified (without a customer).This routine is called to create cash receipts for the payment received in the form of a check or cash.
The key is
  • When you tag customer/transaction it is identified
  • Where there is no customer attached to receipt it is unidentified.
Moreover Receipt that you are going to create must have a Payment method , which have underline account details for identified and unidentified account.
dgreybarrowWhich API is being used
By using the following procedure Ar_receipt_api_pub.Create_cash you can create a single cash receipt, as in the case of manually created cash receipts.
dgreybarrow Step to use the API
You have to perform these steps in order to get API executed
Step 1 : Identification of some mandatory and key column of API
Once you identify the key and mandatory column , you have 50% done. What is recomended for you to check the API version in irep with your EBS version.
Here is the example.
Case 1 Receipt API Oracle Parameter








Step 2 : Idetify and the mandatory column and must do pre-requsite setup for receipt.
Your Payment method , underline bank, respective accounting details must be pre-requiste step up for creating a receipt in Oracle.
The mandatory requirement is Customer master with valid bill to and a valid transaction that must be open.
Step 3: You need to initialize the apps_initialize pacakge
For this you have to follow these steps:
Run the query 1
 
SELECT USER_ID FROM FND_USER
WHERE USER_NAME='USER_NAME';
 
Run the query 2
 
SELECT application_id FROM fnd_application
WHERE application_short_name LIKE  'APPL_SHRT_NAME'; --'AR';
 
Run the query 3
 
SELECT RESPONSIBILITY_ID
FROM FND_RESPONSIBILITY
WHERE APPLICATION_ID=222;
 
Run the query 4
Run thisscript ,
--- this script you can use to set the environment.
--- this is tested in 11i
--- you need to pass the details from query 1, 2 and 3  
DECLARE

 p_user_id NUMBER;
 p_resp_id NUMBER;
 p_resp_appl_id NUMBER;

  BEGIN
 
 p_user_id := 1011  -- pass the value of query 1 
 p_resp_id := 50556; -- pass the value of query 2
 p_resp_appl_id := 222;  -- pass the value of query 3

 fnd_global.apps_initialize
 (
  user_id  => p_user_id,
  resp_id  => p_resp_id,
  resp_appl_id => p_resp_appl_id
 );
 
END;
this will set the apps environment.
Alternatively you can use fnd_global.apps_initialize(1290,51118,222) before calling API.
Step 4: run the below
script in Toad or sql*plus and once the procedure executed correctly Oracle will issue a receipt id.
DECLARE
        p_api_version                   NUMBER;
        p_init_msg_list                 VARCHAR2(240);
        p_commit                        VARCHAR2(240);
        p_validation_level              NUMBER;
        p_usr_currency_code             VARCHAR2(240); 
        p_usr_exchange_rate_type        VARCHAR2(240); 
        p_exchange_rate_type            VARCHAR2(240); 
        p_exchange_rate                 NUMBER;   
        p_exchange_rate_date            DATE;
        p_factor_discount_amount        NUMBER;
        p_receipt_date                  DATE;
        p_postmark_date                 DATE;
        p_customer_number               VARCHAR2(240);  
        p_customer_bank_account_id      NUMBER;
        p_customer_bank_account_num     VARCHAR2(240);  
        p_customer_bank_account_name    VARCHAR2(240); 
        p_location                      VARCHAR2(240); 
        p_customer_receipt_reference    VARCHAR2(240);  
        p_remittance_bank_account_num   VARCHAR2(240); 
        p_remittance_bank_account_name  VARCHAR2(240); 
        p_receipt_method_name           VARCHAR2(240); 
        p_doc_sequence_value            NUMBER;   
        p_ussgl_transaction_code        VARCHAR2(240); 
        p_anticipated_clearing_date     DATE;     
        p_called_from                   VARCHAR2(240); 
        p_comments                      VARCHAR2(240);
        p_issuer_name                   VARCHAR2(240); 
        p_issue_date                    DATE;   
        p_issuer_bank_branch_id         NUMBER;  
        p_amount                        NUMBER;
        p_receipt_number                VARCHAR2(240);
        p_receipt_method_id             NUMBER;
        p_customer_name                 VARCHAR2(240);
        p_customer_id                   NUMBER;
        p_currency_code                 VARCHAR2(10);
        p_gl_date                       DATE;
        p_deposit_date                  DATE;
        p_customer_site_use_id          NUMBER;
        p_override_remit_account_flag   VARCHAR2(1);
        p_remittance_bank_account_id    NUMBER;
        p_maturity_date                 DATE;
        x_return_status                 VARCHAR2(1);
        x_msg_count                     NUMBER;
        x_msg_data                      VARCHAR2(240);
        p_cr_id                         NUMBER;
        p_global_attribute_rec          AR_RECEIPT_API_PUB.global_attribute_rec_type;
        p_attribute_rec                 AR_RECEIPT_API_PUB.attribute_rec_type;
    
BEGIN

   
    p_receipt_number                    := 'HUB-TEST1';   --rECEIPT NUMBER
    p_receipt_method_id                 := 14011;
    p_customer_name                     := 'JOHNSON & JOHNSON (S) PTE LTD';
    p_amount                            := 1200;
    p_remittance_bank_account_id        := '14560';  -- JUST PASS THE BANK DETAILS
    p_currency_code                     := 'SGD';
    p_receipt_date                      := SYSDATE;
    p_gl_date                           := SYSDATE;
    p_deposit_date                      := SYSDATE;
    p_override_remit_account_flag       := 'Y';
    p_maturity_date                     := SYSDATE+60;
    p_comments                          := 'POS Cash Collection';
    
fnd_global.apps_initialize(1290,51118,222);



AR_RECEIPT_API_PUB.Create_cash (
                p_api_version                   =>  1.0                
                ,p_init_msg_list                =>  FND_API.G_FALSE
                ,p_commit                       =>  FND_API.G_FALSE
                ,p_validation_level             =>  FND_API.G_VALID_LEVEL_FULL
                ,p_usr_currency_code            =>  p_usr_currency_code
                ,p_currency_code                =>  p_currency_code    
                ,p_usr_exchange_rate_type       =>  p_usr_exchange_rate_type
                ,p_exchange_rate_type           =>  p_exchange_rate_type
                ,p_exchange_rate                =>  p_exchange_rate          
                ,p_exchange_rate_date           =>  p_exchange_rate_date
                ,p_amount                       =>  p_amount
                ,p_factor_discount_amount       =>  p_factor_discount_amount
                ,p_receipt_number               =>  p_receipt_number
                ,p_receipt_date                 =>  p_receipt_date
                ,p_gl_date                      =>  p_gl_date
                ,p_maturity_date                =>  p_maturity_date
                ,p_postmark_date                =>  p_postmark_date
                ,p_customer_id                  =>  p_customer_id
                ,p_customer_name                =>  p_customer_name
                ,p_customer_number              =>  p_customer_number
                ,p_customer_bank_account_id     =>  p_customer_bank_account_id
                ,p_customer_bank_account_num    =>  p_customer_bank_account_num
                ,p_customer_bank_account_name   =>  p_customer_bank_account_name
                ,p_location                     =>  p_location
                ,p_customer_site_use_id         =>  p_customer_site_use_id                 
                ,p_customer_receipt_reference   =>  p_customer_receipt_reference
                ,p_override_remit_account_flag  =>  p_override_remit_account_flag
                ,p_remittance_bank_account_id   =>  p_remittance_bank_account_id
                ,p_remittance_bank_account_num  =>  p_remittance_bank_account_num  
                ,p_remittance_bank_account_name =>  p_remittance_bank_account_name
                ,p_deposit_date                 =>  p_deposit_date
                ,p_receipt_method_id            =>  p_receipt_method_id   
                ,p_receipt_method_name          =>  p_receipt_method_name 
                ,p_doc_sequence_value           =>  p_doc_sequence_value
                ,p_ussgl_transaction_code       =>  p_ussgl_transaction_code 
                ,p_anticipated_clearing_date    =>  p_anticipated_clearing_date
                ,p_called_from                  =>  p_called_from   
                ,p_global_attribute_rec         =>  p_global_attribute_rec
                ,p_attribute_rec                =>  p_attribute_rec
                ,p_comments                     =>  p_comments
                ,p_issuer_name                  =>  p_issuer_name  
                ,p_issue_date                   =>  p_issue_date    
                ,p_issuer_bank_branch_id        =>  p_issuer_bank_branch_id    
                ,x_return_status                =>  x_return_status
                ,x_msg_count                    =>  x_msg_count
                ,x_msg_data                     =>  x_msg_data
                ,p_cr_id                        =>  p_cr_id                                         
);

IF (x_return_status = 'S') THEN

   COMMIT;
   
            dbms_output.put_line('SUCCESS');
            dbms_output.put_line('Return Status            = '|| SUBSTR (x_return_status,1,255));
            dbms_output.put_line('p_cr_id                  = '||p_cr_id);
                

ELSE     

   ROLLBACK;
   
   dbms_output.put_line('Return Status    = '|| SUBSTR (x_return_status,1,255));
   dbms_output.put_line('Message Count     = '|| TO_CHAR(x_msg_count ));
   dbms_output.put_line('Message Data    = '|| SUBSTR (x_msg_data,1,255));
   dbms_output.put_line(APPS.FND_MSG_PUB.Get ( p_msg_index    => APPS.FND_MSG_PUB.G_LAST,    
          p_encoded      => APPS.FND_API.G_FALSE));
  
   IF x_msg_count >=0 THEN
   
      FOR I IN 1..10 LOOP
               dbms_output.put_line(I||'. '|| SUBSTR (FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ), 1, 255));
      
      END LOOP;
   END IF;
   
END IF;


EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line('Exception :'||sqlerrm);
 
END;

This is been tested in 11i . With little modification you can use in R12. Here is api code in text file.
dgreybarrow Finally Verification
Make sure you API executed correctly , once done you can check the receipt creation from Receipt workbench screen. What you have to do, just search the Receipt number and verify the details are correctly been populated or not.
Navigate to Receivables
Receipts : Receipts.
Query for Receipt Number 'HUB-TEST1'(As Example discussed above). The below screen shows the created cash receipt
Case 1 Receipt API Oracle
We will some other API usage in another post.

Receipt API's


The World of API's
To integrate with Oracle apps there are 10 API's, such as:
a) Creating a cash receipt
b) Applying it to a debit item
c) Creating a cash receipt and applying it to a debit item in one pass
d) On-account application
e) Unapplying the On-Account application
f) Unapplying the receipt application to a particular transaction
g) Reversing the receipt
h) Create a Miscellaneous receipt
i) Create a cash receipt activity application
j) Unapplies a cash receipt activity application
The 10 Receipt API's:
AR_RECEIPT_API_PUB.CREATE_CASH : This is for creating a single cash receipt, as in case of manually created cash receipts.
AR_RECEIPT_API_PUB.APPLY : Applies a cash receipt if used in (1) to a particular installment
of a debit item. The application can also be a cross currency application.
AR_RECEIPT_API_PUB.CREATE_AND_APPLY : This API's can be used in place of 2 sepearte call as in (1) & (2) above. This will Creates a cash receipt and applies it to a specified installment of a debit item in one pass.
AR_RECEIPT_API_PUB.APPLY_ON_ACCOUNT : Does an On Account application for a cash receipt.
AR_RECEIPT_API_PUB.UNAPPLY_ON_ACCOUNT : Unapplies the On-account application on the specified receipt.
AR_RECEIPT_API_PUB.UNAPPLY : This unapplies the application of a particular installment of a debit item against the specified cash receipt.
AR_RECEIPT_API_PUB.REVERSE : This is used to reverses the specified receipt.
AR_RECEIPT_API_PUB.CREATE_MISC : This is used to creates a Miscellaneous receipt
AR_RECEIPT_API_PUB.ACTIVITY_APPLICATION : This is used to creates an activity application on a cash receipt
10 AR_RECEIPT_API_PUB.ACTIVITY_UNAPPLICATION : This API used to unapplies a particular activity application on a cash receipt.
The solution can be best understood as figure:
receipt

Difference between "Internal" and "External" Drop-Ship


Difference between "Internal" and "External" Drop-Ship

In Oracle Context External Drop-Shipping means your Oracle Order Management uses purchase orders to outside suppliers that are automatically generated from sales orders for goods supplied directly from the supplier. The “external ” supplier ships the goods directly to the 3rd Party customer and confirms the shipment through the use of an Advanced Shipment Notice(ASN).

You should take a note,Oracle uses this ASN to record a receiving transaction into inventory followed by an immediate logical shipping transaction. From these transactions, conveyance of title takes place and the customer can be invoiced and the supplier’s invoice can be processed.

where as “Internal” context Drop-Shipping functions in a similar fashion. The key difference is that no inventory transactions take place on the books of the selling operating unit; transfer of ownership of the goods from shipper to seller to customer with the only physical movement of the goods being out of the shipping organization.


Here is Functional test cases for Drop shipment

1)Enter an order for drop ship item

Responsibility: Order Management

Orders, Returns -> Order Organizer -> New

Under Main tab:

Enter Customer,Order Type and Price List. Verify that any defaulting takes place per rules setup.
Under Line Items tab:
Enter item (must be Purchasable), qty, schedule ship date. Ensure Selling Price populates correctly.
Under the Shipping tab:
Enter Source Type = External
Enter Receiving Org
Save the order.

2)Book the order

Hit the Book Order button.
The order header status should show Booked.

The order line status should be Awaiting Receipt.

This can be verified by viewing the Status field on the sales order line, or by going to

Tools -> Workflow Status

Note: If the line status does not show Awaiting Receipt, try manually progressing the order via:

Actions -> Progress Order

3)Run Requisition Import

Orders, Returns -> Requisition Import


 


Enter Import Source = Order Entry

Submit the request and verify the sales order. Check for Sales Order is updated with the req number or not by opening the order and going to the Line Items tab. Select Actions -> Additional Line Information

Under the Drop Ship tab you will see the requisition information.

4)Create a purchase order from the requisition

within Responsibility: Purchasing

Go to Autocreate

In the Find Requisition Lines window, enter the requisition number, clear the buyer and ship to fields and click the Find button.In the Autocreate Documents window, select the requisition line and click the Automatic button. In the New Document window,select the supplier and click the Create button. Record the PO number.

5)Approve the PO

When you are able to find Purchase Order click the Approve button.Ensure the Submit for Approval box is checked and click OK.

6)Receive against the PO

Navigate to :Receiving -> Receipts

Once you select organization, find the details by passing PO number.Now Tab through the Receipt Header window to the Lines window.Complete the details.

7)Initiate Receiving Transaction
Receiving -> Receiving Transactions Summary, In the Find Expected receipts form, enter the PO number and hit Find button.

You need to check the box to the far left of the Receiving line and enter a Subinventory.Save and verify that the concurrent program Receiving Transaction Processor completes successfully.

  Verify the transactions

Receiving -> Transactions -> Summary
Under Supplier and Internal tab, enter receipt number and hit Find button to get the details.

9)Now Verify Sales Order status updated

Responsibility: Order Management
Orders, Returns -> Order Organizer
Find details for order number and navigate to the Lines tab, find out the detail for status , it should be 'Shipped'.Shipped Qty should be updated to reflect the full quantity ordered.

(This test cases for drop shipment flow Adopted from Metalink on reader demand.)

Similar Post on Drop Shipment

Understand “Drop Shipment” in Order Management?
Understand “Drop Shipment” in Order Management? -Part II
‘Drop Shipment’, ‘BackOrders’ and ‘Back to Back Order’ …
Drop Shipment - Functional Setup and flow
"Internal" versus "External" Drop-Ship: What’s the difference?

Query for Subledger Transfer to GL


Query for Subledger Transfer to GL
If you want to get details of different journals transferred to GL, use this to get the result. You can also fine tune with period , currency or clearing company code or Journal Type.
Here is the query:

SELECT   gjh.period_name            "Period name"
        ,gjb.name                   "Batch name"
        ,gjjlv.header_name          "Journal entry"
        ,gjjlv.je_source            "Source"
        ,glcc.concatenated_segments "Accounts"
        ,mmt.subinventory_code      "Subinventory"
        ,glcc3.segment4             "Costcenter"
        ,gjjlv.line_entered_dr      "Entered debit"
        ,gjjlv.line_entered_cr      "Entered credit"
        ,gjjlv.line_accounted_dr    "Accounted debit"
        ,gjjlv.line_accounted_cr    "Accounted credit"
        ,gjjlv.currency_code        "Currency"
        ,mtt.transaction_type_name  "Transaction type"
        ,TO_CHAR(mta.transaction_id)"Transaction_number"
        ,mta.transaction_date       "Transaction_date"
        ,msi.segment1               "Reference"
FROM  apps.gl_je_journal_lines_v gjjlv,
      gl_je_lines gje,
      mtl_transaction_accounts mta,
      mtl_material_transactions mmt,
      mtl_system_items_b msi,
      gl_je_headers gjh,
      gl_je_batches gjb,
      apps.gl_code_combinations_kfv glcc,
      apps.gl_code_combinations_kfv glcc2,
      mtl_secondary_inventories msin,
      mtl_transaction_types mtt,
      MTL_SECONDARY_INVENTORIES cost,
      gl_code_combinations glcc3
WHERE       gjjlv.period_name  BETWEEN 'NOV-2008' AND 'DEC-2008'
AND         gje.code_combination_id = gje.code_combination_id
AND         gjjlv.line_je_line_num  = gje.je_line_num
AND         gl_sl_link_table   = 'MTA'
AND         gjjlv.je_header_id = gje.je_header_id
AND         mmt.inventory_item_id = msi.inventory_item_id
AND         gje.je_header_id = gjh.je_header_id
AND         gjh.je_batch_id = gjb.je_batch_id
AND         mmt.organization_id   = msi.organization_id
AND         mmt.organization_id    = msin.organization_id
AND         mmt.subinventory_code= msin.secondary_inventory_name
AND         mta.gl_sl_link_id= gje.gl_sl_link_id
AND         mta.reference_account = glcc.code_combination_id
AND         msin.expense_account = glcc2.code_combination_id
AND         mmt.transaction_id = mta.transaction_id
AND         mtt.transaction_type_id = mmt.transaction_type_id
AND         cost.organization_id(+) = mmt.organization_id
AND         cost.secondary_inventory_name(+) = mmt.subinventory_code
AND         glcc3.code_combination_id(+) = 
 
          cost.expense_account 
 

Oracle Pricing Module – A Note


Oracle Pricing Module – A Note


It provides an advanced, highly flexible pricing engine that executes pricing calculations for Oracle Order Management. Some of the features which Pricing allows you are:
  • Apply a surcharge
  • Discounts by percentage or amount
  • Calculate the price of order lines using list prices specified in price lists and pricing formulas.
  • Apply price modifiers/qualifiers that you define to a line.
  • Calculate freight charges and show it as a separate component in Order Management
Concepts in pricing
Price Lists
Price lists are essential to ordering products because each item entered on an order must have a price. Each price list contains basic list information like price list name, effective dates, currency, pricing controls,rounding factor,shipping defaults such as freight terms and freight carrier,and one or more pricing lines, pricing attributes.
Pricing Formulas
Formulas are mathematical expressions that the pricing engine uses to determine the list prices of items and the discounts that apply to those items.
Price List Qualifiers/Modifiers
Price List Qualifiers/Modifiers Modifiers enable you to setup price adjustments (for example, discounts and surcharges) and freight and special charges (modifier lists) that the pricing engine applies immediately to pricing requests.Using modifiers you can:
  • Setup a modifier list with multiple modifier lines
  • Create eligibility rules for modifiers by assigning list and line level qualifiers
  • Qualifiers help the pricing engine to determine who is eligible for the modifier.
Pricing Attributes
Pricing attributes are characteristics of products and services that specify when the characteristics help to determine the price of a product or service. Distance, age of a related product, customer class, product family group, and level of service are examples of pricing attributes. You can specify one or a combination of pricing attributes and assign them to a product. At order entry time, the pricing engine evaluates the attributes you have specified during formula setup to calculate the price.
Steps for pricing an order
  • Create a price list (one time)
  • This includes creation of price list headers and lines(which associates items to a particular price)
  • Create pricing formulas (optional)
  • Create price list modifiers/qualifiers (optional)
  • Create an order.
  • Attach the price list to that order.

Oracle Pricing API


Oracle Pricing API


Some time back, I had opportunity to work some conversion in oracle pricing module; Though It was pretty simple task for mine only price list and qualifier need to convert. A week back, when a friend of mine asked some information about Pricing Module, I thought to share the information, which I collected at that time. So here are the lists of Application Program Interfaces (APIs) that Oracle Pricing has. These APIs can be used in custom programs or for doing conversion or migration activity for using some of the pricing functions.
  • QP_Price_formula_PUB.Get_Price_Formula (Formula Calculation API): The Formula Calculation package consists of entities to calculate the value of a formula.
  • QP_Price_formula_PUB.Process_Price_Formula (Update Formula Prices API): The Update Formula Prices package consists of entities to update formula prices.
  • QP_CUSTOM.Get_Custom_Price (Get Custom Price API): You may add custom code to this customizable function. The pricing engine while evaluating a formula that contains a formula line (step) of type "function" calls this API.
  • QP_PREQ_GRP.Price_Request (Price Request API): The Price Request Application Program Interface (API) is a public API that allows you to get a base price and to apply price adjustments, other benefits, and charges to a transaction.
  • QP_MODIFIERS_PUB.Process_Modifiers (Business Object for Modifier Setup API): The Business Object for Modifier Setup package consists of entities to set up modifiers.
  • QP_QUALIFIER_RULES_PUB.Process_Qualifier_Rules (Qualifiers API): The Qualifiers package consists of entities to set up qualifiers.
  • QP_ATTR_MAPPING_PUB. Build_Contexts (Attribute Mapping API): The Attribute Mapping package consists of entities to map attributes.
  • QP_Price_List_PUB.Process_Price_List (Price List Setup API): The Price List Setup package consists of entities to set up price lists.

Oracle E-Business Suite Release 12.1 Now Available


Oracle E-Business Suite Release 12.1 Now Available



It was big news MAY 4TH evening when Oracle announced general availability of the Oracle(R) E-Business Suite Release 12.1. Therefore the product which you are going to use is R 12.1.1
R12This time too the focus of R12.1 is again some of existing product enhancements across human resources, supply chain management, procurement, projects, master data management, customer relationship management and financials.
Additionally, R12.1 also features industry specific features and solutions that help drive greater value across the companies. Industries with significant new functionality advancements include Wholesale Distribution, Public Sector, High Technology, Engineering & Construction, Life Sciences, Retail, Professional Services, Communications, Consumer Goods and Utilities.
Here is extract of information for Release 12.1 Details and Features from Oracle website
  • The Oracle E-Business Suite Release 12.1 helps companies achieve rapid value by offering stand-alone solutions that complement existing Oracle E-Business Suite 11i or Release 12 environments. Customers can take advantage of rapid value solutions without having to upgrade to this latest release.
    • There are 9 new products been added in this version.
    • R12.1 will be available as stand-alone solutions available for some of major products like
      • Supply Chain Management
      • Oracle Sourcing On Demand
      • Oracle Incentive Compensation
      • Oracle Warehouse Management.
    • Release 12.1 will be delivers integrated analytics from Oracle BI Applications.
  • Some of existing module have been enhanced, which includes
    • Enhancement in the some of the key features of the R12.1 which include an integrated talent management solution with enhancements to Recruiting, Succession Planning, and Performance and Learning Management.
    • A new addition in product called Oracle Landed Cost Management will give organizations financial visibility into their extended supply chain costs.
  • R12 EBS also brings some rich industry-specific solutions that help companies strengthen their position in the market.
    • Distributors will benefit from greater visibility into ROI of promotional funds, accrued assets, the effect of supplier price changes and related liabilities with Oracle Supplier Ship and Debit and Oracle Price Protection for Wholesale Distribution.
    • Oracle Site Hub a new application helps organizations centralize information to help eliminate the problems associated with fragmented, incomplete and inconsistent site data resulting from rapid business expansion or mergers and acquisitions.
    • Retail industry can now leverage to Oracle Product Information Management for Retail (PIM for Retail) which is centralize product information from heterogeneous systems into a single view that can be used across all functional departments.
    • Oracle E-Business Suite Release 12.1 provides out of the box Federal accounting support with Project Accounting for automating funds consumption and billing in compliance with funding rules, supporting advance processing and ultimately helping to reduce overhead.
    • Oracle Subcontractor Payments for Engineering & Construction helps owners and general contractors manage cash flow and ensure their subcontractors are satisfying contract deliverables by controlling the payment of subcontractor invoices.