viernes, 18 de septiembre de 2015

Funcion RFC_READ_TABLE manda error SYSYEM_FAILURE

Para asignar los permisos para ejecutar mediante RFC la funcion RFC_READ_TABLE

Se agrega el objeto de autorizacion 
S_RFC: RFC_TYPE=FUGR, RFC_NAME=SDTX, ACTVT=16

SDTX es el grupo de funciones al que pertenece el RFC


Para dar los permisos de lectura a una tabla Ej. E071



Agregar si hace falta  el objeto de autorización S_TABU_DIS  en actvt 03, dicbercls agregar el valor “SA”
para de esta manera obtendremos los permisos de leer la tabla E070/E071.

El valor SA lo obtenemos de la tabla TDDAT con el nombre de la tabla.


sábado, 4 de julio de 2015

Como renovar la licencia de sap netweaver

1 ir a la pagina
2 ingresar todos los datos necesarios
Necesitas un id debes registrarte en sap para tener uno, es gratis
3 El hardware key, lo obtienes ingresando a tu SAP netweaver con el usuario SAP* y la contraseña minisap
4 una vez completados todos los datos se te envía por correo, es un archivo txt con la licencia
5 desde SAP en la transacción SLICENCE eliminas la licencia anterior e instalas la nueva


Se puede solicitar la renovación de la licencia cuantas veces sea necesario.

miércoles, 28 de enero de 2015

Formas de recordar o relacionar los nombres de las tablas de SAP

La manera fácil de recordar las tabla en sap es:Simplemente hay que tratar de relacionar la terminología de SAP para los objetos de negocio.Todas las tablas de proveedores comienzan con L como ser LFA1, etc..
Todas las tablas de clientes comienzan con K … KNA1, KONV, etc..
Todas las tablas de ventas comienzan con V… VBAK, VBAP, etc..
Todas las tablas de maestros comienzan con T… T001, T001W, etc..
Todas las tablas de bancos comienzan con B.. BKNF, BKPF, etc..
Todas las tablas de compras comienzan con E.. EKKO, EKPO, etc..
Todas las tablas de materiales comienzan con M… MARA, MAKT, MARC, etc..
En ventas, entregas, facturación y compras: Si el nombre de la tabla contiene una K es de cabecera de datos, como VBAK, LIKP, VBRK, EKKO, etc..
Si el nombre de la tabla contiene una P es de posición, como VBAP, LIPS, VBRP, EKPO, etc..

En el módulo de finanzas (FI)… existen solamente 6 tablas importantes…
Pueden ser recordadas por:
Si el nombre de la tabla contiene una I, es una posición abierta. Ej: BSID
Si el nombre de la tabla contiene una A, es una posición cerrada. Ej: BSAD
Si el nombre de la tabla termina con S, es una cuenta GL. Ej: BSIS – GL maestro de posiciones abiertas, BSAS – GL maestro de posiciones cerradas.
Por otro lado, si el nombre de la tabla termina con una D es de clientes. Y si el nombre de la tabla termina con una K, es de proveedores. Finalmente, la tabla TSTC contiene la lista de todas las transacciones.



Fuente  http://goo.gl/CkTraS

jueves, 8 de agosto de 2013

ABAP Authority check de transaccion

Un ejemplo de Authority Check

 “Antes de ejecutar CALL TRANSACTION, verificar permiso para ejecutar F-43

AUTHORITY-CHECK OBJECT ‘S_TCODE’  
ID ‘TCD’ FIELD ‘F-43’.
IF SY-SUBRC = 0.
        CALL TRANSACTION 'F-43' USING it_bdcdata
                              OPTIONS FROM wa_gh_params
                              MESSAGES INTO it_messtab.

ELSE.
* Enviar mensaje de error por falta de autorización para ejecutar transacción!!!
ENDIF.

ABAP SAP Como pasar un transporte de desarrollo a calidad o Produccion

Como pasar un transporte de desarrollo a calidad

se10

liberar tareas

liberar transporte

desde QAS o PRD

transaccion STMS

Resumen import (camion rojo)

seleccionar sistema QAS o PRD con doble click

flecha verde para transportar ficheros ( en caso de que exista )

seleccionar orden de transporte

importar orden ( camion con cuadro naranja)

seleccionar destino



ABAP Borrar archivos del servidor

Borrar archivos del servidor que se pueden ver mediante AL11


*¿Como borrar el archivo en caso de ser necesario?

      DELETE DATASET v_ruta_f.

    if sy-subrc = 0.
      message e368(00) with 'Archivo borrado'.
    endif.

*atencion v_ruta_f en minusculas

lunes, 14 de enero de 2013

SAP backup de programas Z

Programa para hacer un backup de todos los programas z de SAP


**************************************************************
* Programa : Z_PROGRAMS_DOWNLOAD.                            *
* Módulo   : BC - Basis.                                     *
* Consultor ABAP     : Alvaro Tejada Galindo.                *
* February 14, 2006   12:33:22 PM                            *
**************************************************************

