Como eliminar el warning: spc0208: No triggered actions

Me han preguntado un par de veces como hacer para eliminar el warning spc0028: Not Triggered Action, que puede aparecer en objetos GeneXus.

Este mensaje no hace mas que hacer visible un problema que se tenia en programas GeneXus desde hace muchas versiones, pero en las ultimas versión, se hizo mucho mas facil de detectar pues sale un mensaje al especificar el objeto. Dicho mensaje, presenta algunas dificultades para su eliminación.

La primera dificultad, es que algunos no entienden el significado del aviso, que significa que alguna regla o formula no puede ser evaluada por GeneXus. El motivo de esto, es porque no tiene los elementos necesarios para evaluarla y por lo tanto no la considera en la generación del código de ese objeto.

Esto trae como consecuencia que alguna de las reglas que pusimos en nuestros programas no sera tenida en cuenta y el motivo puede ser un error de programación o un cambio que afecto la forma en que se disparan las reglas.

Desde mi punto de vista, seria mejor que el mensaje fuera

"Some rules/formulas can't be evaluated o generated"

La segunda dificultad es poder identificar cual es la formula o regla que no se está disparando.
Si tenemos una navegación no detallada, no se ven cuales son las reglas que no se disparan y no se puede ver el detalle.
La forma de ver una navegación detallada era sencilla en GeneXus 9.0, pero pasó a ser un poco mas compleja en GeneXus X.

Hay que elegir Tool / Options / Build / Detailed Navigation y ponerlo en TRUE.

En la navegación detallada, es fácil encontrar cual es la regla o formula que no se puede evaluar, pero no siempre es tan fácil encontrar el motivo por el cual no puede dispararse. Conviene empezar a ver si no hay variables que no estén inicializadas o atributos que no pueden ser inferidos.

Comentarios

Entradas más populares de este blog

El Sordo

StackOverflow Documentation

Codigo simple