7
Lo más leído
8
Lo más leído
10
Lo más leído
Como mejorar una KB:
Limpieza
Enrique Almeida
@ealmeida
Concepto
Abril 2020
Motivaciones de la charla
Como mejorar una kb  limpieza
Como mejorar una kb  limpieza
El problema
Las KB GeneXus duran muchos años
Con el pasaje del tiempo se acumulan objetos, variables, SDT, etc que
se usaron y ahora ya no se usan más.
En GeneXus es más fácil agregar objetos que borrarlos.
Motivos para la limpieza
● ~ 15 % de objetos que no se instalaban.
● Es más fácil encontrar errores en una KB limpia
● Enlentece el desarrollo, tiempos de Build All, Referencias Innecesarias
● No arreglar objetos que no se usen
Preparación
Partir de una KB con un BUILD ALL exitoso (sin errores)
Hacer un export de todos los objetos de la KB y sus propiedades, guardar el
xpz.
Crear una versión congelada
(View / Versions / Freeze)
Minimizar WARNINGS en especificaciones
Objetivo: Un build all sin errores y sin warnings.
A nivel de la KB
A nivel del Objeto
Variables no usadas
1) En cada objeto, intentar borrar todas las variables (solo va a dejar borrar las variables no
referenciadas).
Recordar hacer un BUILD ALL (SIN ERRORES)
2)
Atributos que no están en tablas
Pueden borrarse si no están referenciados.
Si están referenciados, hay que quitar la
referencia y borrar
● variables basados en atributos
● sdt basados en atributos
¿Preguntas?
Objetos main que no se usan más
Borrar o desmarcar de main todos los objetos que no se usan más.
Todos los objetos deben ser alcanzables desde un main.
Solo tener los main necesarios.
Objetos no referenciados
View / Knowledge Base Information / Not Referenced Objects
Objetos no referenciados
● Objetos BORRABLES
○ Procedures
○ Attributes
○ Domain
○ Webpanels
○ DataProviders
…
● Objetos NO BORRABLES
○ Transactions (Al borrarla puedo cambiar la estructura de la base de datos)
○ Llamados con Call Dinámico (las referencias no aparecen en la KB)
KBDoctor - Remove not referenced objects
Objetos no alcanzables
Objetos no alcanzables
spc0217 Object is unreachable.
Si no es util → BORRARLO
Si es útil → AGREGARLO EN UN MAIN
DUMMY.
Dominios no usados.
Work with objects con Type=Domain
Select All / Delete
Tablas no referenciadas
Aparecen en las lista de objetos no referenciados.
Hay que identificar las transacciones generan la tabla y borrarla o borrar el nivel que lo
genera.
Código comentado
KB Stats / Calculate KBDoctor complexity index
Otras cosas a borrar
● Eventos no invocados
● Borrar Class de Themes
● Minimizar colores de la paleta
● Transacciones no Generables
● Resetear el WIN FORM
● Imágenes no referenciadas
● Fórmulas no usadas
● Prompts generados por GeneXus, son necesarios?
● Objetos To_be_defined
Herramientas
Variables Cleaner - Dvelop
KBDoctor - Concepto
Recover Object - Luciano Silveira
¿Preguntas?
Ejemplo de Limpieza: KB TravelAgencyGX16
Como mejorar una KB: Limpieza
Enrique Almeida
@ealmeida
Concepto
Abril 2020
Muchas gracias!
Ejemplo: Limpieza KB TravelAgencyGX16

Más contenido relacionado

PDF
Modularización de KB GeneXus - lecciones aprendidas
PPTX
Cafe con deployment
PDF
Porque estudiar computacion? Experiencias personales
PPTX
Innovando en el proceso de build y deploy de aplicaciones GeneXus #GX24
PPTX
Build and deploy
PPTX
Repositorio de modelos de datos GeneXus
PPTX
Datos abiertos
PPTX
Migrando grandes KB
Modularización de KB GeneXus - lecciones aprendidas
Cafe con deployment
Porque estudiar computacion? Experiencias personales
Innovando en el proceso de build y deploy de aplicaciones GeneXus #GX24
Build and deploy
Repositorio de modelos de datos GeneXus
Datos abiertos
Migrando grandes KB

Más de Enrique Almeida (7)

PPT
Encuentro Genexus 2005 Beta Testing
PPT
Encuentro GeneXus 2003 Migracion Win Web
PPT
Encuentro GeneXus 2006 Collaborative Projects
PPT
Nuestra Experiencia Con El Proyecto Gxunit Vf
PPT
GeneXus Kb Grandes
PPT
Desarrollando Con Genexus En Grupos Numerosos
PPT
KBTools V2008
Encuentro Genexus 2005 Beta Testing
Encuentro GeneXus 2003 Migracion Win Web
Encuentro GeneXus 2006 Collaborative Projects
Nuestra Experiencia Con El Proyecto Gxunit Vf
GeneXus Kb Grandes
Desarrollando Con Genexus En Grupos Numerosos
KBTools V2008
Publicidad

Último (10)

