Modus ponendo ponens

Validar si documento de venta esta bloqueado por otro usuario con ABAP en SAP-SD

En ocasiones para cargas masivas o call transactions se requiere validar que otro usuario no este utilizando un documento de ventas, esto con el fin de evitar errores en el procesamiento. Esta validacion se puede realizar fácilmente con dos funciones SD_SALES_DOCUMENT_ENQUEUE y DEQUEUE_EVVBAKE como se puede observar en el siguiente ejemplo:

CALL FUNCTION ‘SD_SALES_DOCUMENT_ENQUEUE’ “ REVISAMOS QUE EL DOCUMENTO DE 

VENTAS NO SE ENCUENTRE BLOQUEADO INTENTANDO BLOQUEARLO
        EXPORTING
          VBELN          = <DOCUMENTO_DE_VENTA>
        EXCEPTIONS
          FOREIGN_LOCK   = 1
          SYSTEM_FAILURE = 2
          NO_CHANGE      = 3
          OTHERS         4.
      IF SY-SUBRC <> 0. “ SI ESTA BLOQUEADO LEVANTAMOS UNA BANDERA PARA USO FUTURO
        F_ENQUEUE = ‘X’.
        ELSE. “ SI NO ESTA BLOQUEADO LIBERAMOS EL DOC. DE LA FUNCIÓN ANTERIOR
          CALL FUNCTION ‘DEQUEUE_EVVBAKE’
           EXPORTING
             VBELN           =
<DOCUMENTO_DE_VENTA>
             .
      ENDIF.

Saludos.


  1. zir3 posted this
To Tumblr, Love PixelUnion