Warning Handling
You can set up this Accelerator in many different ways. Almost every feature is configurable either by specifying where to look for necessary data or by telling the package how to handle this data. Because so many things can be adjusted, there is a lot of things that can go wrong as well. Missing configurations, missing data or conflicting business configurations are only a few examples.
To handle this we introduced a warning/error handling mechanism further described at Error Handling Deep Dive.
In this section:
Warning Placement
Warnings can be displayed at the following places:
Default warning column
Field where the issue happened (hidden if the element is internal)
ResultMatrix at the end of the calculation
There are also some issues which prevent WarningManager from being initialized. Calculation will fail and an exception will be thrown in this case.
Warning Configuration
Every warning code signalizes that something could not be executed properly; it is not always a business issue. There are cases like "EXCEPTION_IGNORED" which just inform the user that a table override was ignored due to a manual override. It is possible to configure the visibility of each warning.
For every error, the following behavior can be configured:
Raising any type of alert (only when the element is visible).
Adding a default warning.
Adding to a matrix element at the end of the calculation.
For details on setup see WarningConfig PP.
The recommended approach on initial package deployment is to keep the default error setup until the package was fully configured and tested. Then all warnings related to unused features can be turned off by disabling alerts and hiding them from the default warnings popup. They can be also hidden from the custom Matrix popup, but we don’t recommend it since it may make debugging future problems much harder.
Warning Codes List
The table below represents a full list of expected errors and their default configuration that can be found in WarningConfig PP after package deployment:
Error Code | Message | Solution | Type | Alert | Matrix | Warning |
---|---|---|---|---|---|---|
CANT_APPLY_STRATEGY_CONDITIONS | The strategy condition(s) cannot be applied. Details are in technical message. | Verify the strategy conditions configuration table and its data. | Configuration | Red | Yes | Yes |
CANT_CALCULATE_COST_TYPE | Unable to calculate cost for the specified type. Details are in technical message. | Verify the cost type configuration. | Configuration | Red | Yes | Yes |
CANT_CALCULATE_MARGIN_BREAKEVEN_VOLUME | Unable to perform break-even calculation due to division by zero error. | Adjust the final price and cost. | Runtime | Red | Yes | Yes |
CANT_CALCULATE_REVENUE_BREAKEVEN_VOLUME | Unable to perform break-even calculation due to division by zero error. | Adjust the final price. | Runtime | Red | Yes | Yes |
CANT_GET_ACTUAL_PRICE_FROM_PL | Unable to get the actual price from price lists. No valid list found. | Make sure the price list with the same calculation logic as the current used has already existed and been approved. | Configuration | Â | Yes | Yes |
CANT_GET_CORRIDOR_CONFIG | Unable to get the corridor configuration. | Verify the corridor configuration tables setting. | Error | Red | Yes | Yes |
CANT_GET_COST_TYPES_SELECTION | Unable to get the cost types selection configuration. Unable to calculate related element(s). | Verify cost types selection configuration table and its data. | Configuration | Critical | Yes | Yes |
CANT_GET_DEPENDENCY_LEVEL_ADJUSTMENT | Unable to get the dependency adjustment value. | Verify dependency adjustment configuration table and its data. | Error | Red | Yes | Yes |
CANT_GET_DISCOUNT | Unable to get the discount value. | Verify discount level configuration table. | Runtime | Red | Yes | Yes |
CANT_GET_MIN_MARGIN | Unable to get the minimum margin. | Verify minimum margin configuration table and its data. | Error | Red | Yes | Yes |
CANT_GET_PRODUCT_CHANGED_CAUSE | Unable to get the reason for change in the product. | Contact support. | Other | Red | Yes | Yes |
CANT_GET_RELEVANT_COMPETITION_DATA | Unable to get the relevant competition data. | Verify relevant competition data configuration table and its data. | Error | Red | Yes | Yes |
CANT_GET_STRATEGIES_SELECTION | Unable to get the strategies selection configuration. Unable to calculate related element(s). | Verify strategy selection configuration table and its data. | Error | Â | Yes | Yes |
CIRCULAR_DEPENDENCY | DependencyLevelConfiguration has circular dependency. | Â | Runtime | Red | Yes | Yes |
DEPENDENCY_LEVEL_ADJUSTMENT_IS_ZERO | There is no markup between Parent Price and this Pricing Level configured. | Check if you want to directly follow the Parent Level Price without any Markup. | Data | Â | Yes | Yes |
EMPTY_CONFIG | One of the mandatory fields in the configuration is empty. Details are in technical message. | Verify the configuration table and its data. | Fix config | Critical | Yes | Yes |
ERROR_LOOKING_UP_STRATEGY_CONDITIONS_DATA_PP | Unable to get Strategy Condition Price Parameter. | Verify configuration of strategy conditions. | Configuration | Red | Yes | Yes |
ERROR_PARSING_COST_TYPE_DEFINITION | Unable to parse the definition of the specified cost type. Details are in technical message. | Verify the cost type configuration. | Configuration | Red | Yes | Yes |
EXCEPTION_IGNORED | An exception value has been ignored. | Verify if the exception is valid and its value is valid. | Other | Red | Yes | Yes |
EXCEPTION_STRATEGY_OVERRIDDEN | Strategy exception has been overridden by manual selection. | Â | Business Warning | Yellow | Yes | Yes |
FIELD_NOT_FOUND | The specified field is not found in the target table. Details are in technical message. | Verify the field name in the configuration. | Runtime | Red | Yes | Yes |
INVALID_DIMENSION_LOOKUP_FIELD | The specified lookup keys in the current dimension are not found. | Verify the lookup keys of the current dimension in the pricing dimension configuration table. | AnyType | Red | Yes | Yes |
INVALID_FINAL_PRICE | The calculated final price value is invalid. | Resolve critical and serious errors. | Error | Critical | Yes | Yes |
INVALID_FORECAST_TYPE | The selected forecast type is not supported. | Verify current quarter Forecast setting. | Error | Red | Yes | Yes |
INVALID_PARENT_SOURCE_ID | The source ID of the specified parent price list to be referred is invalid. | Verify the Source ID in dependency configuration table. It should be the referred price list ID. | Data | Red | Yes | Yes |
INVALID_MIN_MARGIN_PERCENT | The minimum margin value is invalid. | Verify minimum margin configuration table data. | Data | Â | Yes | No |
CANT_GET_STOCK_CONFIG | Unable to get the stock configuration. | Verify Stock setting. | Runtime | Red | Yes | Yes |
INVALID_VOLUME_BREAKDOWN_SETTING | Error in parsing volume breakdown due to invalid setting. | Verify volume breakdown configuration table and its data format, syntax. | Configuration | Red | Yes | Yes |
MISSING_INPUTS_MARGIN_BREAKEVEN_VOLUME | Missing input(s) for margin breakeven volume. Required: cost, base price, volume, final price. | Verify the required parameter(s). | Runtime | Red | Yes | Yes |
MISSING_INPUTS_REVENUE_BREAKEVEN_VOLUME | Missing input(s) for revenue break-even volume. Required: base price, volume, final price. | Verify the required parameter(s). | Runtime | Red | Yes | Yes |
NO_ACTUAL_LIST_PRICE_FOUND | No valid actual list price found. Unable to calculate related element(s). | Verify Actual Price setting and its data. | Data | Yellow | Yes | No |
NO_BASE_DEPENDENCY | There is no dependency for looking for non virtual dependency level. | Â | Runtime | Red | Yes | Yes |
NO_CONFIG | One of the mandatory configurations is not found. Details are in technical message. | Verify the configuration table and its data. | Fix config | Critical | Yes | Yes |
NO_CORRIDOR_CONFIG_FOUND | No valid corridor configuration found. | Verify corridor configuration tables data. | Error | Â | Yes | No |
NO_COST_FOUND | No valid cost value found. Unable to calculate related element(s). | Verify Cost setting and its data. | Data | Â | Yes | Yes |
NO_DEPENDENCY_LEVEL_ADJUSTMENT | Unable to get data for dependency level adjustment. | Check dependency level adjustments data source. | Data | Red | Yes | Yes |
NO_DISCOUNT_FOUND | No valid discount value found. Unable to calculate related element(s). | Verify discount level configuration table and its data. | Data | Red | Yes | Yes |
NO_EXCHANGE_RATE_FOR_BATCHED_ITEM | One or more of the items in the batch has transaction data with not convertible currency. | Verify the exchange rate configuration and the data. | Runtime | Critical | Yes | Yes |
NO_EXCHANGE_RATE_FOUND | No valid exchange rate value found. | Verify exchange rate configuration table and its data. | Data | Critical | Yes | Yes |
NO_PARENT_LEVEL_CALCULATED_PRICES | No valid calculated prices from the parent level found. | Verify Prices of the parent item. | Error | Â | Yes | Yes |
NO_PARENT_LEVEL_FINAL_PRICE | No valid final price from the parent level found. Unable to calculate related element(s). | Verify Final Price of the parent item. | Error | Red | Yes | Yes |
NO_PARENT_LEVEL_PRICE | No valid price from the parent level found. Unable to calculate related element(s). | Verify Final Price of the parent item. | Error | Red | Yes | Yes |
NO_PARENT_LEVEL_PRICE_DECISION | No valid price decision from the parent level found. | Verify Price Decision of the parent item. | Error | Red | Yes | Yes |
NO_PARENT_LEVEL_RECORD_FOUND | No price record found for parent level. | Verify the corresponding price record at the parent level source. | Error | Yellow | Yes | Yes |
NO_INPUT_FOR_CORRIDOR | Unable to calculate the price corridor due to missing parameter(s). | Verify the required parameter(s). | Error | Â | Yes | No |
NO_INPUT_FOR_DISCOUNT | Unable to get product discount data. | Check Discount Data. | Data | Â | Yes | Yes |
NO_INPUT_FOR_PARENT_LEVEL_ADJUSTED_PRICE | Unable to get Parent level adjusted price. | Check Parent Level Price and Dependency Level Adjustment. | Error | Â | Yes | No |
NO_INPUT_FOR_PARENT_LEVEL_PRICE_PRIORITY | Unable to get Parent Level Price Priority. | Check configuration. | Error | Â | Yes | No |
NO_INPUT_FOR_MARGIN | Unable to get margin. | Check value for margin in Price Parameter. | Data | Â | Yes | Yes |
NO_INPUT_FOR_MIN_MARGIN_PRICE | Unable to calculate the minimum margin price due to missing parameter(s). | Verify the required parameter(s). | Data | Â | Yes | No |
NO_INPUT_FOR_MIN_MARGIN_VALIDATION | Unable to validate the minimum margin due to missing parameter(s). | Verify the required parameter(s). | Data | Red | Yes | Yes |
NO_INPUT_FOR_NET_PRICE | Unable to calculate net price. | Check configuration of net price module. | Configuration | Â | Yes | Yes |
NO_INPUT_FOR_PRICE_CHANGE_EFFECT | Unable to calculate the effect of price changing due to missing parameter(s). | Verify the required parameter(s). | AnyType | Red | Yes | Yes |
NO_INPUT_FOR_STOCK_COVER_DAYS | Unable to calculate stock cover days due to missing parameter(s). | Verify stock and sales volume forecast elements result data. | Runtime | Yellow | Yes | Yes |
CANT_GET_VOLUME_DISCOUNT | Unable to get volume discount. | Check data for volume discount. | Data | Â | Yes | Yes |
NO_MIN_MARGIN_CONFIG_FOUND | No valid minimum margin configuration found. | Verify minimum margin configuration table data. | Data | Â | Yes | No |
NO_MIN_MARGIN_PRICE | Unable to calculate minimum margin price. | Check if everything is available for minimum margin price. | Data | Â | Yes | No |
NO_PF_TARGET | Missing Price Flexibility Package target. | Contact support. | Configuration | Â | No | No |
NO_PRODUCT_CHANGED_CAUSE | Missing reason in Price Flexibility Package. | Contact support. | Other | Â | Yes | Yes |
NO_ROUNDING_RULE_FOUND | There is no suitable rounding rule found. | Verify the rounding rules configuration table and its data. | Configuration | Red | Yes | Yes |
NO_SALES_VOLUME_FORECAST | There is no forecast for sales volume. | Verify the transaction data. | Data | Â | Yes | No |
NO_SALES_VOLUME_LAST_PERIOD | There is no sales volume in last period. | Verify the transaction data. | Data | Â | Yes | No |
NO_SALES_VOLUME_LAST_YEAR | There is no sales volume in last year. | Verify the transaction data. | Data | Â | Yes | No |
NO_SALES_VOLUME_YTD | There is no sales volume up-to-date. | Verify the transaction data. | Data | Â | Yes | No |
NO_STOCK_DATA | There is no valid record for stock. | Verify Stock setting and its data. | Runtime | Yellow | Yes | Yes |
NO_STRATEGY_DEFINITION_FOUND | The strategy definition cannot be found. | Verify strategy definition configuration table and its data. | Configuration | Red | Yes | Yes |
NO_SUITABLE_ROUNDING_RESULT | Applying the rounding rule makes the price invalid. The rule has been canceled. | Verify the price and the rounding rules configuration. | Configuration | Yellow | Yes | Yes |
NO_TRANSACTION_SOURCE_TABLE_FOUND | The specified transaction table cannot be found. | Verify the Transaction Source setting. | Error | Red | Yes | Yes |
NO_TURNOVER_FORECAST | There is no forecast for the turnover. | Verify the transaction data. | Data | Â | Yes | No |
NO_TURNOVER_LAST_PERIOD | There is no turnover in last period. | Verify the transaction data. | Data | Â | Yes | No |
NO_TURNOVER_LAST_YEAR | There is no turnover in last year. | Verify the transaction data. | Data | Â | Yes | No |
NO_TURNOVER_YTD | There is no turnover up-to-date. | Verify the transaction data. | Data | Â | Yes | No |
PP_VALIDITY_PERIODS_INVALID_FORMAT | Validity periods of the product are in invalid format. | Check Data and Configuration of PP. Validity period fields should have Date value type. | Runtime | Red | Yes | Yes |
STRATEGY_OVERRIDE_PROHIBITED | Strategy selections are not available due to overridable setting. | If this is not the expected behavior, verify the Overridable property of member strategies definition. | Other | Â | Yes | Yes |
TOO_MANY_ROWS | There are too many records in the current batch. | Â | Runtime | Yellow | Yes | Yes |
TOO_MANY_ROWS_ABORTED | Unable to proceed because there are too many records in the current batch. | Â | Runtime | Yellow | Yes | Yes |
TOO_SMALL_MARGIN | The current margin is smaller than the specified minimum margin. | Verify the final price and the cost. | Business Warning | Yellow | Yes | Yes |
UNABLE_TO_READ_TABLE_DATA | Data lookup could not been performed / results could not be read. | Â | Runtime | Red | Yes | Yes |
UNEXPECTED_ERROR | Unhandled error. | Contact support. | Error | Red | Yes | Yes |
UNEXPECTED_PRICE_RANGE_FOR_CORRIDOR | Unexpected range for price corridor. | Check the configured corridor for price checks. | Data | Red | Yes | Yes |
UNSUPPORTED_ACTUAL_PRICE_SOURCE_TYPE | The specified source type for actual price is unsupported. | Verify the source type of Actual Price setting. | Other | Red | Yes | Yes |
UNSUPPORTED_PARENT_SOURCE_TYPE | The source type of the specified parent price list to be referred is unsupported. | Verify the Source Type in dependency configuration table. | Configuration | Red | Yes | Yes |
VALIDITY_PERIODS_OVERLAPPED | Validity periods overlap. | Check validity period columns data. | Data | Red | Yes | Yes |
Â