Documentación de Velneo
35
35
  • Introducción
  • Velneo
    • Requerimientos de Velneo
    • Notas de la versión
    • Funcionalidades comunes a los componentes de Velneo
      • Instalación
      • Conexión con Velneo vServer
      • Cambiar el estilo de visualización
      • Cambiar el aspecto
      • Ver u ocultar barras de herramientas
      • Mensajería interna entre usuarios
      • Soporte de alta resolución (HighDPI)
      • Carpetas de trabajo de los componentes de Velneo
      • Numeración de versiones de Velneo
      • Certificado de firma digital para componentes de Windows
    • Tipos de archivo generados por Velneo
    • Velneo Web
      • Plataformas y navegador compatibles
      • Acceso a recursos del sistema
      • Siempre HTTPS
      • Funcionamiento de VATPS por websocket
      • CORS para llamadas XmlHttpRequest vía API o mediante el objeto Consumo servicio Web
  • Aplicación vLanzadera y login social
    • Configuración de vLanzadera en Apache en el Cloud de Velneo
    • Configuración de vLanzadera en Apache en servidores propietarios
  • Velneo vDevelop
    • ¿Qué es Velneo vDevelop?
    • Identificación de usuario
    • Interfaz de Velneo vDevelop
      • Dock de proyecto
      • Menú Soluciones
      • Menú Proyectos
      • Menú Objetos
      • Menú Scripts
      • Menú Edición
      • Menú Ver
      • Menú Componentes
      • Menú Ayuda
    • Lista de teclas aceleradoras de Velneo vDevelop
    • Soluciones y proyectos
    • Control y edición de proyectos
    • Herencia
    • Inspectores
    • Proyectos objetos y editores
      • Proyecto de datos
      • Proyecto de aplicación
        • Crear CSS para aplicar a objetos en edición
      • Objeto
        • Refactorización automátca
        • Exportación e importación de objetos
      • Objetos de proyecto de datos
        • Indice complejo
        • Tabla
          • Actualización
          • Campo
          • Enlace
          • Indice
          • Plural
          • Traspaso de campo
          • Trigger
        • Tabla estática
        • Variable
      • Objetos de proyecto de aplicación
        • Acción
        • Alternador de lista
        • Arbol visor de tablas
        • Bloc de formularios
        • Casillero
        • Cesta
        • ComboView
        • Control SVG
        • Dispositivo serie
        • Formulario
          • Controles de visualización
            • Texto estático
            • Nombre de campo
            • Visor HTML
            • Dibujo
            • Imagen SVG
            • Caja de grupo
            • Menú arbolado
            • Barra de progreso
            • Reloj
            • Manómetro
            • Termómetro
          • Controles de edición
            • Caja de texto
            • Caja de texto enriquecido
            • Data catcher edit
            • Edición alfabética
            • Edición fecha
            • Edición fecha/hora
            • Edición fórmula
            • Edición hora
            • Edición numérica
            • Edición senda fichero
            • Edición senda directorio
            • Objeto dibujo
          • Controles de entrada
            • Botón
            • Botón de check
            • Botón de radio
            • Calendario
            • ComboBox
            • Deslizador
            • Dial
            • ListBox
            • Rueda
          • Contenedores
            • Área de scroll
            • Caja de formularios
            • Pila de formularios
            • Separador de formularios
            • Splitter
            • Vista de datos
          • Layout
          • Tree widget
          • Controles SVG
          • Extensión de ficha
        • Formulario QML
        • Gráfico
        • Imagen SVG
        • Impresora lógica
        • Informe
          • Editor de informes
          • Agrupamiento
          • Sección
          • Cálculo
        • Informe personalizable
          • Diseñando un informe personalizable básico
          • Diseño avanzado
          • Diseñando un informe personalizable
          • Añadiendo orígenes de datos
          • Añadiendo elementos al informe
          • Características avanzadas
          • Etiquetas
          • Asistente de scripts
          • Impresión de gráficos
          • Opciones html
        • ListView
        • Lista QML
        • Localizador
        • Marco
        • Menú
        • Multivista
        • Protocolo TCP-IP
        • Reemplazo
        • Rejilla
          • Columna de rejilla
        • Rejilla avanzada
          • Columna de rejilla avanzada
        • Toolbar
        • ViewFlow
        • Sub-objetos de vistas de datos
          • Conexión de evento
          • Drop
          • Inserción
          • Manejador de evento
          • Variables locales especiales
      • Objetos comunes a proyecto de datos y de aplicación
        • Búsqueda
        • Cola
        • Constante
        • Consumo servicio Web
          • Proceso de respuesta de consumo servicio Web
          • Códigos de error de consumo servicio Web
        • Dibujo
        • Esquema de tablas
        • Fichero adjunto
        • Función
        • Librería externa
        • Lupa
        • Proceso
          • Indice de comandos de instrucción de proceso
          • Comandos de base de datos
            • API
            • Bases de datos externas
            • Búsquedas
            • Campos (grupo de comandos)
            • Cestas
            • Fichas
              • Enum de errores de JSON/CSV
            • Fichas seleccionadas
            • Listas
            • Tablas
            • Tubos
          • Básicos
            • Controles de flujo
            • Debug
            • Ejecución
            • Salida/retornos
            • Scripts (grupo de comandos)
            • Transacciones (comandos)
            • Variables
          • Comunicación
            • GPS
            • Internet
            • Protocolo TCP
            • Puerto serie
            • SDV
          • Interfaz
            • Acciones (comandos)
            • Controles
              • Ejemplos de CSS
            • Diálogos
            • Formularios - comandos
            • Localizadores
            • Objeto - grupo de comandos
            • Ventana principal
            • Vista de datos - comandos
          • Sistema
            • Comandos de Sistema
            • Configuración
            • Directorios
            • Ficheros
        • Tubo de ficha
        • Tubo de lista
        • Variable local
      • Editores
        • Asistente de fórmulas
          • Operadores
          • Funciones estándar
            • Funciones API
            • Funciones básicas
            • Funciones de cadenas
              • Expresiones regulares
            • Funciones científicas
            • Funciones de Cliente-servidor
            • Funciones de color
            • Funciones de códigos
              • Lista de codecs
            • Funciones de directorios
            • Funciones de fechas
            • Funciones de ficha en curso
            • Funciones de horas
            • Funciones JSON
            • Funciones de Internet
            • Funciones de juegos de caracteres
              • Codecs
            • Funciones numéricas
            • Funciones de sistema
            • Funciones de tiempo
            • Funciones trigonométricas
          • Funciones de dll
          • Funciones de proceso
          • Funciones remotas
          • Funciones de campo
          • Campos
          • Constantes
          • Variables globales
          • Variables locales
          • Variables del sistema
          • Buscar/Reemplazar (Ctrl + F)
          • Verificador de fórmulas
          • Conversión automática de datos
          • Introducción de datos literales
          • Secuencias de escape en cadenas de caracteres
          • Composición de sendas en fórmulas
          • Operar con datos de tipo fecha, hora y tiempo
        • Editor de imágenes
        • Selector de fuentes
    • Scripts
      • Lenguajes
        • JavaScript
          • Procesos JavaScript
          • Fórmulas JavaScript
          • Clases
            • Funciones globales
            • Objetos
            • FormData
            • VAbstractBrowser
            • VAbstractDataView
            • VAbstractListDataView
            • VAdvandedGridListDataView
            • VAlternatorListDataView
            • VApp
              • VApp: enumeraciones
              • VApp: ejemplos
            • VBoundFieldComboBox
            • VBoundFieldEdit
            • VBoundFieldEditBrowser
            • VBoundFieldListBox
            • VByteArray
            • VCheckBox
            • VClipboard
            • VClockWidget
            • VComboBox
            • VComboListDataView
            • VCoverFlowListDataView
            • VCWebView
            • VDataCatcherEdit
            • VDataCatcherEditBrowser
            • VDataView
            • VDataViewDialog
            • VDateEdit
            • VDateEditBrowser
            • VDateTimeEdit
            • VDateTimeEditBrowser
            • VDial
            • VDir
            • VExtension
              • VExtension: enumeraciones
            • VFile
              • VFile: enumeraciones
            • VFileInfo
            • VFilePathEditBrowser
            • VFinder
            • VFont
            • VFormBlockListDataView
            • VFormDataView
            • VFormulaEditBrowser
            • VGaugeWidget
            • VGPS
            • VGridListDataView
            • VGroupBox
            • VImage
            • VImageEdit
            • VImageWidget
            • VInstancesList
            • VInstance
            • VInstances
            • VItemRegisterPattern
            • VLabel
            • VLineEdit
            • VLineEditBrowser
            • VListBox
            • VListDataView
            • VLogin
            • VMainWindow
              • VMainWindow: enumeraciones
              • VMainWindow: ejemplos
            • VMdiView
            • VMimeData
            • VMultiDataView
            • VNumberSpinBox
            • VNumberSpinBoxBrowser
            • VObjectInfo
              • VObjectInfo: enumeraciones
            • VObjectInstance
            • VProcess
            • VProgressBar
            • VProjectInfo
            • VPushButton
            • VQmlFormDataView
            • VQmlListDataView
            • VQmlListModel
            • VQuery
            • VRadioButton
            • VRegister
            • VRegisterList
            • VReportListDataView
            • VRequest
            • VResponse
            • VRoot
            • VScreen
            • VScrollArea
            • VServerAdmin
            • VSettings
            • VSlider
            • VSlotListDataView
            • VSolutionInfo
            • VSplitter
            • VSqlDatabase
            • VSSLCertificate
            • VSSLKey
            • VSSLInfo
            • VSSLSessionCipher
            • VStackedWidget
            • VSvgButton
            • VSvgSlideSwitch
            • VSvgToggleSwitch
            • VSvgWidget
            • VSysInfo
              • VSisInfo: enumeraciones
            • VTableInfo
              • VTableInfo: enumeraciones
            • VTabWidget
            • VTextEdit
            • VTextFile
            • VThermometerWidget
            • VThumbWheel
            • VTimeEdit
            • VTimeEditBrowser
            • VToolBox
            • VTreeItem
            • VTreeItemRegister
            • VTreeListDataView
            • VTreeMenu
            • VTreeMultiTableListDataView
            • VTreeWidget
            • VUser
            • VUserGroup
            • VUserGroupList
            • VUserList
            • VXmlReader
            • VXmlWriter
            • Widget
            • XMLHttpRequest
        • QML
          • Tipos QML
            • Documentación para migrar de QtQuick Controls 1.X a 2.X
          • Funciones específicas de QML
    • Depuración
      • Depuración de procesos de Velneo
      • Monitor de vClient
    • Extensiones de Velneo vDevelop
    • Acceso directo a una solución desde vDevelop
    • Buenas prácticas
      • Buenas prácticas de organización
        • Proyectos
        • Organización de carpetas
        • Proyecto de datos
        • Proyecto de aplicación
      • Buenas prácticas de codificación
        • Identificadores
        • Teclas aceleradoras
        • Documenta
        • Diseña los formularios como si no existiesen los layouts
      • Buenas prácticas de rendimiento
        • Arquitectura
          • Listas de registros
          • Lista de resultados de una búsqueda
          • Las cestas
          • Las variables globales
          • La caché de fichas
          • Programa en cloud
        • Formularios
          • Condiciones de visible y activo
          • Carga de subformularios en pestaña, caja o pila
        • Base de datos
          • Campos
          • Indices
          • Actualizaciones
          • Eventos de tabla o triggers
          • Variables globales y constantes
          • Tablas en memoria vs tablas en disco
          • Optimizar migraciones de datos
          • Búsquedas en el servidor ¿Cuándo y Cómo?
          • Campos fórmula vs campos en disco
          • Indices condicionados vs búsquedas complejas
          • ¿Cuándo usar tablas de extensión?
          • Indices de trozos y palabras
          • ¿Cuándo usar cada tipo de campo alfa?
        • Procesos y funciones y eventos
          • 1º, 2º, 3º y 4º plano ¿Cuándo usar cada uno?
          • Bloqueo blando vs bloqueo duro
          • Pasar información del cliente al servidor
          • ¿Cómo optimizar transacciones grandes?
          • ¿Cómo gestionar las transacciones?
          • Grabaciones optimizadas para el usuario
        • Carga de registros en objetos de lista
          • Rejillas
            • Campos punteros a singular
            • Totales
            • Condiciones de activo, visible y color en columna
            • Campos de tipo objeto
        • Conoce los límites
      • Imágenes
      • Buenas prácticas para el desarrollo en equipo
      • Modo mantenimiento
    • Análisis de bases de datos para aplicaciones de Velneo
      • Un centro de enseñanza
      • Facturas de un cliente
      • Repartos de obras de teatro
      • Galería de arte
      • Gestión de un colegio
      • Instalación de lunas para vehículos
      • Libros y autores
      • Tienda de discos
      • Últimos pedidos de un proveedor
      • Existencias por almacén y precios por cliente
      • Generación de tickets para un quiosco
      • Navegación por facturas
  • Velneo vDevelop Web
  • Velneo vAdmin
    • ¿Qué es Velneo vAdmin?
    • Activación de licencias de Velneo vServer
    • Gestión de usuarios
    • Gestión de aplicaciones
      • Soluciones
      • Instancias
      • Disco
    • Monitorización
      • Lista de comandos
    • Tareas
    • Acceso directo
    • Velneo vAdmin Web
  • Velneo vClient
    • ¿Qué es Velneo vClient?
    • Movilidad
    • Funcionalidades de Velneo vClient
      • Accesos directos y VRL
      • Cambiar idioma
      • Panel de multitarea: procesos, colas y servicios
      • Manejo de rejillas
        • Submenú de filtros
      • Uso de la rejilla avanzada
      • Formularios: inducción automática del maestro en altas de registros de tablas plurales
      • Manejo de cestas
      • Refrescos
      • Caché local
      • Edición de campos enlazados a maestro
      • Edición de campos de tipo fecha
      • Capturar imagen desde una cámara
      • Asignar impresoras lógicas
      • Actualización automática
      • Personalización de la ventana de conexión de Velneo vClient
      • Instalador personalizado de Velneo vClient
      • Ordenación de listas
      • Listas virtuales
  • Velneo vClient Web
    • Cómo incrustar una aplicación de Velneo Web en un DIV de una página html
  • Velneo vServer
    • ¿Qué es Velneo vServer?
    • Instalación y configuración
      • Línea de comandos de Velneo vServer
      • Parámetros configurables de Velneo vServer
        • Componer certificado fullchain
        • Certificados TLS/SSL para intranets
      • Estructura de directorios
    • Iniciar y detener Velneo vServer
    • Funcionalidades
      • Protocolo VATPS
      • Protocolo VATP
      • Multi-hilo
      • Integridad referencial
      • Refrescos terciarios
      • Sistema transaccional
      • Sistema de bloqueos
      • Tecnología bigkey
      • Hilo de control
      • Colas de procesos en 4º plano
    • vPacker
      • Mensajes de log de sistema
  • Velneo vInstallBuilder
    • ¿Qué es Velneo vInstallBuilder?
    • Configurar una instalación
    • Probar una instalación
    • Crear el instalable
    • Accesos directos
  • Velneo vModApache
    • ¿Qué es Velneo vModApache?
    • Instalación y configuración
    • Nomenclatura de objetos en urls
    • Uso de ficheros adjuntos
    • Caché local de Velneo vModApache
  • Optimización del consumo de memoria en Apache
  • Velneo vDataClient
    • ¿Qué es Velneo vDataClient?
    • Iniciar Velneo vDataClient
    • Interfaz de Velneo vDataClient
      • Panel de tablas
      • Panel de datos
    • Procesos
    • Utilidades
    • Acceso directo a una instancia de datos
    • Velneo vDataClient Web
  • Velneo vTranslator
    • ¿Qué es Velneo vTranslator?
    • Importación y exportación basada en XLIFF
    • Acceso directo a una solución
  • Velneo ODBC Driver
    • ¿Qué es velneo ODBC Driver?
    • Referencia de comandos SQL
  • Velneo vVersion
    • ¿Qué es Velneo vVersion?
  • Velneo vERP
    • ¿Qué es Velneo vERP?
    • Manual del programador
    • Documentación de la ApiRest
    • Novedades de la versión
  • Velneo vTutor
    • ¿Qué es vTutor?
    • Tutores de objetos básicos
      • Tutor de árboles visores de tablas arboladas
      • Tutor de búsquedas
      • Tutor de cestas
      • Tutor de formularios
      • Tutor de informes
      • Tutor de localizador básico
      • Tutor de marcos
      • Tutor de rejillas
      • Tutor de rejillas avanzadas
    • Tutores de objetos avanzados
      • Tutor de alternadores de lista
      • Tutor de comboview
      • Tutor de drag and drop
      • Tutor de eventos
      • Tutor de tablas de extensión y extensiones de ficha
      • Tutor de tubos de ficha y de lista
      • Tutor de grabación de fichas
      • Tutor de gráficos
      • Tutor de impresión de informes
      • Tutor de lupas
      • Tutor de protocolo TCP/IP
      • Tutor de reemplazo
    • Tutores de controles
      • Tutor de botones de menú
      • Tutor de controles SVG
      • Tutor de edición numérica
      • Tutor de visor html dinámico
      • Tutor de vistas de datos de lista
    • Tutores de procesos y manejadores de evento avanzados
      • Tutor de cambio de marco
      • Tutor de comandos de interfaz y acciones
      • Tutor de importación y exportación de ficheros ASCII
      • Tutor de portapapeles
      • Tutor de procesos
      • Tutor de SDV
    • Tutores de scripts
      • QML: hola mundo
      • QML: tutor básico
      • QML: tutor de vistas
      • Tutor de XMLHttpRequest (webServices)
  • Velneo cloud
    • ¿Qué es Velneo Cloud?
    • Panel de control vServer cloud
      • URC
      • vServer
      • Apache
      • SFTP
      • Usuarios
      • Copias
    • Copias de seguridad automáticas
    • Velneo Cloud API
      • Uso de Velneo cloud API
    • Explorador de archivos cloud sFTP
    • TCP en Velneo cloud
    • Dominios de empresa y certificados
    • Velneo vModApache en cloud
    • SLA
    • Hora de los servidores en el cloud de Velneo
    • Arranque automático de un servidor tras una parada no controlada
    • ¿Qué puedo hacer si tengo una incidencia en mi servidor cloud?
Con tecnología de GitBook
En esta página
  • Aviso de Seguridad: Problema en la gestión de HTTP2 (implementación 35.3)
  • vLanzadera y versión 35.2
  • Nuevo motor JavaScript por defecto
  • Nota importante sobre el uso de la sentencia "use strict" en scripts con el nuevo motor JavaScript
  • vLanzadera: nota importante para vLanzaderas personalizadas
  • Fin del soporte de los comandos de instrucción de proceso el Grupo Scripts
  • Uso de Velneo Cloud API vía RFC obsoleto
  • Con esta versión finaliza el soporte de QML QtQuick 1.x y QtQuick.controls 1.x
  • Soporte de macOS ARM/Intel
  • Cambio de versión de librerías de integración con el sistema para Android e iOS
  • Cambio de comportamiento en Android: al ganar el foco un control de edición activa el teclado virtual y al pulsar intro no lo oculta
  • Gestión local de Últimas soluciones y servidores de desarrollo
  • No funciona la cámara cuando se usa desde QML en Android
  • En vClient iOS la ventana de los submenús se abre detrás de la ventana del menú padre (VELNEO-17945. Corregida en versión 35.1)
  • No lanza formulario de edición en una lista QML con la señal "selectionChanged" (VELNEO-17881. Corregida en versión 35.1)
  • No se puede acceder a las cámaras en dispositivos móviles Android e iOS (VELNEO-17839. Corregida en versión 35.1)
  • Los informes personalizables no son funcionales en Android (VELNEO-17909. Corregida en versión 35.1)
  • vDataClient: en el asistente de procesos no son funcionales los procesos con origen ficha (VELNEO-17829. Corregida en versión 35.1)
  • Se deja de distribuir la librería vRemoteFunctionV7.dll
  • Mejoras de rendimiento en beta

¿Te fue útil?

  1. Velneo

Notas de la versión

Es conveniente leer la información siguiente antes de actualizar a esta versión

Última actualización hace 2 meses

¿Te fue útil?

Ver .

Aviso de Seguridad: Problema en la gestión de HTTP2 (implementación 35.3)

Se ha identificado una vulnerabilidad relacionada con el manejo de conexiones HTTP2, asignada como CVE-2024-39936. Esta falla permite enviar datos a un servidor con un certificado TLS no coincidente que puede ser explotado mediante técnicas Man-in-the-middle en casos como redirección y otros.

Para evitar el problema con servidores web no conocidos en aplicaciones que utilicen y , se recomienda desactivar HTTP2.

En Velneo podremos hacerlo mediante la configuración de una clave beta:

http2NotSupported = C5A39F2332858154F02E045F64F7FFF8985F4F41

Las claves beta son entradas en la rama beta de Velneo del registro del sistema operativo. Se recomienda generarlas desde un proceso con el comando de instrucción de proceso para establecerlos, ejecutándolo en 1er plano (si vamos a usar esos objetos en el cliente) o en 3er plano (si los vamos a usar en el servidor). Los parámetros se resolverán como indicamos a continuación:

Configuración de sistema: Escribir cadena de texto ( "Velneo", "beta", "http2NotSupported", "C5A39F2332858154F02E045F64F7FFF8985F4F41")