REPORT  Z_DUMMY_ATG NO STANDARD PAGE HEADING.
TABLES TRDIR.
*=============================================================
* VARIABLES
*=============================================================
DATA: FULLNAME(30) TYPE C,
      ONE  LIKE PCFILE-DRIVE,
      TWO  LIKE PCFILE-PATH,
      FILEPATH(128) TYPE C.

DATA: APP_NAME TYPE STRING,
      DDTEXT_NAME TYPE STRING,
      DUMMY TYPE STRING,
      INCLUDE_NAME TYPE STRING.

*=============================================================
* TABLAS INTERNAS
*=============================================================
DATA: BEGIN OF SOURCE_TABLE OCCURS 0,
      LINEA(150) TYPE C.
DATA: END OF SOURCE_TABLE.

DATA: BEGIN OF INCLUDE_TABLE OCCURS 0,
      LINEA(150) TYPE C.
DATA: END OF INCLUDE_TABLE.

DATA: BEGIN OF DYNPRO_TABLE OCCURS 0,
      LINEA(250) TYPE C.
DATA: END OF DYNPRO_TABLE.

DATA: BEGIN OF T_TRDIR OCCURS 0,
      NAME LIKE TRDIR-NAME,
END OF T_TRDIR.

DATA: BEGIN OF T_LOG OCCURS 0,
      ERROR TYPE STRING,
      END OF T_LOG.

DATA: DATA_DDTEXT TYPE STANDARD TABLE OF TEXTPOOL
      WITH HEADER LINE.

*=============================================================
* SELECTION-SCREEN
*=============================================================
SELECTION-SCREEN BEGIN OF BLOCK TEST WITH FRAME.
SELECT-OPTIONS PRGNAME FOR TRDIR-NAME.
PARAMETERS:
           LISTNAME LIKE RLGRAP-FILENAME.

SELECTION-SCREEN END OF BLOCK TEST.

*=============================================================
* AT SELECTION-SCREEN
*=============================================================
AT SELECTION-SCREEN ON VALUE-REQUEST FOR LISTNAME.
  PERFORM GET_FILENAME CHANGING LISTNAME.

*=============================================================
* START-OF-SELECTION
*=============================================================
START-OF-SELECTION.
  PERFORM LOAD_DATA.

  IF NOT T_LOG[] IS INITIAL.
    WRITE: 'Se encontraron los siguientes errores: '.
  ENDIF.

  ULINE.
  SKIP 1.

  LOOP AT T_LOG.
    WRITE:/ T_LOG-ERROR.
  ENDLOOP.

*-----------------------------------------------------------*
*       FORM GET_FILENAME                                   *
*-----------------------------------------------------------*
FORM GET_FILENAME CHANGING LISTNAME.

  CALL FUNCTION 'WS_FILENAME_GET'
    EXPORTING
      DEF_FILENAME     = LISTNAME
      DEF_PATH         = 'C:\downloads\lista'
      MASK             = ',*.*,*.*. '
      MODE             = 'S'
      TITLE            = 'Guardar en'
    IMPORTING
      FILENAME         = LISTNAME
    EXCEPTIONS
      INV_WINSYS       = 1
      NO_BATCH         = 2
      SELECTION_CANCEL = 3
      SELECTION_ERROR  = 4
      OTHERS           = 5.
ENDFORM.                    "GET_FILENAME

*-----------------------------------------------------------*
*       FORM LOAD_DATA                                      *
*-----------------------------------------------------------*
FORM LOAD_DATA.

  DATA: W_FILE LIKE PCFILE-PATH.
  W_FILE = LISTNAME.
  CALL FUNCTION 'PC_SPLIT_COMPLETE_FILENAME'
    EXPORTING
      COMPLETE_FILENAME = W_FILE
    IMPORTING
      DRIVE             = ONE
      PATH              = TWO
    EXCEPTIONS
      INVALID_DRIVE     = 1
      INVALID_EXTENSION = 2
      INVALID_NAME      = 3
      INVALID_PATH      = 4
      OTHERS            = 5.
  CONCATENATE ONE ':' TWO INTO FILEPATH.

  "CONCATENATE PRGNAME   '%' INTO FULLNAME.

  SELECT NAME
  INTO TABLE T_TRDIR
  FROM TRDIR
  WHERE NAME IN PRGNAME.

  IF SY-SUBRC EQ 0.
    PERFORM FILL_LIST.

    PERFORM DOWNLOAD_APPS.
  ENDIF.

ENDFORM.                    "LOAD_DATA

*-----------------------------------------------------------*
*       FORM FILL_LIST                                      *
*-----------------------------------------------------------*
FORM FILL_LIST.
  CALL FUNCTION 'WS_DOWNLOAD'
    EXPORTING
      FILENAME            = FILEPATH
      FILETYPE            = 'ASC'
    TABLES
      DATA_TAB            = T_TRDIR
    EXCEPTIONS
      FILE_OPEN_ERROR     = 1
      FILE_WRITE_ERROR    = 02
      INVALID_FILESIZE    = 03
      INVALID_TABLE_WIDTH = 04
      INVALID_TYPE        = 05
      NO_BATCH            = 06
      UNKNOWN_ERROR       = 07.
ENDFORM.                    "FILL_LIST

