Inicio > ABAP/4 > STVARV o STVARVC – Uso de parámetros y opciones de selección fijas

STVARV o STVARVC – Uso de parámetros y opciones de selección fijas

Caso: se desea crear un parámetro fijo en el customizing para no tener que hardcodear el valor en los programas, de esta forma, ante cualquier cambio en el valor fijo se modificaría el parámetro y no el programa en sí.

Solución: hemos hablado en otro post anterior de utilizar un SET DE DATOS, otra forma (que requiere transportes) es la utilización de la transacción STVARV.

La tabla TVARVC se utiliza para mantener entradas de parámetros o select-options. Antes del antes del release 610, estos datos se guardaban en la tabla TVARV y se actualizaba con la SM30 (esta tabla no tenía el mandante); luego de la 610 se utiliza la tabla TVARVC.

La transacción a utilizar para ello es la STVARV. Generalmente hay confusión si utilizar ésta o la STVARVC; con la transacción STVARV puedes mantener entradas dependiente del mandante (requiere transportes), mientras que en la TAVRVC sólo sirve para el mandante 000.

Es por ello recomendable utilizar la transacción STVARV.

Para más datos al respecto, revisa la nota 1994216:How to maintain variant variables in table TVARVC.

1. Ejemplo de parámetro:

Vamos a la transacción STVARV, presionamos el botón de MODIFICAR y nos aparecen nuevos botones para tratar parámetros o opciones de selección:

Presionamos “Incluir entradas modificadas en orden de transporte” para poder incluir los cambios y que nos pida una OT y luego el botón NUEVO.

Ingresamos los datos del parámetro y guardamos.

Ahora bien, en un programa podemos rescatar este parámetro así:

DATA: lv_bukrs TYPE BUKRS.

SELECT SINGLE low FROM tvarvc INTO lv_bukrs
WHERE name = ‘ZSOCIEDAD’
AND type = ‘P’.

Y si queremos utilizarlo en una variante, debemos definir la variable de selección en un campo de parámetro y seleccionar nuestra variable ZSOCIEDAD:

1. Ejemplo de opción de selección:

De la misma forma, en la STVARV podemos crear una opción de selección indicando varias opciones que luego obtendremos a partir de un rango.

Para rescatarlo en un programa, una forma sería así:

DATA: lt_centros LIKE RANGE OF ekpo-WERKS.

SELECT sign opti AS option low
INTO CORRESPONDING FIELDS OF TABLE lt_centros
FROM tvarvc
WHERE name = ‘ZCENTRO’.

Y para utilizarlo en variantes, misma forma que en parámetros (obviamente debe referirse a un SELECT-OPTIONS):

Link: http://solveissue.com/note?id=1994216

  1. Aún no hay comentarios.
  1. No trackbacks yet.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: