I shared the configuration settings for Quantity Conversion and in this one, I will try to give some technical information about Quantity Conversion Function modules, Enhancements and tables.
If you want to set up a Custom Formula for your quantity conversion, you can develop your own logic but the calling parameters should match the example FM given by SAP – OIB_QCI_ASPHALT_VCF. You can see the FM has only one table as parameter – T_OIB_A10. In this table, all the additional parameters of the material are recorded for example – Base Density, Test Density, Std Temperature etc. The Volume Correction Parameter – VCF is also one of the entries in this table. VCF is the parameter which influences the volume correction.
SAP gives two additional tables for recording the additional parameters in any transactions and they are –o1 and -o2 – for example, we will be taking MSEGo1 and MSEGo2 for our discussion. MSEGo1 records the additional parameters for the material – and it is the same information which is passed to T_OIB_A10 (the table parameter which is used the custom function module). So this table is used to record density, temperature, vapour pressure etc. These parameters are used for calculating the volume at standard temperature and pressure. The second table – MSEGo2 keeps the quantities in all alternate UoM set in the system.
If you want to add any additional parameter due to client requirement, you can extend using the structure – OIBQCICUST. If you extend this structure then additional parameters will be available in all o1 tables. In order to populate the customer enhanced parameter, you need to extend Badi – OIB_QCI_CUST_PARAM, Method – MOVE_CUST_PAR_TO_RESULT.
Although SAP calculates quantities in all the alternate units but if you need to do add any logic for adjusting the quantities, you need to extend the Badi – OIB_QCI_DIM1_TO_DIM2. This Badi is filter dependent so please take care.