PPTX
PROPIEDADES Y METODOS DE PrOO CON PYTHON
PPTX
Competencias digitales.PPT.SOTFWAREPTT.0
PDF
Manual de mantenimiento de soporte y mantenimiento
PDF
DNS_SERVIDORES PARA ASER PRACTICAS EN REDES
PPTX
Control de seguridad en los sitios web.pptx
PPTX
hojas_de_calculo_aplicado para microsoft office
PDF
Manual de mantenimiento de soporte y mantenimiento
PDF
Estudio de factibilidad para requisiciones de soporte técnico utilizando OSTi...
PPTX
presentación de introducción a las metodologías agiles .pptx
PDF
Presentacion de compiladores e interpretes
PROPIEDADES Y METODOS DE PrOO CON PYTHON
Competencias digitales.PPT.SOTFWAREPTT.0
Manual de mantenimiento de soporte y mantenimiento
DNS_SERVIDORES PARA ASER PRACTICAS EN REDES
Control de seguridad en los sitios web.pptx
hojas_de_calculo_aplicado para microsoft office
Manual de mantenimiento de soporte y mantenimiento
Estudio de factibilidad para requisiciones de soporte técnico utilizando OSTi...
presentación de introducción a las metodologías agiles .pptx
Presentacion de compiladores e interpretes
Publicidad

Como mejorar una kb limpieza

  • 1. Como mejorar una KB: Limpieza Enrique Almeida @ealmeida Concepto Abril 2020
  • 5. El problema Las KB GeneXus duran muchos años Con el pasaje del tiempo se acumulan objetos, variables, SDT, etc que se usaron y ahora ya no se usan más. En GeneXus es más fácil agregar objetos que borrarlos.
  • 6. Motivos para la limpieza ● ~ 15 % de objetos que no se instalaban. ● Es más fácil encontrar errores en una KB limpia ● Enlentece el desarrollo, tiempos de Build All, Referencias Innecesarias ● No arreglar objetos que no se usen
  • 7. Preparación Partir de una KB con un BUILD ALL exitoso (sin errores) Hacer un export de todos los objetos de la KB y sus propiedades, guardar el xpz. Crear una versión congelada (View / Versions / Freeze)
  • 8. Minimizar WARNINGS en especificaciones Objetivo: Un build all sin errores y sin warnings. A nivel de la KB A nivel del Objeto
  • 9. Variables no usadas 1) En cada objeto, intentar borrar todas las variables (solo va a dejar borrar las variables no referenciadas). Recordar hacer un BUILD ALL (SIN ERRORES) 2)
  • 10. Atributos que no están en tablas Pueden borrarse si no están referenciados. Si están referenciados, hay que quitar la referencia y borrar ● variables basados en atributos ● sdt basados en atributos
  • 12. Objetos main que no se usan más Borrar o desmarcar de main todos los objetos que no se usan más. Todos los objetos deben ser alcanzables desde un main. Solo tener los main necesarios.
  • 13. Objetos no referenciados View / Knowledge Base Information / Not Referenced Objects
  • 14. Objetos no referenciados ● Objetos BORRABLES ○ Procedures ○ Attributes ○ Domain ○ Webpanels ○ DataProviders … ● Objetos NO BORRABLES ○ Transactions (Al borrarla puedo cambiar la estructura de la base de datos) ○ Llamados con Call Dinámico (las referencias no aparecen en la KB)
  • 15. KBDoctor - Remove not referenced objects
  • 17. Objetos no alcanzables spc0217 Object is unreachable. Si no es util → BORRARLO Si es útil → AGREGARLO EN UN MAIN DUMMY.
  • 18. Dominios no usados. Work with objects con Type=Domain Select All / Delete
  • 19. Tablas no referenciadas Aparecen en las lista de objetos no referenciados. Hay que identificar las transacciones generan la tabla y borrarla o borrar el nivel que lo genera.
  • 20. Código comentado KB Stats / Calculate KBDoctor complexity index
  • 21. Otras cosas a borrar ● Eventos no invocados ● Borrar Class de Themes ● Minimizar colores de la paleta ● Transacciones no Generables ● Resetear el WIN FORM ● Imágenes no referenciadas ● Fórmulas no usadas ● Prompts generados por GeneXus, son necesarios? ● Objetos To_be_defined
  • 22. Herramientas Variables Cleaner - Dvelop KBDoctor - Concepto Recover Object - Luciano Silveira
  • 24. Ejemplo de Limpieza: KB TravelAgencyGX16
  • 25. Como mejorar una KB: Limpieza Enrique Almeida @ealmeida Concepto Abril 2020 Muchas gracias!
  • 26. Ejemplo: Limpieza KB TravelAgencyGX16

Notas del editor

  • #3: Invitacion del GUG Hacer algo util durante la cuarentena Aprontarnos para lo que se viene. Metodologia de trabajo Practica y Habitos Forma de la charla (Deberia ser un Taller donde cada uno traiga su KB y le hacemos una limpieza) Voy a hacer una pausa en el medio para contestar preguntas). Al final hacemos preguntas y también una encuesta que los organizadores del GUG querian hacer.
  • #8: Tener todas las instancias de patterns actualizadas y aplicadas. Hacer un REBUILD ALL de ser posible. Hacer un CREATE DATABASE de ser posible.
  • #10: Importancia de borrar variables. Herramienta desarrollada por los amigos de Dvelop
  • #11: Atributos que no estan en ninguna tabla inducen a errores.