Taller de GeneXus Extensions Marcos Crispino [email_address] http ://blog.marcoscrispino.com
Objetivos Explicar de forma básica algunos conceptos de Extensions Mostrar de forma práctica como desarrollar Extensions para GeneXus X
Requerimientos Visual Studio 2005 o 2008 GeneXus X U2 o la versi ón trial GeneXus X SDK U2 Conocimientos básicos de C#
Temario - Teórico Recursos Estructura del proyecto Visual Studio Clases importantes del SDK
Temario – Práctico Crear un nuevo tipo de objeto Crear un menú Crear un menú contextual Uso de la Start Page Output Window Crear una Tool Window Obtener información de los objetos Disparar acciones al producirse eventos
Recursos adicionales Foro de extensiones http://www.gxopen.com/forumsr/servlet/hpostlist?ARTECH,23,0,es,915 Ejemplos del SDK C:\Program Files\ARTech\GeneXus X Platform SDK\Samples Proyectos Assembla http ://www.assembla.com/wiki/show/gxextensions
Estructura del proyecto VS CommonPackageInfo.cs : link a la clase del SDK con el build de GeneXus GeneXusPackage.package : XML con definición de comandos, menues, recursos, tool windows, etc. Package.cs : clase principal de la extensión, inicializa comandos, nuevos tipos de objetos, tool windows, etc.
Estructura del proyecto VS Object.cs : definición del nuevo tipo de objeto. Part.cs : definición de la nueva parte para el objeto. Editor.cs : componente visual de la nueva parte para el objeto.
Clases del SDK: UIServices Conjunto de servicios brindados por el IDE Namespace:  Artech.Architecture.UI.Framework.Services  Algunas propiedades: KB: KB abierta actualmente en el IDE DocumentManager: administrar documentos (objetos) en el IDE StartPage Objects: crear, copiar y borrar objetos etc.
Clases del SDK: KnowledgeBase Representa una base de conocimiento Namespace:  Artech.Architecture.Common.Objects Se puede obtener por ejemplo con UIServices.KB
Clases del SDK: KBModel Representa un modelo de la KB Namespace:  Artech.Architecture.Common.Objects   El modelo actual se obtiene con UIServices.KB.WorkingModel Métodos: GetObjects()
Clases del SDK: KBObject Representa un objeto de la KB (trn, prc, wbp, atributos, categorías, documentación, etc.) Namespace:  Artech.Architecture.Common.Objects  Propiedades: Guid: identificador único del objeto Name Type: Guid del tipo de objeto TypeDescriptor: información del tipo de objeto
Práctico

Taller GX Extensions

  • 1.
    Taller de GeneXusExtensions Marcos Crispino [email_address] http ://blog.marcoscrispino.com
  • 2.
    Objetivos Explicar deforma básica algunos conceptos de Extensions Mostrar de forma práctica como desarrollar Extensions para GeneXus X
  • 3.
    Requerimientos Visual Studio2005 o 2008 GeneXus X U2 o la versi ón trial GeneXus X SDK U2 Conocimientos básicos de C#
  • 4.
    Temario - TeóricoRecursos Estructura del proyecto Visual Studio Clases importantes del SDK
  • 5.
    Temario – PrácticoCrear un nuevo tipo de objeto Crear un menú Crear un menú contextual Uso de la Start Page Output Window Crear una Tool Window Obtener información de los objetos Disparar acciones al producirse eventos
  • 6.
    Recursos adicionales Forode extensiones http://www.gxopen.com/forumsr/servlet/hpostlist?ARTECH,23,0,es,915 Ejemplos del SDK C:\Program Files\ARTech\GeneXus X Platform SDK\Samples Proyectos Assembla http ://www.assembla.com/wiki/show/gxextensions
  • 7.
    Estructura del proyectoVS CommonPackageInfo.cs : link a la clase del SDK con el build de GeneXus GeneXusPackage.package : XML con definición de comandos, menues, recursos, tool windows, etc. Package.cs : clase principal de la extensión, inicializa comandos, nuevos tipos de objetos, tool windows, etc.
  • 8.
    Estructura del proyectoVS Object.cs : definición del nuevo tipo de objeto. Part.cs : definición de la nueva parte para el objeto. Editor.cs : componente visual de la nueva parte para el objeto.
  • 9.
    Clases del SDK:UIServices Conjunto de servicios brindados por el IDE Namespace: Artech.Architecture.UI.Framework.Services Algunas propiedades: KB: KB abierta actualmente en el IDE DocumentManager: administrar documentos (objetos) en el IDE StartPage Objects: crear, copiar y borrar objetos etc.
  • 10.
    Clases del SDK:KnowledgeBase Representa una base de conocimiento Namespace: Artech.Architecture.Common.Objects Se puede obtener por ejemplo con UIServices.KB
  • 11.
    Clases del SDK:KBModel Representa un modelo de la KB Namespace: Artech.Architecture.Common.Objects El modelo actual se obtiene con UIServices.KB.WorkingModel Métodos: GetObjects()
  • 12.
    Clases del SDK:KBObject Representa un objeto de la KB (trn, prc, wbp, atributos, categorías, documentación, etc.) Namespace: Artech.Architecture.Common.Objects Propiedades: Guid: identificador único del objeto Name Type: Guid del tipo de objeto TypeDescriptor: información del tipo de objeto
  • 13.