Populate fields in infocube
Hi geniuses,
Please help:)
Is it possible to populate fields in infocube in the start routine?
I am trying to load data from ODS to Infocube. They are 1:1 mapping, but there a few fields are not populated in ODS like occupy_percentage_low. Now I am asked to calculate those values in start routine and send the values to coresponding fields in the infocube.
I tried to use the following code, but there is no values in the cube after I load data to cube.
loop at data_package assigning <fs>.I
IF <fs>-/BIC/occupy / <fs>-/BIC/Totalavailable < '0.10'.
DATA_PACKAGE-/BIC/OCCU_LOW = 'Y'.
CONTINUE.
ENDIF.
ENDLOOP.
I also tried to use <fs>-/BIC/OCCU_LOW = 'Y'. In debugging mode, there is no value for <fs>-/BIC/OCCU_LOW either. Really lost!
Thanks!
Lin
Message was edited by: Lin Cong
Edwin Harpino replied
hi Lin,
yes, you are right
it_data_package-/bic/occupy_percentage_low = 'Y'
if you have multiple calculation,
you can modify data_package later,
put 'modify data_package from it_data_package index l_tabix.' after all calculation, like
read table ...
if sy-subrc = 0.
...
it_data_package-/bic/occupy_percentage_low = 'Y'
it_data_package-other infoobject = ' .... '
..
modify data_package from it_data_package index l_tabix.
endif.
or if read from other table or other calculation
if ...
endif.
if ...
endif.
modify data_package from it_data_package index l_tabix.
don't worry, if we modify data_package, and no value change, it will have just the same previous value as we have move data_package to it_data_package and we modifty from it.
hope this clears your doubt.