Archivo

Posts Tagged ‘field’

Select dinámico con Field-Symbols

Caso: se desea realizar un Select utilizando variables en las condiciones

Solución: usamos un select dinámico. Ver que para filtrar campos caracteres se agregan doble comillas simples.

REPORT  zselect_dinamico.
 
DATA:   lt_ekko       TYPE TABLE OF ekko,
        lc_tabname    TYPE tabname,
        lc_tabint     TYPE tabname,
        lc_where      TYPE string.
 
FIELD-SYMBOLS:  <fs_tab> TYPE STANDARD TABLE,
                <fs_it> TYPE STANDARD TABLE.
 
lc_tabname = 'EKKO'.
lc_tabint  = 'LT_EKKO'.
lc_where   = 'BUKRS EQ 1000 AND BSART EQ ''NB'''.
 
ASSIGN (lc_tabint) TO <fs_it>.
REFRESH <fs_it>.
SELECT *
  INTO TABLE <fs_it>
  FROM (lc_tabname)
  WHERE (lc_where).
Anuncio publicitario

Fieldsymbols – Uso simple en T16FS

Caso: se desea acceder a cada campo donde se encuentran los códigos de liberación de la tabla T16FS (Estrategias de liberación).

Solución: usamos fieldsymbols para dinámicamente acceder a cada campo numerado del 1 al 8.

FIELD-SYMBOLS: <fs>.
 
DATA: lw_t16fs       type t16fs,
      lc_cant        TYPE c,
      lc_variable    TYPE string.
 
SELECT SINGLE * INTO lw_t16fs FROM t16fs
  WHERE frggr = lw_ekko-frggr   " Grupo de liberación
    AND frgsx = lw_ekko-frgsx.  " Estrategia liberación
 
DO 8 TIMES.
  WRITE sy-index TO lc_cant.
  CONCATENATE 'LW_T16FS-FRGC' lc_cant INTO lc_variable.
  ASSIGN (lc_variable) TO <fs>.
 
  WRITE /: 'Código de liberación:', lc_cant, '-', lc_variable, '. Valor:', <fs>.
 
ENDDO.
Categorías: ABAP/4 Etiquetas: , , , ,

Campos editables en VF02

Transacción: VF02

Caso: Campos editables en VF02, para poder modificarlos antes de contabilizar la factura.

Ejemplo: en mi caso tenía que dejar editable el campo “Cantidad facturada”

Parece que no se puede hacer, salvo modificando el estándar. Lo que pude hacer es entrar por la SE38 al include MV60AF0F_FELDAUSWAHL_SONDERREG

Ir al final del Include para agregar el siguiente código:

* Indico los campos a dejar editables è indicar los deseados
IF SCREEN-NAME = 'VBRP-FKLMG' OR  " Cantidad factura UME
SCREEN-NAME = 'VBRP-BRGEW' or      " Peso bruto
SCREEN-NAME = 'VBRP-FKIMG' OR      " Cantidad facturada
SCREEN-NAME = 'VBRP-NTGEW'.        " Peso neto

* En mi condición, tenía que ser según un punto de venta y circuito
IF SY-TCODE = 'VF02'             " Transacción de Modificar factura
and vbrk-FKART = 'ZFA1'         " Tipo de factura
and vbrk-xblnr(4) = '0008'        " Sucursal/Punto de venta
and vbrk-bukrs = '1000'           " Sociedad
AND VBRK-RFBSKNE 'C'.           " La factura no está contabilizada

SCREEN-INPUT = 1.                "Campo editable

MODIFY SCREEN.
ENDIF.
ENDIF.

Link: https://forums.sdn.sap.com/thread.jspa?threadID=1114948

Categorías: ABAP/4 Etiquetas: , ,