Configuración mediante clave de registro

Clave de registro http2NotSupported con el valor C5A39F2332858154F02E045F64F7FFF8985F4F41. Si esta clave está activa, el uso de HTTP2 no se permite.

Estas medidas aseguran la seguridad de las aplicaciones en entornos donde esta vulnerabilidad podría ser explotada.

vLanzadera y versión 35.2

Si actualizamos a la versión 35.2 de Velneo vServer debemos actualizar también la vLanzadera a la versión 35.2; en caso contrario, el login dejará de funcionar.

Nuevo motor JavaScript por defecto

El nuevo motor JavaScript es más potente y versátil, adaptado a la nueva generación de motores JavaScript. Ya disponible durante varias versiones con clave beta, se unifican ahora el motor Javascript de Velneo con el que ya estabas disfrutando en QML.

Incluye soporte de Ecmascript 7 Mejora del sistema de detección de errores en caso de include, indicando el fichero y la línea del fichero incluido que tiene el error. Prueba tus scripts para comprobar que funcionan correctamente y cumplen las normas de Ecmascript 7, ayúdate de la opción de Verificar sintaxis del Editor de scripts. Comprueba que todas las variables usadas en tus javascript tienen correctamente definido el ámbito de ejecución (scope), ya que se trata del error más habitual, que el anterior motor no detectaba. En el caso de que el motor lo detecte, indicará un error de referencia que deberás subsanar en el código, y verificar que el script funciona como esperas.

Configuración de sistema: Escribir cadena de texto ( "Velneo", "beta", "scriptEngine", "7EFBF36FB471A2235790C210208E41380D5ADE76" )

El procedimiento sería:

  • Ejecutar la aplicación, lanzar el proceso en primero y/o tercer plano, según donde queramos activarla.

  • En el ámbito del cliente, las claves serán operativas en siguientes sesiones que se lancen del mismo.

  • En el ámbito del servidor, las claves serán operativas en cuanto se reinicie.

En el caso de vModApache se configurará en el fichero donde tengamos configurados los location. Se aplicará a nivel general, no en el ámbito de cada location. Para ello usaremos una directiva propia llamada VelneoBetaKey. Ejemplo:

Se añadirá al fichero httpd.conf lo siguiente:

VelneoBetaKey scriptEngine=7EFBF36FB471A2235790C210208E41380D5ADE76

Nota importante sobre el uso de la sentencia "use strict" en scripts con el nuevo motor JavaScript

En el antiguo motor de JavaScript la sentencia "use strict" no se aplicaba, por lo que era menos estricto con la interpretación y ejecución del código.

En el nuevo motor JavaScript, sí se aplica, por lo código que veníamos usando y funcionaba en versiones anteriores, puede fallar. Por ejemplo, la gestión documental de vERP. Donde se utilizaban variables sin declarar. Por ejemplo, en el código siguiente, se usa una variable i que no ha sido declarada previamente:

