Su punto de vista sobre código

Buen día, estimados @abapers.

Hoy les traigo una consulta sobre un código que pienso implementar para la lectura.

Resulta que estamos utilizando el siguiente texto explicativo en algunos documentos contables:

Así que desarrollé un programa Z que realiza la lectura de dicho dato, pero en lugar de realizarlo por medio de la función READ TEXT estoy utilizando una lectura “directa” a una tabla cluster de acuerdo al ejemplo de la siguiente liga:
h_tps://blogs.sap.com/2014/02/25/alternative-to-readtext-function-module/

La consulta es ¿Ustedes recomendarían utilizar ese método de extracción del texto?.

Hola ponxo123

En el proyecto donde me encuentro realizamos la extracción masiva de los UUID y carga de UUID posteriores al 2018, y utilizamos las funciones READ_TEXT y SAVE_TEXT sin problema, uno a uno y masivamente y fue muy rápido.

Si no aplican bien ese SELEC podrías tener problemas de performance y arriesgarte a que te truenen el proceso los BASIS o el mismo sistema dependiendo la parametrización que se tenga en el sistema. Yo personalmente te diría que usaras ese grupo de funciones.

CALL FUNCTION 'READ_TEXT' 
       EXPORTING 
*           CLIENT                  = SY-MANDT 
          ID                      = 'PB' 
          LANGUAGE                = 'E' 
          NAME                    = TNAME 
          OBJECT                  = 'PBPT' 
*         ARCHIVE_HANDLE          = 0 
     IMPORTING 
          HEADER                  = HTEXT 
     TABLES 
          LINES                   = LTEXT 
     EXCEPTIONS 
          ID                      = 1 
          LANGUAGE                = 2 
          NAME                    = 3 
          NOT_FOUND               = 4 
          OBJECT                  = 5 
          REFERENCE_CHECK         = 6 
          WRONG_ACCESS_TO_ARCHIVE = 7 
          OTHERS                  = 8. 

CALL FUNCTION 'SAVE_TEXT'
        EXPORTING
          client          = sy-mandt
          header          = ls_header
*         INSERT          = ' '
          savemode_direct = 'X'
        TABLES
          lines           = lt_lines
        EXCEPTIONS
          id              = 1
          language        = 2
          name            = 3
          object          = 4
          OTHERS          = 5.

CALL FUNCTION 'DELETE_TEXT'
        EXPORTING
          id              = ls_header-tdid
          language        = ls_header-tdspras
          name            = ls_header-tdname
          object          = ls_header-tdobject
          savemode_direct = 'X'
        EXCEPTIONS
          not_found       = 1
          OTHERS          = 2.

 CALL FUNCTION 'COMMIT_TEXT'
        EXPORTING
          object   = ls_header-tdobject
          name     = ls_header-tdname
          id       = ls_header-tdid
          language = ls_header-tdspras.

Saludos!!

6 Me gusta

Hola que tal, como lo comenta absa, es mas recomendado utilizar esas funciones, yo he trabajado esa parte y la funcion de READ_TEXT es muy util para lo que necesitas, igual te recomentaria que hicieras pruebas en la se37 solo con esa funcion para que realices correctamente el mapeo.

Saludos.

4 Me gusta

Este tema se cerró automáticamente 7 días después del último post. No se permiten nuevas respuestas.