zoukankan      html  css  js  c++  java
  • How to Simulate the Price Order or Price Line Function using API QP_PREQ_PUB.PRICE_REQUEST Includes



    单击此项可添加到收藏夹 转到底部转到底部

    In this Document

    Purpose
      Scope
      Details
      Example Scripts to Simulate Price Order
      qp_engine_testing.sql
      qp_test_service.sql
      qp_test_oid.sql
      qp_direct_insert.sql
      qp_manual_adjustments.sql
      qp_override_selling_price.sql
      The setup involves passing information to the pricing engine using the following:
      Control Record Information: 
      Request/Order Line Information:
      Qualifiers and Pricing Attributes Information:
      Additional Resources:
      Available Options To Update the Order Upon Repricing
      References

    APPLIES TO:

    Oracle Advanced Pricing - Version 11.5.10 and later
    Oracle Order Management - Version 11.5.10.0 and later
    Information in this document applies to any platform.

    PURPOSE

    This note is intended to show how the Price Order or Price Line action may be simulated using an API call. This API call will not result in an update to the order.

    SCOPE

    The intended audience is for those with technical knowledge of Oracle Applications Code, the usage of public APIs, and those familiar with creating custom solutions for unique business requirements. 

    This is only a sample code and should be used to develop one's own code to meet business needs. Due to the fact this is  customized code, it is the Customer's responsibility to thoroughly test and to maintain their code. Oracle support may not be able to assist with these scripts, hence if one is implementing a custom solution and requires assistance, please contact Oracle Consulting.

    DETAILS

    Example Scripts to Simulate Price Order

    The following scripts are used in the examples for the Price Request Application Program Interface.
    These scripts help one set up data and make a call to the pricing engine to return the price and any related discounts.
    The scripts are located in the following area:   $QP_TOP/patch/115/sql.

    Please note then if one upgrades to a new release of Oracle Applications one would need to acquire a new copy of the scripts (same directory) as these scripts may have changes as provided by Oracle Development to work within the new application version.  Therefore if one used an example script to develop ones own script, for example, on Oracle Applications 11.5.10.2 and then upgraded to Oracle Applications 12.1.1, one would need to review the detailed example scripts for any changes needed.  These are only example scripts intended to assist with writing of the code needed to call the API.  It is the customers responsibility to thoroughly test and provide final coding needed to achieve desired results to meet individual business needs.

    Each script will contain a file version. 

    For example, on Release 12.1.1 for example script in file qp_engine_testing.sql shows file version 120.0


    REM/* $Header: qp_engine_testing.sql 120.0 2005/06/02 01:05:15 appldev noship $ */

    wheres the same script qp_engine_testing.sql on Release 11.5.10.2 shows file version 115.3

    REM/* $Header: qp_engine_testing.sql 115.3 2002/05/17 18:43:30 pkm ship $ */
    1. qp_engine_testing.sql

      (All regular Price Lists, Discounts , Surcharges etc.)

    2. qp_test_service.sql

      (Service Item Pricing Setup)

    3. qp_test_oid.sql

      (Other Item Discount Setup)

    4. qp_direct_insert.sql

      (Direct insertion into temporary tables to improve performance)

    5. qp_manual_adjustments.sql

      (Apply manual adjustments)

    6. qp_override_selling_price.sql

      (Override the unit selling price)

    Note: Examples provided are from March 2014 from Oracle Applications R12.

    The setup involves passing information to the pricing engine using the following:

    • Control Record Information: 

    The Control Record has parameters which control the behavior of the pricing engine. Please refer to the example scripts above for more details.

    • Request/Order Line Information:

    Request Line has information that contains the elements in the calling application that require a base and adjusted price. It may equate to a transaction line or transaction header record in the calling application. Refer to qp_engine_testing.sql for information on setting up the request line data. LINE_REC_TYPE is the record structure that needs to be completed when passing information related to a request line.

    • Qualifiers and Pricing Attributes Information:

    One must pass qualifiers and pricing attributes information that are needed by the pricing engine to determine the applicable price list lines and modifier list lines.   One may wish to reference  "Frequently Asked Questions (FAQ) for Pricing Attributes Using Pricing APIs Such as Limitations, Request Type, How to Build Context When Using QP_PREQ_PUB.PRICE_REQUEST" (Doc ID 1094603.1).

    Additional Resources:

    • For release 12 refer to the Oracle Order Management Open Interfaces, API, & Electronic Messaging Guide
    • For 11.5.10: Order Management - Open Interfaces, API, & Electronic Messaging Guide, B14446-01
      Available through Note 91798.1 Order Management Product Documentation 

    • Note 759804.1 - HOW to Use QP_PREQ_PUB.PRICE_REQUEST API to Price an Item

    • Note  1094603.1 - How to Build Context for Pricing Attributes When Using QP_PREQ_PUB.PRICE_REQUEST

    • Note 1393917.2 - Information Center: Oracle Advanced Pricing, While on the Overview tab, click on the "Resources" link.
      This is where one will find documents on APIs that complement the Oracle Order Management Open Interfaces, API, & Electronic Messaging Guide.
      Scroll down and one will find a whole section dedicated to the price request API.



    Available Options To Update the Order Upon Repricing

    •   One could choose to use the Process Order API (OE_Order_Pub.Process_order).
        Refer to Note 1265721.1 - Process Order API - How To Scripts and/or
                    Note 1072272.1 - Can One Use oe_order_pub.process_order API to Create an Order Line With a Selling Price Different Than the List Price?

    • In addition, Oracle does provide a seeded Workflow Reprice activity that can be inserted anywhere in the line Workflow, the limitation of this approach is that it only contains a line level activity for repricing. If used, repricing each line is necessary and there is no possibility for a header level reprice.

    • Attribute changes on the order line can trigger the pricing engine to reprice the line.
      For a current list of these attributes, refer to Note 578902.1 What Sales Order Attributes Triggers Repricing in the Sales order Form? Note that a drawback of this approach is that changing some of these fields may also trigger defaulting rules and add some performance overhead.



    Still Have Questions? 
    To discuss this information further with Oracle experts and industry peers, we encourage you to review, join or start a discussion in the My Oracle Advanced Pricing Community.

    REFERENCES


    NOTE:759804.1 - HOW to Use QP_PREQ_PUB.PRICE_REQUEST API to Price an Item
    NOTE:1393917.2 - Information Center: Oracle Advanced Pricing
    NOTE:91798.1 - Order Management Product Documentation
    NOTE:1265721.1 - Process Order API - How To Scripts
    NOTE:1448751.1 - Qp_preq_pub.Price_request Is Not Showing a Discount Defined at Group of Lines Level
    NOTE:578902.1 - What Sales Order Attributes Triggers Repricing in the Sales order Form?
    NOTE:1072272.1 - Can One Use oe_order_pub.process_order API to Create an Order Line With a Selling Price Different Than the List Price?
    NOTE:1094603.1 - FAQ for Pricing Attributes Using Pricing APIs Such as Limitations, Request Type, How to Build Context When Using QP_PREQ_PUB.PRICE_REQUEST
    单击此项可添加到收藏夹 转到底部转到底部

    In this Document

    Purpose
      Scope
      Details
      Example Scripts to Simulate Price Order
      qp_engine_testing.sql
      qp_test_service.sql
      qp_test_oid.sql
      qp_direct_insert.sql
      qp_manual_adjustments.sql
      qp_override_selling_price.sql
      The setup involves passing information to the pricing engine using the following:
      Control Record Information: 
      Request/Order Line Information:
      Qualifiers and Pricing Attributes Information:
      Additional Resources:
      Available Options To Update the Order Upon Repricing
      References

    APPLIES TO:

    Oracle Advanced Pricing - Version 11.5.10 and later
    Oracle Order Management - Version 11.5.10.0 and later
    Information in this document applies to any platform.

    PURPOSE

    This note is intended to show how the Price Order or Price Line action may be simulated using an API call. This API call will not result in an update to the order.

    SCOPE

    The intended audience is for those with technical knowledge of Oracle Applications Code, the usage of public APIs, and those familiar with creating custom solutions for unique business requirements. 

    This is only a sample code and should be used to develop one's own code to meet business needs. Due to the fact this is  customized code, it is the Customer's responsibility to thoroughly test and to maintain their code. Oracle support may not be able to assist with these scripts, hence if one is implementing a custom solution and requires assistance, please contact Oracle Consulting.

    DETAILS

    Example Scripts to Simulate Price Order

    The following scripts are used in the examples for the Price Request Application Program Interface.
    These scripts help one set up data and make a call to the pricing engine to return the price and any related discounts.
    The scripts are located in the following area:   $QP_TOP/patch/115/sql.

    Please note then if one upgrades to a new release of Oracle Applications one would need to acquire a new copy of the scripts (same directory) as these scripts may have changes as provided by Oracle Development to work within the new application version.  Therefore if one used an example script to develop ones own script, for example, on Oracle Applications 11.5.10.2 and then upgraded to Oracle Applications 12.1.1, one would need to review the detailed example scripts for any changes needed.  These are only example scripts intended to assist with writing of the code needed to call the API.  It is the customers responsibility to thoroughly test and provide final coding needed to achieve desired results to meet individual business needs.

    Each script will contain a file version. 

    For example, on Release 12.1.1 for example script in file qp_engine_testing.sql shows file version 120.0


    REM/* $Header: qp_engine_testing.sql 120.0 2005/06/02 01:05:15 appldev noship $ */

    wheres the same script qp_engine_testing.sql on Release 11.5.10.2 shows file version 115.3

    REM/* $Header: qp_engine_testing.sql 115.3 2002/05/17 18:43:30 pkm ship $ */
    1. qp_engine_testing.sql

      (All regular Price Lists, Discounts , Surcharges etc.)

    2. qp_test_service.sql

      (Service Item Pricing Setup)

    3. qp_test_oid.sql

      (Other Item Discount Setup)

    4. qp_direct_insert.sql

      (Direct insertion into temporary tables to improve performance)

    5. qp_manual_adjustments.sql

      (Apply manual adjustments)

    6. qp_override_selling_price.sql

      (Override the unit selling price)

    Note: Examples provided are from March 2014 from Oracle Applications R12.

    The setup involves passing information to the pricing engine using the following:

    • Control Record Information: 

    The Control Record has parameters which control the behavior of the pricing engine. Please refer to the example scripts above for more details.

    • Request/Order Line Information:

    Request Line has information that contains the elements in the calling application that require a base and adjusted price. It may equate to a transaction line or transaction header record in the calling application. Refer to qp_engine_testing.sql for information on setting up the request line data. LINE_REC_TYPE is the record structure that needs to be completed when passing information related to a request line.

    • Qualifiers and Pricing Attributes Information:

    One must pass qualifiers and pricing attributes information that are needed by the pricing engine to determine the applicable price list lines and modifier list lines.   One may wish to reference  "Frequently Asked Questions (FAQ) for Pricing Attributes Using Pricing APIs Such as Limitations, Request Type, How to Build Context When Using QP_PREQ_PUB.PRICE_REQUEST" (Doc ID 1094603.1).

    Additional Resources:

    • For release 12 refer to the Oracle Order Management Open Interfaces, API, & Electronic Messaging Guide
    • For 11.5.10: Order Management - Open Interfaces, API, & Electronic Messaging Guide, B14446-01
      Available through Note 91798.1 Order Management Product Documentation 

    • Note 759804.1 - HOW to Use QP_PREQ_PUB.PRICE_REQUEST API to Price an Item

    • Note  1094603.1 - How to Build Context for Pricing Attributes When Using QP_PREQ_PUB.PRICE_REQUEST

    • Note 1393917.2 - Information Center: Oracle Advanced Pricing, While on the Overview tab, click on the "Resources" link.
      This is where one will find documents on APIs that complement the Oracle Order Management Open Interfaces, API, & Electronic Messaging Guide.
      Scroll down and one will find a whole section dedicated to the price request API.



    Available Options To Update the Order Upon Repricing

    •   One could choose to use the Process Order API (OE_Order_Pub.Process_order).
        Refer to Note 1265721.1 - Process Order API - How To Scripts and/or
                    Note 1072272.1 - Can One Use oe_order_pub.process_order API to Create an Order Line With a Selling Price Different Than the List Price?

    • In addition, Oracle does provide a seeded Workflow Reprice activity that can be inserted anywhere in the line Workflow, the limitation of this approach is that it only contains a line level activity for repricing. If used, repricing each line is necessary and there is no possibility for a header level reprice.

    • Attribute changes on the order line can trigger the pricing engine to reprice the line.
      For a current list of these attributes, refer to Note 578902.1 What Sales Order Attributes Triggers Repricing in the Sales order Form? Note that a drawback of this approach is that changing some of these fields may also trigger defaulting rules and add some performance overhead.



    Still Have Questions? 
    To discuss this information further with Oracle experts and industry peers, we encourage you to review, join or start a discussion in the My Oracle Advanced Pricing Community.

    REFERENCES


    NOTE:759804.1 - HOW to Use QP_PREQ_PUB.PRICE_REQUEST API to Price an Item
    NOTE:1393917.2 - Information Center: Oracle Advanced Pricing
    NOTE:91798.1 - Order Management Product Documentation
    NOTE:1265721.1 - Process Order API - How To Scripts
    NOTE:1448751.1 - Qp_preq_pub.Price_request Is Not Showing a Discount Defined at Group of Lines Level
    NOTE:578902.1 - What Sales Order Attributes Triggers Repricing in the Sales order Form?
    NOTE:1072272.1 - Can One Use oe_order_pub.process_order API to Create an Order Line With a Selling Price Different Than the List Price?
    NOTE:1094603.1 - FAQ for Pricing Attributes Using Pricing APIs Such as Limitations, Request Type, How to Build Context When Using QP_PREQ_PUB.PRICE_REQUEST
  • 相关阅读:
    worker与redis网络中断后,worker不再接受任务的异常问题
    Pyecharts 绘制动态流线地图
    MySql存储过程知识了解
    Pyecharts配置项使用
    Pandas一个需求:存在一个列表,需要在一个DataFrame中取到以该列表为索引的数据
    mysql时间与字符串之间相互转换
    map + apply + applymap
    pandas——read_csv
    Python 原生协程------asyncio(选自公众号)
    一道记数题
  • 原文地址:https://www.cnblogs.com/wanghang/p/6299118.html
Copyright © 2011-2022 走看看