R12 QP Troubleshooting Guide
R12 QP Troubleshooting Guide
Contents -
Section-A Common Advanced Pricing Setup Issues
Section-A
This section summarizes the common errors encountered while using Advanced Pricing
R12 features and recommended troubleshooting tips. As you will notice that most of
these errors are valid pricing errors, the user may need to understand the cause or
required setup to change the behavior.
2
Pricing setups do not show the global flag orPlease check the following:
operating unit fields 1. Profile QP: Security Control is set
to
‘On’ at Site level, is view only at Site level,
profile is not set at any other level and is
not updateable at any levels. If it was
updateable at any other levels, make it
view only at all levels and run the ‘Security
Control’ concurrent program from the
Oracle Pricing Administrator responsibility
with desired value.
2. If QP: Security Control is set to
‘Off’, run the ‘Security Control’ concurrent
program with a value ‘On’, make sure it
completes successfully
Unable to pick a given operating unit on Make sure that the MO: Security Profile
Currency is not defaulted on the price list Make sure that the SET_OF_BOOKS_ID
is set in the OM System parameters for
the default operating unit
Unable to view a price list or modifier list Please check if the user-
responsibilityoperating unit context you
are in has a view/maintain privilege. You
may need pricing administrator privilege to
be able to do that.
Price list does not appear on a transaction Ensure that the price list is active. If
list of values. Pricing Security is turned ON, ensure that
the price list belongs to the operating unit
of the transaction or is global.
The pricing engine does not qualify a Ensure that the price list or modifier is
pricing transaction for a specific price list or active. If Pricing Security is turned ON,
modifier or ask for promotion ensure that the price list or modifier
belongs to the operating unit of the
transaction or is global.
Unable to view a secondary price list after theIn release 12, the LOV for secondary price
upgrade to release 12 lists will show only those price lists
the pricing setup UIs. or MO: Operating Units are set to a
the user has view/maintain privileges. If
Unable to update a free good benefit line the primary price list is global, the user
on a Promotional Goods modifier can pick both global and OU specific price
lists as secondary price lists. If primary
price list is OU specific, the secondary
3
price list can be a global price list or the user has view/maintain privileges. If
should belong to the same OU as the the promotional goods modifier is global,
primary price list. the LOV shows only global price lists. If
the promotional goods modifier is OU
In release 12, the LOV for picking price specific, the LOV shows both global price
lists to derive the list price of the benefit lists and those that belong to the same
item (free good) on the promotional goods OU as the promotional goods modifier.
modifier will show only those price lists
Not getting a price for an item Check if the QP: Item Validation Org is
set to the right Item Master Org for that
responsibility.
The product value is displayed as null or Check if the category set to which this
category ID is displayed when a category belongs to is attached as a
(upgraded) price list line or modifier or limit default category set for one of the
or formula based on Item category is functional areas.
queried.
The pricing engine does not apply a There could be many reasons for this
modifier or price list line based on a specific problem:
item category. 1. Check if the pricing engine applies
any other item category based price list
line or modifier gets applied.
2. Check if the item belongs to the
category in the setup.
3. Check if the category set to which
this category belongs to is attached as a
default category set for one of the
functional areas.
4. Check if the functional area to
which the category set for that category is
mapped and enabled to the PTE-Source
system of the price list or modifier list.
4
A.3.Price Book
Not able to send price book to a specific Check if all required profile option values
email. are set appropriately. See if QP: E-mail -
From Address profile value has been set
correctly.
Not able to see or change Pricing Check if the application user is an internal
Perspective. or external user since some functionality is
different for these 2 different categories of
users. To find out if a user is an Internal or
external user, query the user definition
from System Administrator responsibility.
A non-null Customer Id field on the user
definition indicates an external user.
Not able to generate price book from an 1. Check for Pricing Parameter Value
external integrating application. ‘Price Book Pricing Events’. Based on the
values specified in the profile QP: Pricing
Perspective Request Type, each calling
application (pricing perspective) has an
associated request type. The Price Book
Pricing Events parameter determines
which pricing event or events are used for
each request type to call the pricing
engine to generate a price book. For
example ‘BATCH, BOOK’
5
2. Check if the Multi-Org access control is
appropriately set for the applicable
responsibility.
Not able to e-mail or print price books Check the Oracle XML Publisher Delivery
directly from the Price Book feature Manager configuration (i.e.
xdodelivery.cfg configuration file in
Oracle XML Publisher 5.0). The printer
and e-mail servers must be registered
into the configuration before using this
functionality. Please refer to the Oracle
XML Publisher User's Guide for
instructions on how to configure Delivery
Manager.
Not able to successfully perform an XML View the error messages using the
transaction. Oracle XML Gateway Transaction
Monitor and/or Oracle Workflow Status
Monitor. For more information, please
refer to the documentation for these
modules.
6
A.4. Pricing Parameters
Updating the user values If the parameter Name has the value set id
- QP: text attached to it, then please read
the Advanced Pricing
Implementation Guide to define the user
value. Updating the user value in lower text
or any other text may lead to error or affect
the desired behavior.
When the entered value is not in While updating the user value for a
synchronous with level name parameter, check that you are updating for
the relevant level name.
7
Customers creating new parameters The parameters can only be created in
8
Validation errors while defining price breaks. The user should ensure the correct
validation is performed by checking that
the price break is marked as continuous.
1. In Forms, go to “Help” ?
“Diagnostics” ? “Examine…” and verify
that the
CONTINUOUS_PRICE_BREAK_FLAG
field has a value of ‘Y’.
2. In the HTML UI check that the
Value From field defaults to 0 (for a new
price break) or the previous break line’s
Value To (when adding a new row),
indicating that the price break is
continuous.
9
2. Ensure that the Profile ‘QP:
Pricing Party Hierarchy Type’ is
set appropriately.
4. Qualify_Hier_Descendents_Flag
(Applies to Party Hierarchy field) needs to
be checked for that Qualifier Attribute in the
Qualifier setup form.
Section-B
10
B.1 Generating OM/ QP Debug File
Set Profile “OM: Debug Directory” to directory listed in util_file_dir in init.ora. Set
Profile “OM: Debug_Level” to 5.
Set Profile “QP: Debug” to Yes. Set Profile “OM: Debug Directory” to
directory listed in util_file_dir in init.ora.
Search the output file in the directory mentioned in above profile based on time-stamp.
This debug is normally required by Oracle Support and Development to examine the
code flow and failure point if any.
Warning:
As enabling these debugs adds significant overhead on system performance, it is highly
recommended that these debugs are kept disabled unless debug file is being captured
for diagnostics. Profile “QP: Debug” should also be set to ‘No’ unless it is required.
The Pricing Engine Request Viewer captures the pricing call from any calling application
and displays the inputs and outputs of the pricing call. This information can help you to
diagnose which price list lines were selected or rejected by the pricing engine and to
determine why certain prices and adjustments were or were not applied.
This method provides a subset of information as compared to the debug output file. It
provides information such as the list line selected and deleted by the engine during
processing, and the reason for deletion. It does not provide information on why the list
line is not selected by the engine (qp_list_line_detail.sql is a useful mechanism for this).
This is a quick and useful method to verify the data passed to the pricing engine and
data that were returned by the pricing engine. This method determines whether the
expected qualifiers and pricing attributes are sourced. Since the Pricing Engine Request
Viewer requests are stored in the permanent pricing debug tables, users can query
previous pricing debug requests also.
Warning:
As the Pricing Engine Request Viewer consumes a large amount of system resources, it
is recommended that it be turned off unless debug is being generated.
11
B.3 Script qp_list_line_detail.sql
This script provides information about how the price list line or modifier is setup and can
be used when the engine has not selected the expected price list line/ modifier line.
1. Step 1 is same as above to obtain the Price List line ID/ Modifier line ID
2. Navigate to PricingReports
Much setup information has impact on pricing engine process. Verify that the following
columns have appropriate values:
Incompatibility Resolve Code in event phase, Search_flag in event phase,
Automatic_flag, active_flag in modifiers and price lists Pricing Phase in modifier.
Patches involving any operation on temporary tables are not applied correctly if any user
is holding a lock on the temporary table. While applying QP patches, verify that no user
has a lock on Oracle Advanced Pricing temporary tables by executing the following sql
statement (this statement should not return any rows) -
Check the adpatch worker log to verify that the pricing patch application is successful
without any errors. If the patch failed with the following error then bounce the database
and reapply the patch.
12
ORA-14452: Attempt to create, alter, or drop an index on temporary table already in use
Make sure that no concurrent program (example: Order Import) is started before
applying the patch.
Technical Brief Name: Pricing Diagnostics and Troubleshooting Guide for Release 12.0
Version: 1.0
Written By:
Giri Tippireddy, Priya Gopal, Nirmal Kumar
Reviewed By:
Vivian Y Lee, Vivek Gulati
13