for (i=0; i < z; i++)

Esto provocará un error de la ejecución del componente de Velneo cuando se ha aplicado previamente la sentencia "use strict". El código correcto sería:

for (var i=0; i < z; i++)

O así:

var i;
for (i=0; i < z; i++)

vLanzadera: nota importante para vLanzaderas personalizadas

Los estáticos de la vLanzadera se actualizan automáticamente en la migración de datos al ejecutar por primera vez la lanzadera en vClient y aceptar el diálogo de actualización. Para los usuarios que hayáis hecho modificaciones en el estático de body.html y lo tengáis marcado como personalizado, no se actualizará el estático y tendréis que modificar el registro manualmente.

Al final del documento hay que añadir una línea con %%CUSTOMIZED%%, de modo que quede así (incluimos solo el bloque de código afectado):

<!-- <script type="text/javascript" src="%%RELATIVE_SITE_PATH%%/assets/js/app.js?v=20200901-4"></script> -->
<script type="text/javascript">
%%APP_JS%%
%%DEBUG_LOGS%%
$( document ).ready(function() {
%%APP_JS_CALLS%%
%%CUSTOMIZED%%
});
</script>
</body>
</html>

Fin del soporte de los comandos de instrucción de proceso el Grupo Scripts

Uso de Velneo Cloud API vía RFC obsoleto

Con esta versión finaliza el soporte de QML QtQuick 1.x y QtQuick.controls 1.x

Con esta versión finaliza el soporte de QML QtQuick 1.x y QtQuick.controls 1.x. Se tendrán que migrar a Qt Quick 2 obligatoriamente. Habrá que migrar los controles a Qt Quick Controls 2.

Soporte de macOS ARM/Intel

Las próximas versiones serán compatibles de forma completa con los nuevos procesadores Apple con ARM. No será necesario el uso del soporte de Rosseta, aprovechando de esta forma las mejoras de rendimiento e integración que aportan las versiones ARM puras.

Pero también estamos trabajando para soportar procesadores Intel usando la misma instalación, por lo que no quedarán obsoletos los equipos que aún mantengan el uso de procesadores Intel.

Cambio de versión de librerías de integración con el sistema para Android e iOS

