안녕하세요 요즘 날씨가 쌀쌀한데 건강 챙기시구요^^

 

다름이 아니라 'HR_INFOTYPE_OPERATION' 펑션을 이용해서 기존의 데이타가 있다면 삭제하고 새로운 데이타를 넣는 로지을 하려구 하는데 날짜는 들어 간거 같은데 기간에 저장된 데이타가 없다고 나오더라구요.. 혹시 저 펑션을 이용해서 기존데이타를 삭제는 어떻게 하나요? 

 

기존의 데이타가 있으면 가지고 오는 로직

  <style type="text/css"> SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L1S52 { color: #0000FF; } </style> SELECT * FROM PA0812
      INTO CORRESPONDING FIELDS OF TABLE LT_RESULT_1
      WHERE PERNR = I_PERNR
           AND BEGDA <= GV_ENDDA
           AND ENDDA >= GV_BEGDA
           AND SUBTY = I_SUBTY.

데이타가 있다면 지우도록 하는 로직.

  <style type="text/css"> SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L1S31 { font-style: italic; color: #808080; } .L1S33 { color: #4DA619; } .L1S52 { color: #0000FF; } </style>  IF LT_RESULT_1[] IS NOT INITIAL.
      LOOP AT LT_RESULT_1.
        LT_RESULT_1-INFTY = '0812'.
        LT_RESULT_1-UNAME = SY-UNAME.
        LT_RESULT_1-AEDTM = SY-DATUM.
        lt_result_1-subty = i_subty.
        GV_OPER = 'DEL'.
        CALL FUNCTION 'HR_INFOTYPE_OPERATION'
          EXPORTING
            INFTY         = LT_RESULT_1-INFTY
            NUMBER        = LT_RESULT_1-PERNR
            SUBTYPE       = LT_RESULT_1-SUBTY
            VALIDITYEND   = LT_RESULT_1-ENDDA
            VALIDITYBEGIN = LT_RESULT_1-BEGDA
            RECORD        = LT_RESULT_1
            OPERATION     = GV_OPER
*           DIALOG_MODE   = '2'
            NOCOMMIT      = 'X'
          IMPORTING
            RETURN        = RETURN1.

에러메세지는 009지정된 기간에 0812에 대해 저장된 데이타가 없습니다.

이렇게 나오구요 lt_result_1에는 데이터가 들어 있구요..

초보자라 많이 서툴지만 혹시 아신다면 부탁좀 드리겠습니다.^^