Por fin esta tarde he tenido un poco de tiempo para ver por encima y con un poco de calma los ejemplos de QML. Por lo que he visto hasta ahora, resulta una manera muy efectista de presentar listas, registros o elementos de los mismos de nuestras tablas v7. Se pueden construir modelos complejos de interfaces programando a bajo nivel con QML, se interactua de forma sencilla con webservices, y se puede hacer uso de librerias Javascript para darle mayor versatilidad a QML. El ejemplo de BusGijon es muy bueno.
Pero todo esto (que es mucho) solo nos permite interactuar en un solo sentido. Desde nuestra BD hacia el objeto QML, o desde un webservice hacia nuestro objeto QML. Por lo visto hasta ahora, QML solo lo utilizamos como un mero "visor de datos" mas o menos complejo, en última instancia solo nos permite editar una ficha al modo tradicional v7.
No se si es que todavía nos falta poder tener acceso a los procesos Javascript (a los que solo tienen acceso los Betatesters), pero el mayor valor añadido que particularmente le veo a todo este gran montaje, es poder interactuar con las variables del objeto QML y guardarlas en nuestra BD. Si dedicamos nuestro trabajo a construir un interfaz complejo capaz de interactuar con nuestro modelo de datos de forma compleja o abstracta, o capturar los datos directamente de un webservice, "lo que se espera es poner manejar esos datos y almacenarlos" NO SOLO MOSTRARLOS. Si construimos un gadget en QML para incrustar en un formulario v7 "lo que se espera es que tras interactuar de una forma totalmente novedosa con él, nos permita disparar una accion o un eveto de nuestra aplicacion que produzca un torrente de acontecimientos fuera del objeto QML.
¿Es razonable, que el enorme esfuerzo que supone construir una interfaz a bajo nivel para mostrar un modelo de datos complejo, solo sirva para mostrar datos? Yo creo que no.
Quizás este equivocado, y si que se puedan realizar estas tareas, pero:
¿Como puedo guardar el valor de una variable del objeto QML en mi BD?
¿Desde el objeto QML como puedo desencadenar un evento del formulario sobre el que está incrustado?
¿Como puedo llamar a un proceso de mi aplicación desde la interactuación del objeto QML?
¿Esto lo va a permitir hacer la nueva API de Velneo de JavaScript?
¿Podremos llamar desde el Objeto QML a funciones o procesos JavaScript que desencadenen eventos en nuestros formularios?
Si llegamos a ver eso, entonces compartiré el entuasiasmo que se ha generado. Si no, de momento esto me queda cojo, cojo, cojo.