Skip to Content


Definición


En los documentos anteriores hemos revisado los siguientes temas:


Creación de variantes:  Como crear variantes dinámicas – Parte 1
Variantes dinámicas usando la tabla TVARV: Como crear variantes dinámicas – Parte 2
Fechas calculadas en variantes dinámicas: Como crear variantes dinámicas – Parte 3



                                       

En este documento veremos como completar valores en variantes dinámicas a partir de variables de usuario.


Para esto utilizaremos como ejemplo el siguiente reporte:


Scr_090.jpg

Supongamos que necesitamos que los parámetros Sociedad, Material, Lote y Centro se llenen automáticamente con unos valores prefijados para cada usuario.  Una opción podría ser que todos esos datos estén  en una tabla Z de modo que los datos se traigan mediante un SELECT a dicha tabla. Esto implicaría tener una transacción que actualice esos datos  y una política de administración de la misma. Ademas, es posible que algunos de estos datos estén cambiando con cierta regularidad y sea el usuario mismo quien deba definir el valor que van a tener, lo que podría causar que nos llenemos de un montón de solicitudes de cambios y transportes de los valores de esa tabla.   Podríamos entonces permitir que el usuario sea quien haga los cambios pero tendríamos asegurarnos de que solo pueda afectar sus propios valores


Una alternativa estándar con la que podemos darle ese control al usuario sin afectar la seguridad es mediante variables de usuario.




Definición de parametros en el programa ABAP


En primer lugar, debemos asegurarnos de que los parámetros que queremos enlazar con la variable de usuario tengan asociado un parámetro SET/GET de memoria SAP mediante la cláusula MEMORY ID.

Scr_194.jpg


Definición de valores para las variables de usuario



El paso siguiente es asignar el valor de la variable.   Para ello ejecutamos nuestro reporte y seleccionamos las siguientes opciones del menú :  Pasar a -> Variables Usuario

Scr_215.jpg


A continuación se nos presentaran las dos variables que hemos asociado a nuestros parámetros.  Primero seleccionaremos la opción MAT que corresponde al material.


Scr_216.jpg

Seleccionamos la opción variable:

Scr_225.jpg

En la ventana siguiente ingresamos el valor que vamos a asignar a la variable:

Scr_218.jpg

Confirmamos la grabación en las siguientes ventanas de diálogo:

Scr_229.jpg


Scr_231.jpg


Una vez hecho esto habremos asociado nuestro valor personalizado para la variable MAT.  Procedemos de igual forma con la variable CHA correspondiente al parámetro Lote.


Creación de la variante dinámica


Una vez hecho todo esto podemos crear la variante de la siguiente forma:


  • Invocamos el programa y llenamos los campos que van a tener valores fijos, dejando vacíos los que van a calcularse dinámicamente.  Para este caso vamos a dejar en blanco los campos Material y Lote, luego de esto presionamos el botón de guardar.

Scr_108.jpg

  • Como en los casos anteriores, en el dialogo siguiente escribimos el nombre y descripción de la orden.  Luego de esto nos ubicamos en el campo Material.


  • Hacemos doble clic sobre el campo correspondiente a la columna “Variable Selección”.  En el diálogo resultante seleccionamos la opción “B – Variable especifica de usuario.


Scr_110.jpg


Veremos entonces que campo correspondiente a la columna “Nombre de Variables” se debe llenar automáticamente con la descripción asociada a la variable MAT.


Scr_220.jpg


Repetimos los mismos pasos para el parámetro de selección LOTE obteniendo el siguiente resultado:

Scr_221.jpg

  • Una vez lista nuestra variante presionamos el botón de guardar y regresamos a nuestro reporte.




Utilización de variables de usuario en la variante dinámica



  • Como paso final ejecutamos el reporte y seleccionamos la variante “VAR_TEST” que acabamos de crear.


Scr_222.jpg


Al seleccionar la variante veremos que los parámetros Material y Lote se han completado con los valores que ingresamos para las variables.


Scr_224.jpg


Creación de variables de usuario


Para el caso descrito en este documento hemos utilizado 2 variables de usuario definidas en el estándar, lo que implica que si esta misma variable es utilizada en otros programas los valores que hemos almacenado se llenen de forma automática en esos programas.  En el siguiente documento revisaremos como se crean nuevas variables de usuario que podemos también utilizar en nuestros desarrollos.

To report this post you need to login first.

3 Comments

You must be Logged on to comment or reply to a post.

  1. Naranjo Roy

    Hola Dario muchas gracias por la información.

    Tengo una duda, cuando selecciono la variante por Default que ya he creado con la restricción de campo “almacen” para que el usuario solo pueda visualizar X almacen me está sucediendo que cuando el usuario ejecuta la MMBE y regresa a la pantalla de selección la variante de desbloquea, aunque conserva los datos, pero en ese momento le permite al usuario seleccionar otro almacén para visualizar stock. Hay alguna manera de evitar corregir eso?

    Slds, Roy N

    Variante bloqueando campos

    Variante desbloqueada después de regresar a la selección

    (0) 

Leave a Reply