WS_EXECUTE – Función para ejecutar un programa desde SAP

WS_EXECUTE es una función que nos permite ejecutar cualquier programa instalado en nuestra computadora desde SAP. Cabe aclarar que aquel programa que queramos correr debe permitir parámetros MS-DOS.

En el siguiente ejemplo voy a mostrar como zippear (comprimir) dos archivos desde SAP. Como resultado obtendremos un archivo WinZip que contendrá dos archivos de texto.
Comprimiremos el archivo 1.txt y el archivo 2.txt, y el resultado será el archivodestino.zip.

Parámetros que acepta WinZip desde MS-DOS:http://www.memecode.com/docs/winzip.html

Rutas de los archivos:

  • C:1.txt
  • C:2.txt
  • C:destino.zip

Código:

CALL FUNCTION ‘WS_EXECUTE’
EXPORTING
* DOCUMENT = ‘ ‘
* CD = ‘ ‘
COMMANDLINE = ‘ -min -a c:destino.zip c:1.txt c:2.txt’
* INFORM = ‘ ‘
PROGRAM = ‘winzip32.exe’
* STAT = ‘ ‘
* WINID = ‘ ‘
* OSMAC_SCRIPT = ‘ ‘
* OSMAC_CREATOR = ‘ ‘
* WIN16_EXT = ‘ ‘
* EXEC_RC = ‘ ‘
* IMPORTING
* RBUFF =
EXCEPTIONS
FRONTEND_ERROR = 1
NO_BATCH = 2
PROG_NOT_FOUND = 3
ILLEGAL_OPTION = 4
GUI_REFUSE_EXECUTE = 5
OTHERS = 6 .

IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: