Troubleshooting
Problem
When creating a new PO, after entering a Quantity and a Unit Cost on a POLINE, the following error is displayed:
BMXAA4163E - The specified value XX exceeds the maximum field length for the Quantity field. The maximum length is specified in the Database
This is only happening when the currency used in the PO is different than the one used for the Organization.
Symptom
The error message displayed on the above scenario is misleading as it will show up even if the number in the Quantity field has only two digits.
The POLINE.ORDERQTY attribute has a Length of 15 and a Scale of 2 so there is no reason for the value to exceed the field length.
The POLINE.ORDERQTY attribute has a Length of 15 and a Scale of 2 so there is no reason for the value to exceed the field length.
Cause
The error is actually caused by the value from the Unit Cost field (POLINE.UNITCOST).
When using a currency other than the one set in the Organization, the value from the Unit Cost can exceed the length of the field.
The Unit Cost field has a length of 10 and a scale of 2 by default, therefore the value obtained by multiplying the cost with the currencies conversion factor will exceed the maximum field length.
The Unit Cost field has a length of 10 and a scale of 2 by default, therefore the value obtained by multiplying the cost with the currencies conversion factor will exceed the maximum field length.
Environment
Maximo 7.6
Diagnosing The Problem
Checking the length and scale of the cost related attributes for the PO and POLINE objects in the Database will give the information required related to whether the Unit Cost field can either accommodate or not the values used in the normal daily operations.
Resolving The Problem
In order to increase the cost related attributes length you will need to go to Database Configuration, bring up the PO object and filter for all the attributes containing the "cost" string as shown in the attached image. For each attribute change the length and scale in order to suit the operational business needs considering this formula: (LENGTH - SCALE) = Numbers of digits allowed to the left of the decimal.
Same goes for the POLINE object.
As multiple fields are used in the cost calculation when currency conversion is used, the best practice will be to increase the length to all cost fields of the PO and PO line objects.
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSLKT6","label":"IBM Maximo Asset Management"},"Component":"Purchase Orders","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.6","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]
Was this topic helpful?
Document Information
Modified date:
07 February 2019
UID
ibm10794833