Guión del Curso
Introducción
El desarrollo de aplicaciones con Tecnología XOne requiere capacidades y conocimientos de informática, así como nociones básicas de las siguientes materias:
XML.
SQL. Lenguaje de consultas de base de datos.
ODBC. Interconexión de distintos Sistemas Gestores de Base de Datos.
Sistemas relacionales de Base de Datos. (MYSQL, SQL SERVER, ORACLE…)
Conocimientos de programación. Lenguajes de Script.
La TECNOLOGÍA XONE responde ampliamente a la necesidad presente hoy en día en muchas empresas tecnológicas de que sus trabajadores estén disponibles independientemente del lugar donde se ubiquen, pudiendo desarrollar trabajos fuera de la cobertura de un único edificio y de forma que la información del negocio se actualice en tiempo real. Estos objetivos son, además, cumplidos sobremanera por la tecnología XOne, lo cual refuerza su carácter innovador.
Las aplicaciones desarrolladas por la tecnología XOne funcionan independientemente de la existencia de cobertura móvil, de los sistemas de información y de la tecnología de comunicación inalámbrica que se desee utilizar.
La tecnología XOne propone:
Soluciones personalizadas válidas para MÚLTIPLES DISPOSITIVOS.
DIFERENTES PERFILES DE USUARIOS y diferentes terminales compartiendo una misma aplicación.
Un ÚNICO DESARROLLO DE CÓDIGO ABIERTO. (XML)
I+D en continua evolución anticipándose a las necesidades del cliente (GPS, RFID, Fotografía, Firma Digital…)
Un MOTOR PROBADO Y COMÚN para todas las soluciones con una personalización total de sus reglas de negocio.
Comunicaciones SEGURAS Y GARANTIZADAS a través de diferentes redes.
Óptimos costes.
Alta escalabilidad, creciendo según las necesidades del cliente.
Entorno multi-idioma.
Conexión a un servidor remoto en tiempo real.
Mantenimiento automático de la solución.
Algunos de los sectores de aplicación de la tecnología XOne son: Administración Pública, Seguros, Plataforma SMS XOne, Tecnología y Comunicaciones, Entrega y Recogida, Energías renovables, Distribución y Logística, Laboratorios Farmacéuticos, Ocio y Tiempo Libre, Construcción, Promotoras Inmobiliarias, Sanidad, Servicios y Banca, Cloud Computing, Alarmas Remotas…
Las características principales de la tecnología XOne son:
Programación/Configuración total a través de ficheros XML o código nativo.
Intérpretes (Framework) para los distintos Sistemas Operativos y dispositivos (PC, Web, Windows Mobile,
BlackBerry…).
Sistema propietario de comunicaciones optimizado para cualquier conexión TCP/IP (ADSL, CABLE, WIFI, GPRS, 3G, etc.).
Integridad referencial de datos entre los distintos dispositivos involucrados en el proyecto.
Réplica Documental.
Réplica de Datos selectiva.
Interacción con cualquier Base de Datos relacional (ORACLE, MSSQL SERVER, MYSQL, INFORMIX, etc.).
Soluciones en producción bajo los entornos más heterogéneos.
Integración a bajo nivel con tecnologías que convergen en dispositivos móviles (GPS, Foto, Video, Firma, Cobro Electrónico, etc.)
En sentido general, la Plataforma XOne ha logrado solucionar los grandes retos a lo que cualquier proyecto de movilidad se debe enfrentar:
A la continuada evolución de los dispositivos y sistemas operativos que hacen descatalogar dichos sistemas en espacios de tiempo relativamente cortos, por lo que el coste de programación se incrementa al tener que adaptarse a las nuevas necesidades, o por el contrario, la vida útil del proyecto se reduce a la vigencia del terminal. Por ello, XOne con su metodología de trabajo abstrayéndose del dispositivo gracias a sus Framework garantiza la evolución del sistema junto con el mercado.
La capacidad de operar a través de redes inalámbricas con ancho de banda limitado o en ausencia de señal, es la realidad que se debería contemplar en todos los ambientes de trabajo, ya que no se puede garantizar un sistema de comunicación continuo. XOne garantiza la sincronización de información conmutando entre redes, paquetizando dinámicamente y automatizando la tarea de comunicar sin intervención del usuario, tanto en el envío como en la recepción.
Gestionar grandes volúmenes de dispositivos se hace una tarea ardua y desequilibrante para aquellos sistemas que no cuenten con administradores de la solución en movilidad. La Plataforma XOne incorpora una herramienta propia cuyo fin es gestionar y administrar la solución de forma remota y para diferentes Plataformas.
Productos y Servicios de la Tecnología XOne
Programación Multidispositivo
La Tecnología XOne provee de FRAMEWORKS para la programación en los distintos dispositivos, estos FRAMEWORKS interpretan una serie de ficheros XML los cuales definen, entre otras cosas, las reglas de negocio de nuestro proyecto.
Réplica
Para inter-comunicar los distintos dispositivos que se estén utilizando en nuestro proyecto: PC, Pocket PC, Blackberry… necesitamos una herramienta que nos permita mantener la integridad referencial de todos los datos de forma transparente tanto el programador como el usuario de la aplicación.
Sus características principales son:
Encriptación y Optimización de la transmisión de datos, con independencia del método utilizado (GPRS, ADSL, WIFI, etc), pudiendo seguir trabajando con total normalidad mientras no tengamos conexión, para cuando volvamos a tener conexión se repliquen normalmente todas las operaciones realizadas sin pérdida de datos.
La manipulación de las fechas en los distintos formatos al igual que otras muchas funcionalidades es completamente transparente.
Interconexión de distintos sistemas de base de datos, instalados en servidor o cliente de réplica, según el dispositivo a utilizar.
Selectividad de datos para los dispositivos.
XOne Integración
Si el cliente ya dispone de un programa que gestiona sus necesidades y lo que quiere es movilizar su aplicación la Tecnología XOne provee de un sistema para interconectar su Base de Datos con otra Base de Datos que será la que utilizaremos para nuestro proyecto.
Ésta herramienta es capaz de establecer una comunicación Bidireccional entre las dos BD, pudiendo comunicar distintos Sistemas de BD como Oracle, MSSQL SERVER, MYSQL, INFORMIX, AS400, Web Services, incluso ficheros XML o texto simple, por regla general todos aquellos orígenes de datos que puedan ser relacionados mediante ODBC.
Los criterios con los que se van a rellenar las estructuras de intercambio estarán ligados a las necesidades de la aplicación móvil. Sin embargo, los mecanismos para importar esos datos no los limitará dicha aplicación móvil, sino el entorno origen de dichos datos. Así pues, es posible tener dos tipos de carga:
XOneManager y XOneLive
La Tecnología XOne provee de una herramienta que simplifica las instalaciones y actualizaciones de los distintos dispositivos, pudiendo gestionar y visualizar el estado de estos en todo momento a través de una sencilla interfaz web.
Sus características principales son:
Permite la instalación de dispositivos desde cero.
Actualización de la aplicación, librerías o Base de Datos.
Administración a través de una sencilla interfaz web que permite:
Visualizar en todo momento el estado de los distintos dispositivos, tanto a nivel de actualizaciones como de réplica.
Adicionar nuevos dispositivos.
Borrado de datos en caso de robo o pérdida del dispositivo.
Copias de Seguridad.Control de Errores.
Herramientas para la Programación con XOne
La Plataforma cuenta con un IDE, XOneStudio, con el que te permite programar, modificar o distribuir las aplicaciones desarrolladas en entorno XOne de forma sencilla y rápida. Con este IDE, tendremos la posibilidad de depurar nuestras aplicaciones, corriendo incluso desde el propio dispositivo.
Este entorno consigue que con la ayuda en la programación y con plantillas que ofrece para desarrolladores nóveles o con experiencia, prácticamente no se necesiten grandes conocimientos del dispositivo, ni tampoco de la base de datos en donde se esté creando el sistema. Así, un programador puede consumir tiempos impensables en la construcción o ampliación de módulos, reduciéndose aproximadamente a la tercera parte del tiempo que en programación normal.
La amplia escalabilidad de esta solución, completamente modulada, permite comenzar con proyectos piloto de escasa complejidad y transformarlos en productos muy acabados y versátiles. De esta forma, se pueden ir añadiendo tantas nuevas funcionalidades como se desee, sin necesidad de modificar el funcionamiento de los otros módulos.
Por este motivo, el conjunto de desarrollos formados por XOne destaca sobre los demás productos.
Algunos de los puntos importantes que tiene la programación con XOne son:
Programación multidispositivo, de tal forma que un único desarrollo es válido para cualquier dispositivo. Esto permite que un programador solo tenga un código, y cuando ponga una actualización, cambie el programa en dispositivos de distinto origen, ya sean Android, iPhone, WP7 o
BlackBerry.
Lenguaje de programación en un XML, con código abierto. Dicho lenguaje es único, sea cual sea el dispositivo.
Programación abstraída de dispositivo y de los elementos del mismo, de tal forma que un desarrollador no tendrá que estudiar nada específico del dispositivo, como son las conexiones o la interacción con dispositivos externos, ya sean lectores de códigos de barras o impresoras. De todo esto se encargará la Plataforma con las diversas herramientas que expone.
Framework habilitados para las distintas Plataformas, siendo compatibles ciento por ciento entre ellas.
Programación multiusuario.
Inserción de código script para reglas de negocios complejas requeridas por el cliente.
Utilización de
CSS para la elaboración de las aplicaciones.
Integración con códigos propios creados por los desarrolladores externox. Hay que tener en cuenta que cada parte que forma una aplicación de movilidad es un módulo independiente, de tal forma, que cualquier puede ser utilizado independientemente. Uno de los métodos más utilizados, es el sistema de réplica, con lo que el cliente podrá tener su aplicación ya creada, y solo utilizar de la Plataforma esa parte. Para ello la Plataforma ofrece distintos conectores para cada uno de los módulos.
Integración de desarrollos visuales mediante llamadas de código nativo de los propios desarrolladores.
XOne provee de un conector para utilizarlo con la aplicación nativa del cliente. Para ello es necesario que la base de datos, este normalizada por XOne, con las tablas de réplica necesarias para el funcionando de la misma. Una vez realizada dicha normalización, el acceso a datos de la aplicación del cliente debe gestionarse a través del conector XOne Data Provider, incorporando así la funcionalidad del sistema de réplica del cliente, gestionando por tanto el intercambio de información mediante este mecanismo. De este modo, la sincronización de datos emplearía el mecanismo genérico de comunicaciones de XOne.
El siguiente link, Video de XOneStudio, nos muestra cómo sería la programación con dicho IDE, con el que podremos ver la depuración de XOne corriendo la aplicación en un emulador de Android.
Aquí se muestra una imagen del IDE de programación de XOne.
Distribución Horaria del Curso
LUNES | MARTES | MIÉRCOLES | JUEVES | VIERNES |
Presentación componentes Plataforma XOne | XOne Studio Mappings y Appwizard | XOne Studio Mappings y Appwizard. VBScript | XOne Studio Mappings y Appwizard. VBScript | Replica.Conceptos. RL |
DESCANSO |
Estructura general del sistema. Mappings | XOne Studio Mappings y Appwizard | XOne Studio Mappings y Appwizard. VBScript | XOne Studio Mappings y Appwizard. VBScript | Replica. Ficheros. Tablas en BD |
COMIDA |
Diseño aplicación. Base de datos SQL | XOne Studio Mappings y Appwizard. VBScript | XOne Studio Mappings y Appwizard. VBScript | XOne Manager. XOneLive | Interface |
DESCANSO |
XOne Studio. Mappings y Appwizard | XOne Studio Mappings y Appwizard. VBScript | XOne Studio Mappings y Appwizard. VBScript | XOne Manager. XOneLive | Interface |
ESTRUCTURA NODO COLL EN EL FICHERO MAPPINGS.XML
ESTRUCTURA FICHERO APPWIZARD.XML
Detalle del fichero Mappings.xml
Estructura del nodo COLL
Nodo group
Props
Reglas de Negocio
ASFilter
Principales Atributos del Nodo <Coll>
name=“Nombre del campo en BD”
sql=“Sentencia SQL”
objname=“Objeto del que leemos”
updateobj=”Objeto que vamos a actualizar“
-
filter=“Sentencia “WHERE” de SQL”
sort=“Sentencia “ORDER BY” de SQL”
Colecciones esenciales:
Empresa
Usuarios
Title
Fontsize
Editwidth
Editheight
Loadall
Autocreatefill
Withopen
Sql-debug
Nodo <PROP>
name=“Nombre del campo en BD”
group=“Numero Pestaña”
visible=“Valor decimal de la máscara de bits”
fieldsize=“Tamaño visible en pantalla”
size=“Tamaño en BD”
type=“Tipo de dato en BD”
Propiedades
Atributos de propiedades de relacionadas con los datos, relacionadas con la visualización.
Tipos de propiedades posibles:
Atributos de <Prop>
Type
Visible
Size
Fieldsize
Title
Conceptos
Atributos
Fontsize
Left
NODO field
name=“FECHA1”
fldname=“FECHA”
oper
Operaciones
Macros
width=“10”
newline=“false”
-
value:Macros.
Valor del nodo
Macros
Nodo Macro
Name=”##MACRO1##“
value=“1=1”
default=“true”
Applyto=”##MACRO1##
Contents con Asfilter
Filtrosespeciales
Coll: dropdown
Asfilter: dropcoll
Formulas y Ext-Formulas
Totales
Botones y Coll-Actions
Eventosespeciales
Contents sin padre
Tipos de datos. Variables. Operadores. Condicionales
Estructura de objetos. Colecciones y sus atributos, Propiedades, Objetos
Objeto This
Bucles
Modelo completo de datos
This.contents
Appdata.getcollection
Coll.startbrowse
Coll.movenext
Coll.endbrowse
Coll.currentItem
Obj.save
Obj.delete
Coll.createobj, coll.addItem Empty, obj
Validate: appdata.popvalue, appdata.pushvalue.
Appdata.writeconsolestring
Objeto User
Coll.variables(“contador”)=
-
Ownercollection/Ownerobject
-
Búsqueda directa (set obj=getcollection(“
ArtBusc”)(“ID”,ctsr(numart))
For each
-
Loadall
Full
CGSUI
linkfilter
-
-
-
-
Colección de Avisos / Scripts
Colecciones para implementación de Geoposicionamiento (GPS)
Utilización de Hojas de Estilo “a la css”
Frames y vistas de datos especiales