Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 8944

Re: BAPI -Personas 3.0

$
0
0

Hi tamas, Yes I did call bapi_transaction_commit. FUNCTION ZBAPI_ISUSMNOTIF_USERSTATUSSET. *"---------------------------------------------------------------------- *"*"Local Interface: *"  IMPORTING *"    VALUE(NUMBER) LIKE  VIQMEL-QMNUM *"    VALUE(STATUS) LIKE  BAPI_STATUS STRUCTURE  BAPI_STATUS OPTIONAL *"    VALUE(INACTIVE) LIKE  BAPIFLAG-BAPIFLAG DEFAULT ' ' *"    VALUE(VALUE) LIKE  BAPI_STATUS-INTERN *"  EXPORTING *"    VALUE(RETURN) LIKE  BAPIRET2 STRUCTURE  BAPIRET2 *"----------------------------------------------------------------------   DATA:     l_msg            LIKE sy-msgv1,     l_viqmel        LIKE viqmel,     l_language      TYPE spras, co_msg_service      LIKE sy-msgid , co_msg_error            TYPE emsg_gen-msgty , co_msg_not_existent LIKE sy-msgno ,     l_language_found TYPE spras.   CLEAR return. * --Lock the notification object   CALL FUNCTION 'ENQUEUE_EIQMEL'       EXPORTING             qmnum          = number       EXCEPTIONS             foreign_lock  = 1             system_failure = 2.   IF sy-subrc <> 0.     CALL FUNCTION 'BALW_BAPIRETURN_GET2'         EXPORTING               type  = sy-msgty               cl    = sy-msgid               number = sy-msgno               par1  = sy-msgv1               par2  = sy-msgv2               par3  = sy-msgv3               par4  = sy-msgv4         IMPORTING               return = return.     EXIT.   ENDIF. * --Set the language or convert the ISO-representation   IF NOT status-langu IS INITIAL.     l_language = status-langu.   ELSEIF status-langu_iso IS INITIAL.     l_language = sy-langu.   ELSE.     CALL FUNCTION 'LANGUAGE_CODE_ISO_TO_SAP'         EXPORTING               iso_code  = status-langu_iso         IMPORTING               sap_code  = l_language         EXCEPTIONS               not_found = 1               OTHERS    = 2.     IF sy-subrc <> 0.       CALL FUNCTION 'BALW_BAPIRETURN_GET2'           EXPORTING                 type  = sy-msgty                 cl    = sy-msgid                 number = sy-msgno                 par1  = sy-msgv1                 par2  = sy-msgv2                 par3  = sy-msgv3                 par4  = sy-msgv4           IMPORTING                 return = return.       CALL FUNCTION 'DEQUEUE_EIQMEL'           EXPORTING                 qmnum = number.       EXIT.     ENDIF.   ENDIF. * --Read the notications header line   CALL FUNCTION 'READ_NOTIFICATION'       EXPORTING             qmnum          = number       IMPORTING             iviqmel        = l_viqmel       EXCEPTIONS             invalid_number = 1             OTHERS        = 2.   IF sy-subrc <> 0.     l_msg = number.     CALL FUNCTION 'BALW_BAPIRETURN_GET2'         EXPORTING               type  = co_msg_error               cl    = co_msg_service               number = co_msg_not_existent               par1  = l_msg         IMPORTING               return = return.     CALL FUNCTION 'DEQUEUE_EIQMEL'         EXPORTING               qmnum = number.     EXIT.   ENDIF. * --Authority check for the change of the notification object   CALL FUNCTION 'ISU_NOTIF_AUTHORITY_CHECK'       EXPORTING             mode                  = '02'             x_qmart              = l_viqmel-qmart       EXCEPTIONS             no_permission_s_tcode = 1             no_permission_i_tcode = 2             no_permission_iqmel  = 3             userdata_error        = 4             no_profile            = 5             no_object            = 6             system_error          = 7             OTHERS                = 8.   IF sy-subrc <> 0.     CALL FUNCTION 'BALW_BAPIRETURN_GET2'         EXPORTING               type  = sy-msgty               cl    = sy-msgid               number = sy-msgno               par1  = sy-msgv1               par2  = sy-msgv2               par3  = sy-msgv3               par4  = sy-msgv4         IMPORTING               return = return.     CALL FUNCTION 'DEQUEUE_EIQMEL'         EXPORTING               qmnum = number.     EXIT.   ENDIF. * --Prepare the status buffer   CALL FUNCTION 'STATUS_BUFFER_REFRESH'. * --Convert the external status to an internal represenation   IF NOT status-extern IS INITIAL.     CALL FUNCTION 'STATUS_TEXT_CONVERSION'         EXPORTING               language          = l_language               mode              = 'E'               objnr              = l_viqmel-objnr               txt04              = status-intern         IMPORTING               language_found    = l_language_found               status_number      = VALUE         EXCEPTIONS               insufficient_input = 1               not_found          = 2               object_not_found  = 3               wrong_mode        = 4               OTHERS            = 5.     IF sy-subrc <> 0 OR l_language_found <> l_language.       l_msg = status-extern.       CALL FUNCTION 'BALW_BAPIRETURN_GET2'           EXPORTING                 type  = 'E'                 cl    = 'BS'                 number = '057'                 par1  = l_msg           IMPORTING                 return = return.       CALL FUNCTION 'DEQUEUE_EIQMEL'           EXPORTING                 qmnum = number.       EXIT.     ENDIF.   ENDIF. * --Set the user status   CALL FUNCTION 'STATUS_CHANGE_EXTERN'       EXPORTING             client              = l_viqmel-mandt             objnr              = l_viqmel-objnr             user_status        = VALUE             set_inact          = inactive       EXCEPTIONS             object_not_found    = 1             status_inconsistent = 2             status_not_allowed  = 3             OTHERS              = 4.   IF sy-subrc <> 0.     CALL FUNCTION 'BALW_BAPIRETURN_GET2'         EXPORTING               type  = sy-msgty               cl    = sy-msgid               number = sy-msgno               par1  = sy-msgv1               par2  = sy-msgv2               par3  = sy-msgv3               par4  = sy-msgv4         IMPORTING               return = return. CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' .     CALL FUNCTION 'DEQUEUE_EIQMEL'         EXPORTING               qmnum = number.     EXIT.   ENDIF.   CALL FUNCTION 'STATUS_UPDATE_DIALOG'. CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' .   CALL FUNCTION 'DEQUEUE_EIQMEL'       EXPORTING             qmnum = number. ENDFUNCTION. Best regards, pradeep.


Viewing all articles
Browse latest Browse all 8944

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>