La versión 35 de Android e iOS pasan a usar una nueva versión de librerías de integración con el sistema, lo que implica:

  • Cambios en el motor JavaScript también pero, a diferencia de los componentes de escritorio, será único, no se podrá volver al motor anterior.

  • Cambios en QML, se tendrán que migrar a Qt Quick 2 obligatoriamente. Habrá que migrar los controles a Qt Quick Controls 2.

  • Cambios en módulos de QML, como GraphicEffects, entre otros, que es deprecated.

En el caso de que hayas actualizado a la versión 35 y aún no has hecho los cambios necesarios en el QML para que tu desarrollo funcione con esta versión, aquí tienes los enlaces para descargar el vClient de Android de la versión 34.

En la versión 36 pasaremos el resto de los componentes de la plataforma a la nueva versión de librerías de integración con el sistema.

Cambio de comportamiento en Android: al ganar el foco un control de edición activa el teclado virtual y al pulsar intro no lo oculta

Opciones para cambiar el nuevo comportamiento de teclado virtual en controles de edición al aceptar

Por medio de una clave beta podemos alterar el comportamiento y evitar que se vuelva a abrir el teclado cuando aceptamos en un formulario en el que únicamente hay un control de edición.

enableVirtualKeyboardWorkaround = 12904136A037B5417B399964F2D899D7A2737C9C

Configuración de sistema: Escribir cadena de texto ( "Velneo", "beta", "enableVirtualKeyboardWorkaround", "12904136A037B5417B399964F2D899D7A2737C9C" )

Gestión local de Últimas soluciones y servidores de desarrollo

Se implementa la gestión local de Últimas soluciones y servidores de desarrollo, que desde la versión 35 es local y por dispositivo, y no es compartida entre dispositivos.

No funciona la cámara cuando se usa desde QML en Android

En la versión actual no es funcional la cámara en dispositivos Android cuando la usamos desde QML.

En vClient iOS la ventana de los submenús se abre detrás de la ventana del menú padre (VELNEO-17945. Corregida en versión 35.1)

en iOS la ventana de los submenús se abre detrás de la ventana del menú padre.

No lanza formulario de edición en una lista QML con la señal "selectionChanged" (VELNEO-17881. Corregida en versión 35.1)

Cuando desde un QML y un objeto lista QML, lanzamos la señal “selectionChanged” esta señal no la captura Velneo y por tanto, no lanza el formulario de edición asociado al objeto listaQML.

No se puede acceder a las cámaras en dispositivos móviles Android e iOS (VELNEO-17839. Corregida en versión 35.1)

Los informes personalizables no son funcionales en Android (VELNEO-17909. Corregida en versión 35.1)

Sí son funcionales los informes nativos.

vDataClient: en el asistente de procesos no son funcionales los procesos con origen ficha (VELNEO-17829. Corregida en versión 35.1)

Se deja de distribuir la librería vRemoteFunctionV7.dll

Mejoras de rendimiento en beta

Si quieres disfrutar de la versión beta de estas opciones, debes activar ciertas claves beta correspondiente en el cliente (en el caso de los objetos de interfaz) y también en el servidor (en el caso de procesos).

Configuración de sistema: Escribir cadena de texto ( "Velneo", "beta", "clave", "valor" )

El procedimiento sería:

Ejecutar la aplicación, lanzar el proceso en primero y/o tercer plano, según corresponda.

En el ámbito del cliente, las claves serán operativas en siguientes sesiones que se lancen del mismo.

En el ámbito del servidor, las claves serán operativas en cuanto se reinicie.

En el caso de vModApache se configurará en el fichero donde tengamos configurados los location. Se aplicará a nivel general, no en el ámbito de cada location.

Para ello usaremos una directiva propia llamada VelneoBetaKey. Deber tener la siguiente sintaxis:

VelneoBetaKey clave=valor

Las claves beta se leen en el arranque del componente donde se apliquen.

En vClient: se puede ver en consola. En el caso de Windows podremos comprobarlo ejecutando Velneo vClent desde la ventana de comandos del sistema (CMD) redirigiendo la salida a un fichero de texto.

Ejemplo: vClient.exe > c:\log\logvClient.exe.

En el caso de Velneo vModAapche, tras arrancar el servicio de Apache debería aparece un mensaje similiar al siguiente en el fichero error.log de Apache: "Activando la clave beta NombreDeClave."

Estas son las distintas claves beta que podemos configurar:

    • Clave: optimizarRejillasClient

    • Valor: 8DF627183E075E86BADCF82C11D4F931E8BF62D8

    • Ámbito: cliente.

    • Clave: optimizarFormulariosClientFormulas

    • Valor: ED979A19EEFC93EE0E4F58FB93F432BF258E1E33

    • Ámbito: cliente.

  • Procesos, optimización de parámetros:

    • Clave: optimizarInstruccion

    • Valor: F15868161C0B05825E38ADE94001D5D9926CDFB7

    • Ámbito: cliente, servidor y Apache.

