Experts,
I am trying to use collect statement to get the sum of certain fields, but am only able to read the last record row instead of summing all the above lines.
Appending is my code, please guide me where am I wrong...
loopat it_fy into wa_fy.
*if count > 0 .
*
* WAIVED_PRIN = wa_final-WAIVED_PRIN + WA_ZCATR_DVBAR_VW-MIGPR.
* WAIVED_LPSC = wa_final-WAIVED_LPSC + WA_ZCATR_DVBAR_VW-MIGLP.
* WAIVEDACCRLP = wa_final-WAIVEDACCRLP + WA_ZCATR_DVBAR_VW-MIGAL.
* WAIVED_NTA_P = wa_final-WAIVED_NTA_P + WA_ZCATR_DVBAR_VW-MIGPRN.
* WAIVED_NTA_L = wa_final-WAIVED_NTA_L + WA_ZCATR_DVBAR_VW-MIGLPN.
* WAIVED_NTACRLP = wa_final-WAIVED_NTACRLP + WA_ZCATR_DVBAR_VW-MIGALN.
* RECOVERABLE_PRIN = wa_final-RECOVERABLE_PRIN + WA_ZCATR_DVBAR_VW-MIGPR.
* RECOVERABLE_LPSC = wa_final-RECOVERABLE_LPSC + WA_ZCATR_DVBAR_VW-MIGLP.
* RECOVERABLE_ACCRLP = wa_final-RECOVERABLE_ACCRLP + WA_ZCATR_DVBAR_VW-MIGAL.
* RECOVERABLE_NTA_P = wa_final-RECOVERABLE_NTA_P + WA_ZCATR_DVBAR_VW-MIGPRN.
* RECOVERABLE_NTA_L = wa_final-RECOVERABLE_NTA_L + WA_ZCATR_DVBAR_VW-MIGLPN.
* RECOVERABLE_NTACRLP = wa_final-RECOVERABLE_NTACRLP + WA_ZCATR_DVBAR_VW-MIGALN.
*
*
* ENDIF.
COLLECT wa_fy INTO it_fy .
endloop.
LOOPAT IT_ZCATR_DVBAR INTO WA_ZCATR_DVBAR.
WA_FINAL-VKONT = WA_ZCATR_DVBAR-VKONT.
WA_FINAL-DVBREF = WA_ZCATR_DVBAR-DVBDOC.
WA_FINAL-DVBST = WA_ZCATR_DVBAR-DVBST.
WA_FINAL-VKONA = WA_ZCATR_DVBAR-VKONA.
WA_FINAL-OLDKNO = WA_ZCATR_DVBAR-OLDKNO.
WA_FINAL-ERDAT = WA_ZCATR_DVBAR-ERDAT.
WA_FINAL-LEGAL = WA_ZCATR_DVBAR-LEGAL.
WA_FINAL-CSFNO = WA_ZCATR_DVBAR-CSFNO.
WA_FINAL-ORGPR = WA_ZCATR_DVBAR-ORGPR.
WA_FINAL-ORGLP = WA_ZCATR_DVBAR-ORGLP.
WA_FINAL-ORGPRN = WA_ZCATR_DVBAR-ORGPRN.
WA_FINAL-ORGLPN = WA_ZCATR_DVBAR-ORGLPN.
WA_FINAL-MIGPR = WA_ZCATR_DVBAR-MIGPR.
WA_FINAL-MIGLP = WA_ZCATR_DVBAR-MIGLP.
WA_FINAL-MIGAL = WA_ZCATR_DVBAR-MIGAL.
WA_FINAL-MIGPRN = WA_ZCATR_DVBAR-MIGPRN.
WA_FINAL-MIGLPN = WA_ZCATR_DVBAR-MIGLPN.
WA_FINAL-MIGALN = WA_ZCATR_DVBAR-MIGALN.
READTABLE IT_FKKVKP INTO WA_FKKVKP WITHKEY VKONT = WA_ZCATR_DVBAR-VKONT BINARYSEARCH.
IF SY-SUBRC = 0.
WA_FINAL-GPART = WA_FKKVKP-GPART.
ENDIF.
READTABLE IT_EKUN INTO WA_EKUN WITHKEY PARTNER = WA_FKKVKP-GPART BINARYSEARCH.
IF SY-SUBRC = 0.
WA_FINAL-CLASSIFICATION = WA_EKUN-CLASSIFICATION.
ENDIF.
COUNT = 0.
LOOPAT IT_ZCATR_DVBAR_VW INTO WA_ZCATR_DVBAR_VW WHERE DVBREF = WA_ZCATR_DVBAR-DVBDOC.
COUNT = COUNT + 1 .
IF SY-SUBRC = 0.
IF WA_ZCATR_DVBAR_VW-DVBST eq'W' .
wa_final-WAIVED_PRIN = WA_ZCATR_DVBAR_VW-MIGPR.
wa_final-WAIVED_LPSC = WA_ZCATR_DVBAR_VW-MIGLP.
wa_final-WAIVEDACCRLP = WA_ZCATR_DVBAR_VW-MIGAL.
wa_final-WAIVED_NTA_P = WA_ZCATR_DVBAR_VW-MIGPRN.
wa_final-WAIVED_NTA_L = WA_ZCATR_DVBAR_VW-MIGLPN.
wa_final-WAIVED_NTACRLP = WA_ZCATR_DVBAR_VW-MIGALN.
ELSEIF WA_ZCATR_DVBAR_VW-DVBST EQ'R'.
wa_final-RECOVERABLE_PRIN = WA_ZCATR_DVBAR_VW-MIGPR.
wa_final-RECOVERABLE_LPSC = WA_ZCATR_DVBAR_VW-MIGLP.
wa_final-RECOVERABLE_ACCRLP = WA_ZCATR_DVBAR_VW-MIGAL.
wa_final-RECOVERABLE_NTA_P = WA_ZCATR_DVBAR_VW-MIGPRN.
wa_final-RECOVERABLE_NTA_L = WA_ZCATR_DVBAR_VW-MIGLPN.
wa_final-RECOVERABLE_NTACRLP = WA_ZCATR_DVBAR_VW-MIGALN.
ENDIF.
ENDIF.
ENDLOOP.
readtable it_fy into wa_fy WITHKEY DVBREF = WA_ZCATR_DVBAR-DVBDOC .
if sy-subrc = 0.
wa_final-WAIVED_PRIN = wa_fy-WAIVED_PRIN.
wa_final-WAIVED_LPSC = wa_fy-WAIVED_LPSC.
wa_final-WAIVEDACCRLP = wa_fy-WAIVEDACCRLP.
wa_final-WAIVED_NTA_P = wa_fy-WAIVED_NTA_P.
wa_final-WAIVED_NTA_L = wa_fy-WAIVED_NTA_L.
wa_final-WAIVED_NTACRLP = wa_fy-WAIVED_NTACRLP .
wa_final-RECOVERABLE_PRIN = wa_fy-RECOVERABLE_PRIN.
wa_final-RECOVERABLE_LPSC = wa_fy-RECOVERABLE_LPSC.
wa_final-RECOVERABLE_ACCRLP = wa_fy-RECOVERABLE_ACCRLP.
wa_final-RECOVERABLE_NTA_P = wa_fy-RECOVERABLE_NTA_P.
wa_final-RECOVERABLE_NTA_L = wa_fy-RECOVERABLE_NTA_L.
wa_final-RECOVERABLE_NTACRLP = wa_fy-RECOVERABLE_NTACRLP.
ENDIF.
WA_FINAL-CLOSING_PRIN = WA_FINAL-MIGPR - WAIVED_PRIN - RECOVERABLE_PRIN .
WA_FINAL-CLOSING_LPSC = WA_FINAL-MIGLP - WAIVED_LPSC - RECOVERABLE_LPSC.
WA_FINAL-CLOSING_ACCRLP = WA_FINAL-MIGAL - WAIVEDACCRLP - RECOVERABLE_ACCRLP.
WA_FINAL-CLOSING_NTA_P = WA_FINAL-MIGPRN - WAIVED_NTA_P - RECOVERABLE_NTA_P.
WA_FINAL-CLOSING_NTA_L = WA_FINAL-MIGLPN - WAIVED_NTA_L - RECOVERABLE_NTA_L.
WA_FINAL-CLOSING_NTACRLP = WA_FINAL-MIGALN - WAIVED_NTACRLP - RECOVERABLE_NTACRLP.
APPEND wa_fy to it_fy.
APPEND WA_FINAL TO IT_FINAL.
CLEAR: WA_ZCATR_DVBAR, WA_ZCATR_DVBAR_VW, WA_FINAL, WA_FKKVKP, wa_ekun.
ENDLOOP.
ENDFORM. " GET_DATA