Advertisement
Guest User

Untitled

a guest
Nov 23rd, 2016
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ABAP 1.91 KB | None | 0 0
  1. DATA lv_date TYPE sy-datum.
  2.  
  3.    DATA p_time TYPE T5A4A-DLYDY.
  4.    DATA lt_plko TYPE STANDARD TABLE OF plko.
  5.    DATA ls_plko LIKE LINE OF lt_plko.
  6.    DATA ls_plko_mem LIKE LINE OF lt_plko.
  7.    TYPES: BEGIN OF lty_chn_temp,
  8.      plnnr TYPE plnnr,
  9.      plnal TYPE plnal,
  10.      aennr TYPE aennr,
  11.      datuv TYPE datuv,
  12.      datub TYPE datub,
  13.      END OF lty_chn_temp.
  14.    DATA lt_chn_temp TYPE STANDARD TABLE OF lty_chn_temp.
  15.    DATA ls_chn_temp LIKE LINE OF lt_chn_temp.
  16.    DATA lv_idat TYPE sy-datum.
  17.    DATA lv_odat TYPE sy-datum.
  18.    lv_date = sy-datum.
  19.    p_time = 68.
  20.  
  21.    CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
  22.      EXPORTING
  23.        DATE            = sy-datum
  24.        DAYS            = p_time
  25.        MONTHS          = 0
  26. *      SIGNUM          = '+'
  27.        YEARS           = 0
  28.      IMPORTING
  29.        CALC_DATE       = lv_date
  30.              .
  31.  
  32.     SELECT * FROM PLKO INTO TABLE LT_PLKO WHERE aennr NE ' ' AND datuv LE lv_date AND plnty = 2.
  33.  
  34.     SORT lt_plko BY PLNNR PLNAL DATUV.
  35.  
  36.     LOOP AT lt_plko INTO ls_plko.
  37.       IF ls_plko_mem IS NOT INITIAL.
  38.         IF ls_plko_mem-plnnr = ls_plko-plnnr AND ls_plko_mem-plnal = ls_plko-plnal.
  39.           CLEAR ls_chn_temp.
  40.           ls_chn_temp-plnnr = ls_plko_mem-plnnr.
  41.           ls_chn_temp-plnal = ls_plko_mem-plnal.
  42.           ls_chn_temp-aennr = ls_plko_mem-aennr.
  43.           ls_chn_temp-datuv = ls_plko_mem-datuv.
  44.           lv_odat = ls_plko-datuv - 1.
  45.           ls_chn_temp-datub = lv_odat.
  46.           APPEND ls_chn_temp TO lt_chn_temp.
  47.         ELSE.
  48.           CLEAR ls_chn_temp.
  49.           ls_chn_temp-plnnr = ls_plko_mem-plnnr.
  50.           ls_chn_temp-plnal = ls_plko_mem-plnal.
  51.           ls_chn_temp-aennr = ls_plko_mem-aennr.
  52.           ls_chn_temp-datuv = ls_plko_mem-datuv.
  53.           ls_chn_temp-datub = '31.12.9999'.
  54.           APPEND ls_chn_temp TO lt_chn_temp.
  55.         ENDIF.
  56.       ENDIF.
  57.       CLEAR ls_plko_mem.
  58.       ls_plko_mem = ls_plko.
  59.     ENDLOOP.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement