SlideShare una empresa de Scribd logo
1 de 20
El futuro más cerca de vos Federico Dominioni fdominioni@k2business.com
Agenda Subiendo el nivel de abstracción… Entidades y Actividades Mejorando especificación de interfaz Nuevo web panel builder Mejorando la interfaz de usuario Rich Interfaces
K2BTools ¿Qué son?
1.Subiendo el nivel de abstracción:Entidades y Actividades
Requerimientos 1. Entidades y Actividades Entidad Actividad WebPanelBuilder Instancia  Patterns Transacción GX Objecto GX Aplicación
Entidad ¿Cómo se define?
Export/Import Ambiente 1 Ambiente 2 Ambiente n
2. Mejorando la  especificación de interfaz:Nuevo Web Panel Builder
3. Mejorando la  interfaz de usuario: RichInterfaces
Requerimientos Entidad Actividad WebPanelBuilder Instancia  Patterns Transacción GX Objecto GX 3. Rich Interfaces Aplicación  Aplicación
Lista de Acciones Lista de Filtros Listado de objetos Paginado Ordenado por
Lista de objetos
Lista de objetos
Lista de objetos
Filtros
Filtros
Especificacion Vs Presentación Actividades SubActividades Especificación Presentación WorkWith Filtros Lista de objetos

Más contenido relacionado

Similar a 0125 k2 b_tools_el_futuro_más_cerca_de_vos

Similar a 0125 k2 b_tools_el_futuro_más_cerca_de_vos (20)

Web 2.0
Web 2.0Web 2.0
Web 2.0
 
La web 2.0
La web 2.0La web 2.0
La web 2.0
 
PresentacióN1 Taraa
PresentacióN1  TaraaPresentacióN1  Taraa
PresentacióN1 Taraa
 
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptxEFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
La wed 2
La wed 2La wed 2
La wed 2
 
Curso APEI - Modulo 1
Curso APEI - Modulo 1Curso APEI - Modulo 1
Curso APEI - Modulo 1
 
Curso APEI - Modulo1
Curso APEI - Modulo1Curso APEI - Modulo1
Curso APEI - Modulo1
 
La Web 2.0 En la Educación
La Web 2.0 En la  EducaciónLa Web 2.0 En la  Educación
La Web 2.0 En la Educación
 
Web 2.0 Nuevo
Web 2.0 NuevoWeb 2.0 Nuevo
Web 2.0 Nuevo
 
Sharepoint server 2010 - La nueva colaboración
Sharepoint server 2010  - La nueva colaboraciónSharepoint server 2010  - La nueva colaboración
Sharepoint server 2010 - La nueva colaboración
 
La web 2
La web 2La web 2
La web 2
 
Mobile Web 2.0: Collective Intelligence and Prosumers
Mobile Web 2.0: Collective Intelligence and ProsumersMobile Web 2.0: Collective Intelligence and Prosumers
Mobile Web 2.0: Collective Intelligence and Prosumers
 
Qué es la web 2
Qué es la web 2Qué es la web 2
Qué es la web 2
 
Web 2.0, Presentación
Web 2.0, PresentaciónWeb 2.0, Presentación
Web 2.0, Presentación
 
Web 2.o
Web 2.oWeb 2.o
Web 2.o
 
Bloque51
Bloque51Bloque51
Bloque51
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 

Más de GeneXus

After Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsAfter Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsGeneXus
 
Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!GeneXus
 
Live Editing in Action
Live Editing in ActionLive Editing in Action
Live Editing in ActionGeneXus
 
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...GeneXus
 
¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?GeneXus
 
K2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroK2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroGeneXus
 
Sd y Plataformas
Sd y PlataformasSd y Plataformas
Sd y PlataformasGeneXus
 
PXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosPXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosGeneXus
 
APPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaAPPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaGeneXus
 
GeneXus 4 Students
GeneXus 4 StudentsGeneXus 4 Students
GeneXus 4 StudentsGeneXus
 
La importancia de ser responsive
La importancia de ser responsiveLa importancia de ser responsive
La importancia de ser responsiveGeneXus
 
K2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusK2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusGeneXus
 
GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus
 
GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus
 
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosLigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosGeneXus
 
Innovando con GeneXus y SAP
Innovando con GeneXus y SAPInnovando con GeneXus y SAP
Innovando con GeneXus y SAPGeneXus
 
Going mobile
Going mobileGoing mobile
Going mobileGeneXus
 
Audit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusAudit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusGeneXus
 
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusWW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusGeneXus
 
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...GeneXus
 

Más de GeneXus (20)

After Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsAfter Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) Bots
 
Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!
 
Live Editing in Action
Live Editing in ActionLive Editing in Action
Live Editing in Action
 
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
 
¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?
 
K2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroK2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuro
 
Sd y Plataformas
Sd y PlataformasSd y Plataformas
Sd y Plataformas
 
PXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosPXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivos
 
APPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaAPPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industria
 
GeneXus 4 Students
GeneXus 4 StudentsGeneXus 4 Students
GeneXus 4 Students
 
La importancia de ser responsive
La importancia de ser responsiveLa importancia de ser responsive
La importancia de ser responsive
 
K2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusK2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXus
 
GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus 15 (Salto)
GeneXus 15 (Salto)
 
GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.
 
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosLigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
 
Innovando con GeneXus y SAP
Innovando con GeneXus y SAPInnovando con GeneXus y SAP
Innovando con GeneXus y SAP
 
Going mobile
Going mobileGoing mobile
Going mobile
 
Audit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusAudit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXus
 
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusWW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
 
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
 

0125 k2 b_tools_el_futuro_más_cerca_de_vos

Notas del editor

  1. Buenosdías, mi nombrees Federico Dominioni, soy encargado del equipo de desarrollo de K2BTools.Elevandoaúnmás el nivel de abstracción, mejorando la usabilidad y productividad de la especificación de objetos con interfaz, ¿cómoobtener interfaces mucho másricas?... Todoesodescúbralo en estacharla. Descubraquetendránlaspróximasversiones de las k2btools. Descubracuáles el futuro.
  2. Cuando desarrollamos una aplicación lo que queremos es a partir de un conjunto de requerimientos llegar a obtener una aplicación en ejecución que los satisfaga. Muchas veces en esos requerimientos hacemos un relevamiento funcional y finalmente escogemos que funcionalidades implementar. A partir de eso, o de alguna otra especificación más formal, vamos a GeneXus y definimos los objetos que implementan esa solución. Definimos las transacciones, los objetos GeneXus necesarios. Aplicamos patterns sobre las transacciones que consideramos necesarias, aplicamos el web panel builder para los web panels que queremos generar y desarrollamos el resto de los objetos GeneXus manualmente.Este es el nivel de abstracción en el que trabajamos habitualmente con las k2btools.Nosotros queremos subir aún más ese nivel de abstracción. Queremos acercarnos más a los requerimientos.¿Qué ganamos subiendo el nivel de abstracción?... Ganamos la posibilidad de inferir mucho más programas. El poder especificar un modelo semántico basado de mayor abstracción dentro de GeneXus nos permitiría por ejemplo generar más cosas. Incluso podríamos a partir de esa especificación ya generar parte de las transacciones, web panels, instancia de patterns, objetos GeneXus, etc.Este modelo está basado en entidades y actividades.Qué es una entidad?Una entidad define un objeto de la realidad. Es el conjunto de transacciones necesarias para que el “objeto de la realidad” quede definido correctamente en el sistema. Una entidad además tiene un conjunto de operaciones que actúan sobre ella.
  3. Veremos aquí cómo se define la entidad… para esto voy a crear una entidad nueva. La entidad es un objeto GeneXus nuevo definido por las k2btools.Para esto parado en GeneXus, voy a poner new entity . Voy a definir una entidad de nombre EntidadProducto. Lo primero que me aparece es una pantalla donde me permite ingresar qué tipo de entidad es. Ahí me aparece una tipo semántico de si es un Objeto, un Actor o un Evento. Un objeto es algo tangible de la realidad, en este caso el producto. De esta manera voy a definir mi entidad como si fuera un objeto. No reinventar la rueda: Muchas veces cuando desarrollamos un sistema, existen un conjunto de entidades que son siempre iguales. Estructuras geográficas, productos, etc. Esto permite tener ya modelos catalogados para que nosotros podamos elegir cual utilizar, según la complejidad de la aplicación. De esta forma puedo decir esta entidad es una estructura geográfica y las k2btools se encargan de consolidar los elementos necesarios. O sea puedo crear una aplicación diciendo esto es un producto, esto es un país. Incluso brindamos la posibilidad de que ustedes cataloguen su propio modelo.Defnir nueva entidad: De todas formas lo que vamos a hacer ahora es definir una entidad desde 0. Simplemente le voy a decir que es un objeto.Inmediatamente después paso a definir las transacciones que componen la entidad.DEFINIR TRANSACCIONESMOSTRAR DIAGRAMA.CONFIGURAR PROPIEDAD GENERATE ON SAVE.PARARME EN LA PARTE DE ACTIVIDADES Y PONER GENERAR.Actividades:Asociado a una entidad existen actividades que operan sobre ella. La forma en la entidad se comunica con el exterior es a traves de sus actividades. Algunas activiades tienen interfaz de usuario otras no. Cuando a la entidad se le setea la propiedad GenerateOnSave en true, se generan todas las actividades asociadas a esa actividad.Algunas actividades:Existen actividades que utilizan un SDT, que es un SDT con todos los componentes de la entidad (todas las transacciones que la componen). Esto se utiliza para comunicarse con módulos.Los métodos de New, Set y Delete, reciben como parámetro el SDT de la entidad y dan de alta, eliminan o actualizan la misma. El objetivo de estos métodos es que sean utilizado tanto:Dentro del sistema.Fuera del sistema (puede ser expuesto como web service)…. Permite integrarse con otro sistemaNosotros en k2b lo usamos para comunicación entre módulos.Algunos escenarios que se tienen en cuenta:Cuando uno va a dar de alta una entidad, existen un montón de claves foráneas. Ejemplo una factura, que referencia clientes y productos. Al ser invocado desde una aplicación externa, si el sistema maneja autonumbers para productos y clientes, seguramente las claves primarias no sean la misma… El new se encarga de resolver todo esto a través de la posibilidad de definir claves candidatas. Si existe en la KB un índice unique y en el sdt no se pasan las pks el sistema se encarga de cuando da de alta la factura agregar en la clave foránea la referencia al registro que tiene como CK la que se pasa como parámetro.Como ven la implementación de este método a mano no es nada trivial.Algunos otros métodos interesantes:Exportación/ImportaciónMuchas veces tenemos varias implantaciones o varios ambientes (prototipo/producción)A veces trabajamos en un ambiente, damos de alta los datos y luego lo queremos replicar en el resto de los ambientes. La forma actual de hacerlo es manual.K2BTools brinda la posibilidad de hacer un export de la entidad e importarla en otro ambiente. Se apoyda en los métodos de new, get y delete. El usuario selecciona las instancias de la entidad que quiere exportar y luego las importa.EntityManager:Este es el que ya conocemos. Es el pattern pero aplicado a la entidad.AllInPlace: Forma de dar de alta toda la entidad en una única pantalla. Vamos a ver esto.DAR DE ALTA ÚN PRODUCTOMostrar el workwith también. Ver las diferencias, cada uno de los componentes de la entidad se dan de alta por separado, todos los componentes de la entidad se dan en una misma pantalla.Mejoras: Si en el nexo son muchos elementos, tab para marcar los seleccionados, poder agregar atributos adicionales.Alta masiva,etc.
  4. HACER UN NUEVO WEBPANEL.PONERLE DE NOMBRE SELECTPRODUCTSSALVARMOSTRAR COMO APARECE AL PRINCIPIO LA POSIBILIDAD DE ELEGIR ENTRE DOS TIPOS DE FORMULARIOS. ELEGIR WEBPANELBUILDER.MOSTRAR QUE ES UNA EXTENSIÓN. MOSTRAR QUE TIENE LA MISMA FUNCIONALIDAD QUE EL WEB PANEL BUILDER PERO CON DIFERENCIAS DE FUNCIONALIDAD.USABILIDAD Filtro, cambiar valor del filtro ver como se actualiza la condición. Cambiar atributo del filtro, ver como se actualiza la condición. Clase del tema del filtro, ver como aparece la posibilidad de seleccionar una clase del tema para los filtros.Lefttext ver como cuando se agrega el valor de lefttext se agrega texto a la izquierda automáticamente. Copiar filtro a la zona de atributos ver como se modifica su nombre, etc. Agregar un line separator Agregar un web component de nombre ProductoComponent. Agregar una acción mostrar que puede ser texto o imagen. Ver las propiedades que se habilitan o se deshabilitan según si es texto o imagen. Definir la imagen. Agregarle como nombre selectproduct. Programar el código asociado a la imagen. Mostrar que las variables ya no empiezan con E_, esto es otra mejora. Escribir en el evento. Cambiar nombre de la acción y de la variable y ver como se actualiza. Ver como en el código queda renombrado.Dar F5 y generar. Mientras tanto ver otras ventajas1 ) Exportación , exporta todo el objeto.2) Objetivo que esto lo podamos extender. Se puede especificar su propieda interfaz. Código abierto.3) Nuevos generadores y definidores de metadata… ver por ejemplo el abstractform. Toda la funcionalidad la da el framework, defina usted su propia interfaz.THE END…
  5. Bajo la única definición yo podría escoger que representación quiero usar para cada componente, y acá hago una breve muestra de diferentes cosas que pdoríamos generar solo escogiendo una representación… no todos los datos queremos verlo como grilla.
  6. En este caso veo otro ejemplo. Aquí me interesan ver imágenes, y el dato relevante es la imagen en sí. Para esto la mejor forma de ver esto es a través de un slide show. Además puedo seleccionar una imagen y ver información adicional de esta imagen.
  7. En este caso estoy mostrando un listado de hoteles. En este caso me interesa ver el hotel, el nombre y la ubicación geográfica. Como entre los datos interesantes está la ubicación geográfica del hotel esto lo puedo ver también en forma de mapa, con la ubiccación del hote en este lugar.
  8. En este caso dado que tenemos una relación de jerarquía entre los registros podemos mostrarlo de esta forma, a través de un árbol es la mejor forma de ver estos datos.
  9. Ahora vamos a pasar a los filtros. Existen otras formas de filtrar aparte de la que vimos en el trabajar con. En esta imagen tenemos diferentes tipos de filtro, arriba vemos por ejemplo un filtro por fecha de lanzamiento. Otro por departamento, al estar los departamentos relacionados en una estructura jerárquica se pueden visualizar como árbol… este es otro ejemplo de varios filtros diferentes por atrbitutos. Dominios definidos y por cada item que se selecciona se infiere el centro de la página.
  10. En este caso yo puedo filtrar por letra. Para hacer esto primero la cantidad de valores posibles del filtro tiene que ser acotada. Luego el usuario debe tener en mente porqué valores filtrar y por lo general estos filtros pueden complementarse con otros filtros existentes.