*-----------------------------------------------------------*
*       FORM FILL_LIST                                      *
*-----------------------------------------------------------*
FORM FILL_LIST_INCLUDE.

  CONCATENATE FILEPATH 'Includes.txt' INTO LISTNAME.

  CALL FUNCTION 'WS_DOWNLOAD'
    EXPORTING
      FILENAME            = LISTNAME
      FILETYPE            = 'ASC'
      MODE                = 'A'
    TABLES
      DATA_TAB            = INCLUDE_TABLE
    EXCEPTIONS
      FILE_OPEN_ERROR     = 1
      FILE_WRITE_ERROR    = 02
      INVALID_FILESIZE    = 03
      INVALID_TABLE_WIDTH = 04
      INVALID_TYPE        = 05
      NO_BATCH            = 06
      UNKNOWN_ERROR       = 07.
ENDFORM.                    "FILL_LIST_INCLUDE

*&----------------------------------------------------------*
*&      Form  DOWNLOAD_APPS                                 *
*&----------------------------------------------------------*
FORM DOWNLOAD_APPS.

  LOOP AT T_TRDIR.
    CLEAR: APP_NAME, INCLUDE_NAME.

    REFRESH: SOURCE_TABLE.
    CLEAR: SOURCE_TABLE.

    READ REPORT T_TRDIR-NAME INTO SOURCE_TABLE.
    READ TEXTPOOL T_TRDIR-NAME INTO DATA_DDTEXT LANGUAGE SY-LANGU.

    CONCATENATE FILEPATH T_TRDIR-NAME '.abp' INTO APP_NAME.
    CONCATENATE FILEPATH T_TRDIR-NAME '_DDTEXT.txt'
                INTO DDTEXT_NAME.

    PERFORM DOWNLOAD_FORM USING APP_NAME.
    PERFORM DOWNLOAD_DDTEXT USING DDTEXT_NAME.

    LOOP AT SOURCE_TABLE.
      SEARCH SOURCE_TABLE-LINEA FOR 'INCLUDE'.
      IF SY-SUBRC EQ 0.

        IF SOURCE_TABLE-LINEA+0(8) NE 'INCLUDE'.
          CONTINUE.
        ENDIF.

        CLEAR INCLUDE_NAME.

        SPLIT SOURCE_TABLE-LINEA AT SPACE
        INTO DUMMY INCLUDE_NAME.
        SPLIT INCLUDE_NAME AT '.'
        INTO INCLUDE_NAME DUMMY.

        REFRESH: SOURCE_TABLE.
        CLEAR: SOURCE_TABLE.

        MOVE INCLUDE_NAME TO INCLUDE_TABLE.
        READ TABLE INCLUDE_TABLE WITH KEY LINEA = INCLUDE_TABLE.
        IF SY-SUBRC NE 0.
          APPEND INCLUDE_TABLE.
        ENDIF.

        READ REPORT INCLUDE_TABLE INTO SOURCE_TABLE.

        IF SY-SUBRC EQ 0.
          CONCATENATE FILEPATH INCLUDE_NAME '.abp'
          INTO INCLUDE_NAME.
          PERFORM DOWNLOAD_FORM USING INCLUDE_NAME.
          PERFORM FILL_LIST_INCLUDE.
        ENDIF.

      ENDIF.
    ENDLOOP.

  ENDLOOP.

ENDFORM.                    "DOWNLOAD_APPS

*-----------------------------------------------------------*
*       FORM DOWNLOAD_FORM                                  *
*-----------------------------------------------------------*
FORM DOWNLOAD_FORM USING APP_NAME.

  CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
      FILENAME         = APP_NAME
      FILETYPE         = 'ASC'
    TABLES
      DATA_TAB         = SOURCE_TABLE
    EXCEPTIONS
      FILE_WRITE_ERROR = 1
      NO_BATCH         = 2
      INVALID_TYPE     = 4
      NO_AUTHORITY     = 5
      UNKNOWN_ERROR    = 6
      FILE_NOT_FOUND   = 19
      OTHERS           = 22.

  IF SY-SUBRC NE 0.
    T_LOG-ERROR = APP_NAME.
    APPEND T_LOG.
  ENDIF.
ENDFORM.                    "DOWNLOAD_FORM

*-----------------------------------------------------------*
*       FORM DOWNLOAD_DDTEXT                                *
*-----------------------------------------------------------*
FORM DOWNLOAD_DDTEXT USING DDTEXT_NAME.

  CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
      FILENAME         = DDTEXT_NAME
      FILETYPE         = 'ASC'
    TABLES
      DATA_TAB         = DATA_DDTEXT
    EXCEPTIONS
      FILE_WRITE_ERROR = 1
      NO_BATCH         = 2
      INVALID_TYPE     = 4
      NO_AUTHORITY     = 5
      UNKNOWN_ERROR    = 6
      FILE_NOT_FOUND   = 19
      OTHERS           = 22.

  IF SY-SUBRC NE 0.
    T_LOG-ERROR = DDTEXT_NAME.
    APPEND T_LOG.
  ENDIF.
ENDFORM.                    "DOWNLOAD_DDTEXT