Reglas de Validación

16
Reglas de Validación (GGB0) y Reglas de Sustitución (GGB1) DEV – CUT – PRU – PRO En PRU se tiene el plan de trabajo

Transcript of Reglas de Validación

Page 1: Reglas de Validación

Reglas de Validación (GGB0) y Reglas de Sustitución (GGB1) DEV – CUT – PRU – PRO En PRU se tiene el plan de trabajo

Page 2: Reglas de Validación
Page 3: Reglas de Validación

Reglas de Validación (GGB0): Son reglas que me permiten validar si se cumplen ciertas condiciones o no para continuar con un proceso específico. Se crean a través de la transacción GGB0.

Existen varias área de aplicación pero las importantes para el proyecto ICONO-F son las que se encuentran bajo Contabilidad Financiera

Page 4: Reglas de Validación

Cada una está formada por 3 niveles: Cabecera (verificar cabecera del documento), Posición (verificar ítems) y Documento Completo (verificar al momento de guardar el documento). Solo debe existir una carpeta activa.

. Dentro de cada carpeta existen los Pasos que realmente son las reglas de validación. Las cuales están conformadas por: Condición Previa: Es la condición inicial que debe cumplirse para entrar a la regla de validación. Verificación: Es la regla de validación que se verifica en caso de no cumplirse enviará el mensaje Mensaje: Es el mensaje de salida que se enviará cuando se cumpla la condición inicial pero no se cumpla la verificación .

Page 5: Reglas de Validación

Ejemplo de condición inicial

Page 6: Reglas de Validación

Ejemplo de verificación: aquí lo que hace es validar que SYST-UNAME se encuentre en el SET ZUSUARIOS_01. Los set están almacenados en la tabla SET_LEAF. Si la verificación es verdadera continúa si es falsa entonces envía mensaje de error.

En otros casos puede inhibirse una regla simplemente poniendo un FALSE ya que si se borra entonces todos los pasos siguientes se recorrerán es decir si borramos el Paso 005 entonces el paso 006 será el paso 005, el paso 007 será el paso 006 y así sucesivamente lo cual provocaría errores ya que algunas se verifican por el número que tienen

Page 7: Reglas de Validación

Otras verificaciones podrían realizarse a través de EXITS que es programación más completa. Por ejemplo en el caso del Paso 008 vemos que hace el llamado al EXIT U022

Los USER EXITS para las reglas de validación se encuentran en el programa ZGGBR010 los cuales regresan sólo un valor de TRUE o FALSE para continuar con el proceso o en su defecto enviar el mensaje de error. Estos podemos verlos entrando al programa a través de la SE38

Page 8: Reglas de Validación

Por ejemplo aquí podemos checar el User EXIT U022 del Paso 008. Cada user exit está conformado por la parte de definición: * Exit para validar transacciones especiales

exits-name = 'U022'. "matrix validation:

exits-param = c_exit_param_none. "complete data used in exit.

exits-title = text-105. "Periodos GL

APPEND exits.

Y por la parte de implementación que es la subrutina donde se tendrá el código que

hará la verificación

*---------------------------------------------------------------------*

* FORM U022 *

*---------------------------------------------------------------------*

* Validacion de periodos de GL

*---------------------------------------------------------------------*

* --> B_RESULT *

*---------------------------------------------------------------------*

* U022 se utiliza en p008 Z_PG01 cabecera de docto *

*---------------------------------------------------------------------*

FORM u022 USING b_result.

* DATA: subrc LIKE sy-subrc.

*

* CALL FUNCTION 'ZFUS_FM_CIERRE_VALIDATE_PERIOD'

* EXPORTING

* tbkpf = bkpf

* IMPORTING

* subrc = subrc.

Page 9: Reglas de Validación

*

* IF subrc = 0.

* b_result = b_false.

* ELSE.

* b_result = b_true.

* ENDIF.

DATA: it_zbudat TYPE STANDARD TABLE OF

zfusfm_budat WITH HEADER LINE.

