Listado de Materiales con texto corto y largo

Vaya que tuve que meterme a bucear por MM… jajajajjaa
Aquí mis conclusiones.

De Datos Adicionales

  • Texto breve del material
    Permite poner otros idiomas también. A veces si hay interfaces que usan idioma ingles, habría que poner descripción en dos lineas, uno en ES, y otro en EN (english).
    Campo: MAKTX (Estructura: SKTEXT)
    Pero se encuentra en la MARA también.

  • Textos datos basicos
    Este no tiene límite de escritura, y va a nivel de varios idiomas
    Tabla: STXH
    Es muy importante que sepas:

  • TDOBJECT (objeto)

  • TDNAME (nombre de texto)

  • TDSPRAS (idioma)

  • TDMACODE1 (Título breve 1) - Básicamente contiene la transacción que dió origen al texto.

  • TDFUSER (Autor) - Es el usuario que modificó el material y le dió la descripción

De las pestañas en MM02 o MM03

  • Texto de pedido de compras
    En la tabla STXH, campo TDOBJECT, con objeto “BEST”, podes llegar al texto vía la función READ_TEXT

Para ampliar el tema de la función READ_TEXT, el gurú SAP de @Alvan1 dejo un tutorial paso por paso aquí:
Obtener Textos Cabecera, Funct. 'READ_TEXT'
Si bien no aplica exactamente para esta tabla y campos, te servirá para aprender a usar la función. :thumbsup:


***

Te recomiendo ayudarte con un ABAP, y hacer un zeta para leer las tablas con la función READ_TEXT

Armar programa ABAP que use la función y las tablas

  • Funcion: READ_TEXT
  • Llamando a tablas:
  • STXH
  • STXL

Ejemplo (no lo he probado yo)

REPORT ztest NO STANDARD PAGE HEADING.
*Read Basic data text for material
PARAMETERS: p_matnr TYPE matnr  OBLIGATORY DEFAULT '101-0001'.
 
DATA: tdname TYPE stxh-tdname,
      xline TYPE TABLE OF tline,
      wline TYPE tline.
 
 
START-OF-SELECTION.
  tdname = p_matnr.
  CALL FUNCTION 'READ_TEXT'
    EXPORTING
      id                      = 'GRUN'
      language                = sy-langu
      name                    = tdname
      object                  = 'MATERIAL'
    TABLES
      lines                   = xline
    EXCEPTIONS
      id                      = 1
      language                = 2
      name                    = 3
      not_found               = 4
      object                  = 5
      reference_check         = 6
      wrong_access_to_archive = 7
      OTHERS                  = 8.
  IF sy-subrc = 0.
    LOOP AT xline INTO wline.
      WRITE: / wline-tdline.
    ENDLOOP.
  ELSE.
    WRITE: / 'Error', sy-subrc.
  ENDIF.
  ULINE.

Hace pruebas, yo hice y llegué a los resultados esperados :slight_smile:

2 Me gusta