A partir de la versión 35, activamos por defecto el de Velneo. Este cambio afecta tanto a la ejecución en el cliente como en el servidor. Te recomendamos comprobar el correcto funcionamiento de los procesos JavaScript de tus aplicaciones con el nuevo motor antes de desplegar.

Con este motor deja de ser operativa la JavaScript que había en versiones anteriores, así como las funciones asociadas como print().

Si, por el motivo que sea, queremos que se siga usando el motor anterior, podemos crear la siguiente clave beta en registro del sistema operativo. Se recomienda generarla desde un proceso con el comando de instrucción de proceso para establecerla, ejecutándolo en 1º (para activarla en el cliente) y 3º plano (para activarla en el servidor). Los parámetros se resolverán como indicamos a continuación:

A continuación puedes descargar un archivo que incluye dos procesos: uno que crea la clave beta y otro que la borra. Para incluirlos en un proyecto no tienes más que usar la opción del de Velneo vDevelop. Recuerda que debes lanzarlos en primer plano para crear/borrar la clave en el ámbito del cliente y en tercer plano para crearla/borrarla en el del servidor.

En la aplicación , se añade un nuevo registro en de customized.js. Para su funcionamiento se ha modificado el body.html y se ha añadido una línea.

El ya no es funcional para las plataformas Android e iOS. Para el resto de las plataformas, desaparecerán en la versión 36. En el enlace anterior se indica la alternativa que recomendamos aplicar.

Consideramos obsoleto el uso de funciones remotas para interactuar con el servicio de . En su lugar se ha de usar el servicio REST.

Estos cambios ya fueron .

Otra posibilidad es distribuir en Android un de la versión 34 y así no se forzará la actualización a ninguna otra versión.

Las claves beta son entradas en la rama beta de Velneo del registro del sistema operativo. Se recomienda generarlas desde un proceso con el comando de instrucción de proceso para establecerlos, ejecutándolo en 1er plano en este caso. Los parámetros se resolverán como indicamos a continuación:

También es posible para esos casos.

ha provocado que no se pueda acceder a las cámaras de forma nativa (sigue sin poder accederse en Android desde QML).

En versiones anteriores, en plataformas móviles los informes personalizados solamente eran funcionales en Android. En esta versión, debido al , no son funcionales.

En el no son funcionales los procesos con origen ficha, ya que no toma correctamente el contexto de ejecución.

A partir de esta versión se deja de distribuir esta librería porque queda obsoleta. En su lugar se recomienda usar peticiones HTTP a través de Velneo que, además, es multiplataforma.

En el caso de que se necesite seguir usando se podrá usar la de la versión 34 o anteriores. .

Estamos trabajando también en mejoras de rendimiento en , un nuevo motor , optimizadas y fórmulas en .

Las claves beta son entradas en la rama beta de Velneo del registro del sistema operativo. Se recomienda generarlas desde un proceso con el comando de instrucción de proceso para establecerlos, ejecutándolo en 1º y 3º plano según corresponda. Los parámetros se resolverán como indicamos a continuación:

En el caso de Velneo vServer se informará mediante mensajes en el Velneo vAdmin en el arranque.

En vServer: en consola y también se verá en el panel de al arrancar el servicio.

estándar, carga y movimiento optimizado (requiere el Optimizado):

Si activamos esta clave debemos tener en cuenta que los deben ser calculados en tercer plano.

, fórmulas optimizadas:

depuración de procesos
grupo de comandos de Scripts
Velneo Cloud API
avisados en la versión 27
vClient Android (aab)
vClient Android 32 (apk)
instalador personalizado
asistente de procesos de Velneo vDataClient
vModApache
Ver la documentación al respecto de la versión 34
procesos
JavaScript
rejillas
formularios
Formularios
El cambio de la versión de las librerías de integración con ambas plataformas
cambio de versión de librerías de integración con el sistema
requerimientos de la versión
xmlhttprequest
consumo de servicios web
menú Edición
vLanzadera
Rejillas
nuevo motor JavaScript
panel de mensajes
mensajes del sistema de Velneo vAdmin
Importar
Configuración del sistema: escribir cadena texto
Configuración del sistema: escribir cadena texto
Configuración del sistema: escribir cadena texto
Configuración del sistema: escribir cadena texto
estáticos
estilo
desactivar el teclado
1KB
clave_beta_scriptEngine.vob
totales de los pies de rejillas