cancel
Showing results for 
Search instead for 
Did you mean: 

Error returning creation data in RAP managed with save unmanaged

0 Kudos
206

Hey guys

I'm building a study project with RAP, but I stopped at one point and can't move forward. I'm using the managed scenario with unmanaged save.

The screen is a normal screen without any changes.

bruno_cssilva_dev_0-1739592732615.png

When clicking save, it executes my save_modified method.

  METHOD save_modified.

    DATA: lv_msg_error TYPE string,
          lv_bookid    TYPE sbook-bookid.

    IF create-marcacaovoo[] IS NOT INITIAL.

      DATA: ls_sbook TYPE sbook.

      READ TABLE create-marcacaovoo INTO DATA(ls_voo) INDEX 1.

      ls_sbook-carrid    = ls_voo-carrid.
      ls_sbook-connid    = ls_voo-connid.
      ls_sbook-fldate    = ls_voo-fldate.
      ls_sbook-customid  = ls_voo-customid.
      ls_sbook-agencynum = ls_voo-agencynum.
      ls_sbook-class     = ls_voo-class.

      CALL FUNCTION 'ZFH_MF_MARCAR_VOO'
        STARTING NEW TASK 'UPDATE'
        EXPORTING
          is_voo = ls_sbook.

      WAIT UP TO 1 SECONDS.

      SELECT SINGLE message
       FROM zfh_t_log
       INTO lv_msg_error
       WHERE carrid = ls_sbook-carrid
       AND   connid = ls_sbook-connid
       AND   fldate = ls_sbook-fldate
       AND   customid = ls_sbook-customid
       AND   data = sy-datum.

      IF lv_msg_error IS NOT INITIAL.

        APPEND VALUE #( %tky     = ls_voo-%key
              %msg     = new_message_with_text(
              severity = if_abap_behv_message=>severity-error
              text     = lv_msg_error
           ) ) TO reported-marcacaovoo.

      ELSE.

        SELECT bookid
            FROM sbook
            INTO lv_bookid
            WHERE carrid = ls_sbook-carrid
            AND   connid = ls_sbook-connid
            AND   fldate = ls_sbook-fldate
            AND   customid = ls_sbook-customid
            AND   class = ls_sbook-class
            AND   order_date = sy-datum
            ORDER BY bookid ASCENDING.
        ENDSELECT.

        APPEND VALUE #( %msg = new_message( id = '00'
                  number = '398'
                  v1 = |Marcação de Vôo { lv_bookid } criada!|
                  severity =
                  if_abap_behv_message=>severity-success )
                  %key-carrid = ls_voo-carrid
                  %key-connid = ls_voo-connid
                  %key-fldate = ls_voo-fldate
                  %key-bookid = lv_bookid
                  %key-customid = ls_voo-customid
                  carrid = ls_voo-carrid
                  connid = ls_voo-connid
                  fldate = ls_voo-fldate
                  bookid = lv_bookid
                  customid = ls_voo-customid

                   )
                  TO reported-marcacaovoo.

      ENDIF.

    ENDIF.

  ENDMETHOD.

When successful, it continues on the Object Page screen but only with the data I entered on the screen.

bruno_cssilva_dev_1-1739593055565.png

bruno_cssilva_dev_2-1739593111304.png

When you go back to the List Report and select the created line again, it comes with the correct data.

Only after creation does it not bring the data back.

Has anyone gone through something similar?

 



Accepted Solutions (0)

Answers (0)