cancel
Showing results for 
Search instead for 
Did you mean: 

Current year record not processing

0 Kudos

here in zappraisal table there are 2 records presents based on the selection screen criteria both record should displayed in report here only one record is showing also i want to know how to fix current financial year from 01.03.2023 to 31.03.2024 in program level in my code pn-begda take 01.01.2023 to endda 31.12.2023. kinldy help me to resolve this issue, i attached my code here

*&---------------------------------------------------------------------*
*& Form get_data
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM get_data.
*&--Read Infotype 0000 to check active pernr in zappraisal table
rp_provide_from_last p0000 space pn-begda pn-endda.
IF pnp-sw-found = 1.
IF p0000-stat2 = 3.
* ls_final-pernr = p0000-pernr.

*---Select corresponding field entries from zappraisal to lt_zapp using pernr
SELECT *
FROM zappraisal
INTO CORRESPONDING FIELDS OF TABLE lt_zapp
WHERE pernr = p0000-pernr
AND begda >= pn-begda
AND endda <= pn-endda.
*----Read internal table using pernr and pass the values to final structure
IF lt_zapp[] IS NOT INITIAL .
LOOP AT lt_zapp WHERE pernr = p0000-pernr
AND begda >= pn-begda
AND endda <= pn-endda.
CLEAR lv_subrc.
READ TABLE lt_zapp INTO ls_zapp WITH KEY pernr = p0000-pernr BINARY SEARCH.
lv_subrc = sy-subrc.
IF sy-subrc = 0.
ls_final-pernr = ls_zapp-pernr.
ls_final-begda = ls_zapp-begda.
ls_final-endda = ls_zapp-endda.
ls_final-objid = ls_zapp-objid.
ls_final-meeting_mid = ls_zapp-meeting_mid.
ls_final-meeting = ls_zapp-meeting.
ENDIF.
ENDLOOP.
ENDIF.
*&--Read Infotype 0001 to get required field values and pass it to final structure
rp_provide_from_last p0001 space pn-begda pn-endda.
ls_final-ename = p0001-ename.
ls_final-persg = p0001-persg.
ls_final-persk = p0001-persk.
ls_final-werks = p0001-werks.
ls_final-btrtl = p0001-btrtl.
*---Select using organisation id(orgeh) to get org text(orgtx) in t257x
SELECT SINGLE stext FROM hrp1000 INTO ls_final-orgtx
WHERE langu = 'EN'
AND objid = ls_zapp-orgeh
AND begda <= sy-datum
AND endda >= sy-datum.
CLEAR ls_zapp-orgeh.
*---Select using position id (plstx) to get position text(plstx) in t258t
SELECT SINGLE stext FROM hrp1000 INTO ls_final-plstx
WHERE langu = 'EN'
AND objid = ls_zapp-plans
AND begda <= sy-datum
AND endda >= sy-datum.
CLEAR ls_zapp-plans.
*---Get the name of manager using the PERNR from ZAPPRAISAL
PERFORM get_pernr_name USING ls_zapp-manager
CHANGING ls_final-manager.
CLEAR ls_zapp-manager.
*--- Get the name of appraiser using the PERNR from ZAPPRAISAL
PERFORM get_pernr_name USING ls_zapp-appraiser
CHANGING ls_final-appraiser.
CLEAR ls_zapp-appraiser.
*---Select using job id(stell) to job abbrevation(short) in hrp1000
SELECT SINGLE short FROM hrp1000 INTO ls_final-short
WHERE otype = 'C'
AND langu = 'EN'
AND objid = p0001-stell
AND begda <= sy-datum
AND endda >= sy-datum.
*---Select using job id(stell) to get job name(stext) in hrp1000
SELECT SINGLE stext FROM hrp1000 INTO ls_final-stext
WHERE otype = 'C'
AND langu = 'EN'
AND objid = p0001-stell
AND begda <= sy-datum
AND endda >= sy-datum.
*---Select ty_ztxt field entries from zappraisal_text and pass to lt_zapp using objid
IF lt_zapp[] IS NOT INITIAL.
SELECT *
FROM zappraisal_text
INTO CORRESPONDING FIELDS OF TABLE lt_ztxt
FOR ALL ENTRIES IN lt_zapp
WHERE objid = lt_zapp-objid.
ENDIF.
*---Get obj data for agg_obj and per_obj using seqnr and pass it to final structure
PERFORM get_objective_data USING '1' lt_ztxt[] CHANGING ls_final.
PERFORM get_objective_data USING '2' lt_ztxt[] CHANGING ls_final.
PERFORM get_objective_data USING '3' lt_ztxt[] CHANGING ls_final.
PERFORM get_objective_data USING '4' lt_ztxt[] CHANGING ls_final.
PERFORM get_objective_data USING '5' lt_ztxt[] CHANGING ls_final.
PERFORM get_objective_data USING '6' lt_ztxt[] CHANGING ls_final.
PERFORM get_objective_data USING '7' lt_ztxt[] CHANGING ls_final.
PERFORM get_objective_data USING '8' lt_ztxt[] CHANGING ls_final.
PERFORM get_objective_data USING '9' lt_ztxt[] CHANGING ls_final.
PERFORM get_objective_data USING '10' lt_ztxt[] CHANGING ls_final.
PERFORM get_objective_data USING '11' lt_ztxt[] CHANGING ls_final.
*---Get get comment for other object using component & field value and pass it to final structure
PERFORM get_comment USING 'OVERALL' 'INDIVIDUAL' lt_ztxt[]
CHANGING ls_final-ape_com.
PERFORM get_comment USING 'OVERALL' 'APP_COM' lt_ztxt[]
CHANGING ls_final-apr_com.
PERFORM get_comment USING 'FJ_COMP' 'ASPIRATION' lt_ztxt[]
CHANGING ls_final-fuj_asp.
PERFORM get_comment USING 'FJ_COMP' 'TRUST' lt_ztxt[]
CHANGING ls_final-fuj_tru.
PERFORM get_comment USING 'FJ_COMP' 'EMPATHY' lt_ztxt[]
CHANGING ls_final-fuj_emp.
PERFORM get_comment USING 'FJ_COMP' 'SUMMARISE' lt_ztxt[]
CHANGING ls_final-fuj_cmt.
PERFORM get_comment USING 'CAREER' 'STRENGTH' lt_ztxt[]
CHANGING ls_final-per_sum1.
PERFORM get_comment USING 'CAREER' 'STRENGTH_MGR' lt_ztxt[]
CHANGING ls_final-per_apr1.
PERFORM get_comment USING 'CAREER' 'DIFFER' lt_ztxt[]
CHANGING ls_final-per_sum2.
PERFORM get_comment USING 'CAREER' 'DIFFER_MSG' lt_ztxt[]
CHANGING ls_final-per_apr2.
PERFORM get_comment USING 'CAREER' 'ASPIRE' lt_ztxt[]
CHANGING ls_final-per_sum3.
PERFORM get_comment USING 'CAREER' 'ASPIRE_MGR' lt_ztxt[]
CHANGING ls_final-per_apr3.
CLEAR lt_ztxt[].
*---Get status based on status value from zappraisal internal table
PERFORM app_status.
* CLEAR: ls_final-status.
ls_final-overall = ls_zapp-overall.
if sy-subrc = 0.
APPEND ls_final TO lt_final.
endif.
CLEAR ls_final.

ENDIF.
ENDIF.
ENDFORM. "get_data

Accepted Solutions (0)

Answers (0)