Make your own free website on Tripod.com
 

SAP Basis Components, Functional and ABAP Programming Books

Run UNIX script from SAP ABAP

Look at SM69, SM49 and

Function SXPG_COMMAND_EXECUTE

e.g. SM69
Press F5 or click Change button
Press F6 or click Create

Fill in the following parameter :-

Command name                                        - the unix scripts file name e.g. ZABAPFTP
Operating system command                       - e.g. sh
Parameters for operating system command - e.g. /sap_production/usr/sap/trans/data/zabapftp.sh

REPORT  ZABAPFTP.

data : t_btcxpm      like btcxpm occurs 0,
         p_addparam like sxpgcolist-parameters,
         rep_date       like sy-datum,
         t_date           like SXPGCOLIST-PARAMETERS.

rep_date = sy-datum - 1.
t_date = rep_date.

*p_addparam = '/sap_production/usr/sap/trans/data/zabapftp.sh'.

refresh t_btcxpm. clear t_btcxpm.

call function 'SXPG_CALL_SYSTEM'
     EXPORTING
          commandname                = 'ZABAPFTP'
          additional_parameters      = t_date
     TABLES
          exec_protocol              = t_btcxpm
     EXCEPTIONS
          no_permission              = 1
          command_not_found          = 2
          parameters_too_long        = 3
          security_risk              = 4
          wrong_check_call_interface = 5
          program_start_error        = 6
          program_termination_error  = 7
          x_error                    = 8
          parameter_expected         = 9
          too_many_parameters        = 10
          illegal_command            = 11
          others                     = 12.

if sy-subrc ne 0.
   write:/ 'Error in ZABAPFTP ', sy-subrc.
endif.

or

You can execute an operating system command in the OPEN DATASET statement using the FILTER addition:

The following example works under UNIX:

DATA DSN(20) VALUE '/usr/test.Z'.

OPEN DATASET DSN FOR OUTPUT FILTER 'compress'.

OPEN DATASET DSN FOR INPUT FILTER 'uncompress'.

The first OPEN statement opens the file /usr/test.Z so that the displayed data can be read into it in compressed form.

The second OPEN statement opens the file /usr/test.Z so that the data is decompressed when it is read from the file.

Back to Previous

Return to SAP Hints and Tips on Configuration and ABAP/4 Programming