// // Escribe un comentario

Ampliar ayuda para MatchCode

En muchas ocasiones, las ayudas de busqueda estandar de Sap (Matchcode), a las que accedemos como ayuda para completar los valores de los campos pulsando la tecla de función F4, son insuficientes para nuestras necesidades o no tienen en cuenta cosas tan obvias como no incluir registros que tienen peticiones de borrado.
Para estas ocasiones, tenemos la posibilidad de definir nuestras propias ayudas de búsqueda (Z) e incluirlas como una ayuda adicional en las ayudas estandar. Las ayudas estandar suelen ser ayudas complejas que incluyen varias ayudas simples, que podemos ir seleccionando según nuestras necesidades (en la imagen, podeís ver las ayudas de búsqueda disponibles cuando estamos dando de alta datos maestros de cliente a través de la transacción XD01).

Como ejemplos de ayudas de búsqueda que habitualmente se van a tener que definir en el sistema, tenemos:
  • Administración de personal: búsqueda por el segundo apellido, ya que es muy frecuente empleados con los mismos apellidos, y este tipo de búsqueda no esta incluido en el estandar.
  • Datos maestros: ayudas de búsqueda que excluyan registros con petición de borrado. Esto puede aplicar a proveedores, clientes, materiales, etc.
  • Busqueda por otros criterios: en muchas ocasiones nos puede interesar buscar por otros criterios que no son estandar, campos de cliente u otros campos estandar que andan perdidos en los datos maestros pero por los que nos interesa realizar búsquedas.
  • Ayudas personalizadas: también podremos incluir ayudas que ataquen a tablas Z o a vistas de datos estandar y tablas de cliente. Por ejemplo, en un sistema con control de imputaciones por cuentas contables, incluir una ayuda de búsqueda que nos indique, por cuenta contable, donde podemos imputar (tirando de tablas de cliente).


Los pasos para la creación de una ayuda de búsqueda y su inclusión en la estandar serían los siguientes:
  1. Asegurarnos que las ayuda de búsqueda estandar no cumplen con los requerimientos que necesitamos en la instalación.
  2. Localizar el nombre de la ayuda de búsqueda estandar asociada a un determinado campo. Para ello, tendremos que investigar, pues la ayuda puede estar asociada en la definicion de la tabla donde se utiliza el campo (transacción SE11), a nivel de la dynpro (pulsando F1 sobre el campo podremos localizarla) o bien a nivel de elemento de datos (también se accede desde la SE11)
  3. Definir los campos por los que queremos buscar y localizar las tablas donde se encuentran.
  4. Crear la ayuda de búsqueda (partiendo desde cero o bien utilizando como modelo una de las ayudas estandar). La creación de las ayudas se realiza desde la transacción SE11.
  5. La creación de la ayuda de búsqueda puede llevar aparejado también la creación de una vista de acceso a datos, que incluya los campos/tablas que necesitamos para nuestro proposito. Esto se hace también desde la transacción SE11.
  6. Verificación de la ayuda e inclusión como ayuda adicional en la ayuda estandar. Este paso permitirá que la ayuda creada este disponible en el sistema como una ayuda mas, y al desplegar las disponibles, nos aparezca la nuestra como un elemento mas en los matchodes.

EJEMPLO PRACTICO. BUSQUEDA DE EMPLEADOS POR EL SEGUNDO APELLIDO.

En nuestro ejemplo, vamos a crear una ayuda de búsqueda por segundo apellido para los datos maestros de empleados. Según los pasos que hemos descrito antes:
1. Revisión de las ayudas de búsqueda existentes, asegurandonos que ninguna cumple nuestras necesidades.
Entramos en la transacción PA20, y abrimos el matchcode sobre el campo Número de empleado. Tenemos disponibles varias ayudas de búsqueda, pero ninguna por este concepto.

2. Localizar la ayuda de búsqueda estandar.
Nos posiciones en el campo y pulsamos F1. En este caso, la ayuda de búsqueda esta definida en la dynpro, y se nos muestra en la información técnica del campo. Sino hubiera estado disponible la información ahí, hubieramos tenido que acudir a la definición de la tabla (RP50G en este caso) o bien al elemento de datos (PERNR_D) para buscarla.


Accedemos a la transacción SE11 y consultamos la ayuda PREM. Es una ayuda de búsqueda compuesta por varias ayudas simples (que son las que podemo seleccionar al buscar).

Vamos a tomar como modelo la ayuda de búsqueda PREMN, que es la más parecida a nuestras necesidades.
3. Localizar los campos por los que queremos buscar.
La información del segundo apellido del empleado se encuentra en la tabla PA0002, en el campo NACH2.
4. Creación de la ayuda de busqueda (ZPREMN).
Desde la transacción SE11 copiamos la ayuda PREMN en la nueva ayuda ZPREMN. Creamos la vista que incluye el campo que nos falta (como veremos en el paso 5), y realizamos el ajuste de los parámetros de la ayuda como sigue:

En la columna PosS indicamos los campos los campos que aparecen en la ayuda de búsqueda cuando entramos a ella y en que orden. En este caso los campos son NCHMD (1er apellido), NACH2 (2º apellido) y VNAMC (nombre). Son los campos que nos permiten restringir los resultados de búsqueda.
En la columna P.I indicamos los campos que aparecen en los resultados de búsqueda y en que orden. El campo PERNR (número de empleado) esta marcado en la columna EXP como valor de retorno al campo donde se este utilizando la ayuda de búsqueda.
En la ayuda se pueden definir otros parámetros, como el tipo de dialogo cuando se ejecuta la ayuda, si tenemos una tecla de acceso rápido o una exit asociada a la ayuda (para permitir otro tipo de personalizaciones).
5. Creación de la vista asociada a la ayuda de búsqueda.
La ayuda requiere una nueva vista, como hemos indicado, pues tiene campos que no tenemos disponibles en la vista M_PREMN (que es la que utiliza la ayuda PREMN). Para ello, creamos la vista ZM_PREMN como copia de la mencionada, y añadimos el campo NACH2.

En este caso no es necesario, pero en otros puede ser necesario incluir nuevas tablas, campos y las correspondientes relaciones entre las tablas existentes para definir correctamente la vista.
6. Asignación de la ayuda en la ayuda estandar.
En la transacción SE11, modificamos la ayuda estandar PREM, e incluimos la ayuda creada. Es fundamental para que funcione correctamente realizar la Asignación de parámetros, que es el enlace entre la ayuda de búsqueda simple (la que hemos creado) y la ayuda de búsqueda compuesta donde se incluye.

A partir de este momento, la ayuda ya esta disponible en todas las pantallas de las transacciones donde se utilize la ayuda PREM. Bastara seleccionarla entre las disponibles e indicar los criterios de búsqueda. La ayuda nos permite buscar por el segundo apellido y visualizar también este dato en los resultados de búsqueda.

Otra utilidad más que nos va a sacar de algún apuro y que nos va a permitir personalizar nuestro sistema Sap y sobre todo, hacerle al usuario más rápidos los procesos de búsqueda.
Reblogueado desde Saptricks

0 comments:

Publicar un comentario

Nota Importante: los comentarios son para agradecer, comentar o sugerir cambios (o hacer preguntas) sobre el artículo de arriba.


Para otras preguntas, por favor envíe su consulta aquí, es gratis!. Su consulta no molesta, le responderemos a la brevedad