Hello everyone , i am trying to transpose masterdata records from ROWS to Column and i have googled and searched SDN but didn't get much help even went through How to transpose Master data records from Row to Column but is not helping me much because the document only coded single values my requirement includes both single values and multiple values and converting FLTP for different characterstics to different decimal places, My problem is that after coding and run my load i do not get all the values in all the fields i only get values in one field and in the first code please see Attached below and help me correct my code to be able to populate data in all my fields an d if you have something else for me to try please do not hesitate to suggest it
.
DATA: it_TES_D01 TYPE TABLE OF /BIC/AZTES_D0100,
wa_TES_D01 LIKE LINE OF it_ZTES_D01,
q_ATFLV TYPE p DECIMALS 0,
m_ATFLV TYPE P DECIMALS 1,
g_ATFLV TYPE P DECIMALS 2,
a_ATFLV TYPE P DECIMALS 3.
*** Variables
DATA: v_ZOUTP2 TYPE /BIC/OIZOUTP2,
v_ZATEMP TYPE /BIC/OIZATEMP,
v_ZLOAD TYPE /BIC/OIZLOAD,
v_ZVOL2 TYPE /BIC/OIZVOL2,
V_ZVOL3 TYPE /BIC/OIZVOL4,
V_ZVOL4 TYPE /BIC/OIZVOL4,
V_ZSFCT TYPE /BIC/OIZSFCT,
V_ZPHAS TYPE /BIC/OIZPHAS.
*** ZTES_D01 is getting data from datasource ZTESC_ATTR.
CLEAR it_ZTES_D01[].
SELECT * FROM /BIC/AZTES_D0100 INTO TABLE it_TES_D01
FOR ALL ENTRIES IN RESULT_PACKAGE
WHERE /bic/ZTESDSO = RESULT_PACKAGE-/BIC/ZTEST.
SORT it_ZTES_D01 ASCENDING BY /bic/ZTESDSO /BIC/ZATNAM.
*** Loop at RESULT_PACKAGE.
LOOP AT RESULT_PACKAGE ASSIGNING <RESULT_FIELDS>.
CLEAR wa_ZTES_D01.
CLEAR v_ZOUTP2.
CLEAR v_ZATEMP.
CLEAR v_ZELOAD.
CLEAR v_ZVOL2.
CLEAR V_ZVOL3.
CLEAR V_ZVOL4.
CLEAR V_ZSFCT.
CLEAR V_ZPHAS.
*** Loop at Work Area.
LOOP AT it_ZTES_D01 INTO wa_ZTES_D01 WHERE
/BIC/ZTESDSO = <RESULT_FIELDS>-/BIC/ZTEST .
*** Get respective Char value based on Char Case
IF wa_ZTES_D01-/bic/ZATNAM = 'Z01_OUTPUT' AND wa_ZTES_D01-/bic/ZATZHL =
'002' .
a_ATFLV = wa_ZTES_D01-/bic/ZATFLV.
v_ZOUTP2 = a_ATFLV.
<RESULT_FIELDS>-/BIC/ZOUTP2 = v_ZOUTP2.
IF wa_ZTES_D01-/bic/ZATNAM = 'Z01_AMBIENT_TEMPERATURE' AND
wa_ZTES_D01-/bic/ZATZHL = '001' .
Q_ATFLV = wa_ZTES_D01-/bic/ZATFLV.
v_ZATEMP = Q_ATFLV.
<RESULT_FIELDS>-/BIC/ZATEMP = v_ZAMBTEMP.
IF wa_ZTES_D01-/bic/ZATNAM = 'Z01_EFFICIENCY_100_LOAD' AND
wa_ZTES_D01-/bic/ZATZHL = '001' .
m_ATFLV = wa_ZTES_D01-/bic/ZATFLV.
v_ZELOAD = m_ATFLV.
<RESULT_FIELDS>-/BIC/ZELOAD = v_ZELOAD.
IF wa_ZTES_D01-/bic/ZATNAM = 'Z01_VOLTAGE' AND wa_ZTES_D01-/bic/ZATZHL =
'002' .
q_ATFLV = wa_ZTES_D01-/bic/ZATFLV.
v_ZVOL2 = q_ATFLV.
<RESULT_FIELDS>-/BIC/ZVOL2 = v_ZVOL2.
IF wa_ZTES_D01-/bic/ZATNAM = 'Z01_VOLTAGE' AND wa_ZTES_D01-/bic/ZATZHL =
'003' .
q_ATFLV = wa_ZTES_D01-/bic/ZATFLV.
v_ZVOL3 = q_ATFLV.
<RESULT_FIELDS>-/BIC/ZVOL3 = v_ZVOL3.
IF wa_ZTES_D01-/bic/ZATNAM = 'Z01_VOLTAGE' AND wa_ZTES_D01-/bic/ZATZHL
= '004' .
q_ATFLV = wa_ZTES_D01-/bic/ZATFLV.
v_ZVOL4 = q_ATFLV.
<RESULT_FIELDS>-/BIC/ZVOL4 = v_ZVOL4.
IF wa_ZTES_D01-/bic/ZATNAM = 'Z01_SERVICE_FACTOR' AND
wa_ZTES_D01-/bic/ZATZHL = '001' .
g_ATFLV = wa_ZTES_D01-/bic/ZATFLV.
V_ZSFCT = g_ATFLV.
<RESULT_FIELDS>-/BIC/ZSFCT = V_ZSFCT.
IF wa_ZTES_D01-/bic/ZATNAM = 'Z01_PHASE' AND wa_ZTES_D01-/bic/ZATZHL =
'001' .
0_ATFLV = wa_ZTES_D01-/bic/ZATFLV.
V_ZPHAS = 0_ATFLV.
<RESULT_FIELDS>-/BIC/ZPHAS = V_ZPHAS .
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
ENDLOOP.
Thank you very much!