b_result = b_true.

SELECT * FROM zfusfm_budat INTO TABLE it_zbudat

WHERE bukrs EQ bkpf-bukrs

AND gjahr EQ bkpf-gjahr

AND monat EQ bkpf-monat.

IF sy-subrc EQ 0.

READ TABLE it_zbudat WITH KEY gjahr = bkpf-gjahr

monat = bkpf-monat

uname = sy-uname.

IF sy-subrc NE 0.

b_result = b_false.

ENDIF.

ENDIF.

ENDFORM. "U022

En este user exit vemos que regresará un valor a través del parámetro b_result si localiza el registro regresará TRUE en caso contrario regresará FALSE.

Page 10: Reglas de Validación

Las reglas de validación no pueden transportarse independientemente, es decir si se va a transportar un Paso (o regla de validación) todos los pasos contenidos pasarán en el transporte, es por eso la importancia de checar en el proceso de ICONO-F que no existan estos dentro de los transportes que están pasando ya que podrían afectar los desarrollos que nosotros tenemos. Esto es igual para las reglas de sustitución. Para transportar las reglas de validación se deberá seleccionar la carpeta principal que contiene todos los pasos ya sea de cabecera, posición o documento completo y elegir el menú Validación y la opción Transportar. (Como vemos al tratar de pasar una regla de validación se pasarán todas las reglas contenidas en esa sección)

Page 11: Reglas de Validación

Sólo se deben seleccionar Reglas Lógicas y Clases booleanas y al dar ejecutar podremos crear la orden de transporte.

Debido a que los SETS son mantenidos en cada ambiente (PRO, CUT, DEV) y obviamente son diferentes los que están en DEV y los que están en productivo , al seleccionarlos también en la orden de transporte podríamos afectar totalmente lo que se tiene en PRO. Por lo que debemos verificar que no estén seleccionados. Las reglas de validación y las de sustitución son dependientes del mandante, por esto cuando se desarrollan y se quisieran probar en otro ambiente de desarrollo (por ejemplo anteriormente se tenía DEV 005 para desarrollo y DEV 010 para pruebas) entonces tendrán que copiarse al mandante correspondiente utilizando la transacción SCC1.

Page 12: Reglas de Validación

Reglas de Sustitución (GGB1): Estas se utilizan para hacer modificaciones a los datos a diferencia de las de validación que se utilizan para verificar si se cumple una condición o no para continuar con el proceso. Se accesan a través de la transacción GGB1.

Tienen igual diferentes áreas de aplicación, las importantes para el proyecto ICONO-F son las que están bajo Contabilidad Financiera

Page 13: Reglas de Validación

En el caso de estas reglas estás tienen 4 niveles: Cabecera documento (para cambios en cabecera), Posición documento (cambios en posiciones), Documento completo (cambios antes de guardar documento completo), Método de costes de ventas (utilizadas por SAP). Sólo debe existir una carpeta activa por sociedad (carpeta PGPBS01 para cabecera, FM00001 para posición y PGPBS03 para documento completo, la FM_RESP y FUSION no son utilizadas)

Cada carpeta está conformada por PASOS, cada paso en si es una regla de sustitución

Page 14: Reglas de Validación

Cada paso a su vez esta formado por Condición y Sustituciones

La condición es aquella que debe cumplirse para poder hacer la actualización o modificación del dato especificado en la sección de Sustituciones

Page 15: Reglas de Validación

En la condición anterior realiza varias verificaciones y la última verifica que el usuario se encuentre en el SET ZUSRCONTAB_NORELEV De igual forma que en las reglas de validación podemos inhibir la regla poniendo en la condición la palabra FALSE al final de la condición. Con esto siempre regresará un valor FALSE la condición y por lo tanto no se realizará ninguna modificación.

En la sección de Sustituciones se especifica el campo que se modificará

Page 16: Reglas de Validación

También se puede realizar programa más completo a través de User Exit Por ejemplo aquí en el paso 004 llama a través el Exit U001