Notas de la versión > Notas de la versión para ThingWorx Platform 9.0 > Novedades y problemas corregidos en ThingWorx Platform 9.0.0
Novedades y problemas corregidos en ThingWorx Platform 9.0.0
Las siguientes mejoras de funciones, correcciones de incidencias, limitaciones y problemas conocidos e información del fin de soporte forman parte de ThingWorx 9.0.0:
Mejoras
Seguridad
Se han corregido problemas de seguridad potenciales, incluidos los elementos identificados de forma proactiva por el software de detección de vulnerabilidades o las pruebas de control de calidad de PTC. Actualice lo antes posible para aprovechar estas importantes mejoras.
ThingWorx 9.0 está certificado para Microsoft Edge Chromium, pero no soporta variantes de Microsoft Edge que no estén basadas en Chromium. Si actualmente se utiliza Microsoft Edge como explorador Web, PTC recomienda encarecidamente actualizar a Edge Chromium 81.0 o una versión posterior para aprovechar las importantes mejoras de seguridad.
Instalador
En el instalador de ThingWorx Foundation ahora se proporciona una actualización automática para las instalaciones existentes, ejecutadas mediante instalador, de ThingWorx 8.5 o versiones posteriores, con lo que se elimina la necesidad de reconfigurar la instalación o volver a introducir una gran parte de la misma información de nuevo. Para obtener más información, consulte Utilización del instalador para actualizar ThingWorx Foundation .
Si está instalado ThingWorx Foundation 8.5.3 o una versión anterior, se puede ejecutar ThingWorx Foundation Upgrade-Ready Utility, que está disponible en la página Descargas de software de PTC para ThingWorx Foundation, antes de utilizar el instalador para actualización. Esta utilidad permite determinar si el sistema está listo para actualizarse a 9.0.
Plataforma
Es necesario solicitar un nuevo fichero de licencias para ejecutar ThingWorx 9.0 en modo de clúster. Para obtener más información acerca de las licencias, consulte Licencias de ThingWorx Platform . Para obtener más información acerca de la ejecución de ThingWorx en modo de clúster, consulte Resumen de la agrupación de alta disponibilidad de ThingWorx .
Se ha añadido una nueva API GetThingPropertyValues a EntityResources para recuperar los valores de propiedad de masa de una lista de nombres de cosa de infotable. Esta API está diseñada para funcionar con la API QueryImplementingThings, que se puede utilizar para generar la lista de cosas. Para obtener más información, consulte Utilización del servicio QueryImplementingThings .
Los grupos de cosas son un nuevo tipo de entidad con nombre, a la que se puede hacer referencia, que permite que cosas y otros grupos de cosas sean miembros de una jerarquía de grupos de cosas. Los grupos de cosas se utilizan principalmente para gestionar los permisos de visibilidad a escala, para controlar la exposición de cosas a solo aquellos usuarios que requieren acceso, pero también se pueden utilizar para otras operaciones en tiempo de ejecución. Los grupos de cosas están pensados para ser un bloque de creación que se utiliza en otras aplicaciones. Consulte Grupos de cosas para obtener más información.
Todas las tablas de configuración son ahora persistentes. Se desestima el señalizador persist en la API.
Se ha añadido soporte para los siguientes caracteres especiales en los nombres de entidades: < y >. Para obtener más información, consulte Asignación de nombres a entidades .
El tipo base de la definición de datos ThingworxMetric se ha cambiado de NUMBER a VARIANT para permitir una mayor flexibilidad. El campo tipo de datos (NumberPrimitive, StringPrimitive o BooleanPrimitive) se determinará en función de los datos que introduzca un usuario que esté creando una entidad con un servicio que tenga una salida de infotable vinculada a una definición de datos ThingworxMetric. Para obtener más información, consulte la sección Problemas conocidos y limitaciones a continuación.
El sistema tiene ahora un extremo simple para la integridad y un extremo para el que se puede determinar si el servidor está listo para aceptar solicitudes. Ninguno de los extremos requiere autenticación. Ambos devolverán 200 si es verdadero o 503 si es falso.
Hay disponible un nuevo extremo, /Thingworx/Metrics, para recuperar la información de métricas del sistema. Se puede utilizar para recopilar todas las métricas del sistema, incluidas las métricas de rendimiento del subsistema. Requiere autenticación.
Cuando se cierra el servidor, el sistema intentará drenar todas las colas de datos antes de forzar el cierre. Esto solo ocurrirá cuando el sistema se haya detenido de forma limpia.
La clave de aplicación y el identificador de enlace de instancia remota para los informes de métricas se almacenan ahora en el keystore. La clave de aplicación de los informes de métricas ya no está disponible en la configuración del subsistema de plataforma en Composer.
El subsistema de soporte reemplaza PTC Support Tools cuya funcionalidad se ha combinado en ThingWorx Platform. Por lo tanto, no se debe intentar importar a ThingWorx 9.0 o versiones posteriores. Para obtener más información, consulte el artículo de soporte de PTC.
La opción de configuración SessionUpdateDelay y las dos opciones de configuración para el registro de métricas de la plataforma MetricsLoggingFrequency y MetricsLoggingLevel ahora están disponibles en el fichero platform-settings.json. Para obtener más información sobre estas nuevas opciones, consulte Detalles de la configuración de platform-settings.json .
Subsistema de auditoría
En el subsistema de auditoría se proporcionan dos implementaciones distintas:
Persistencia directa, que es nueva en ThingWorx Platform 9
Tabla de datos, que es la implementación original del subsistema de auditoría
Entre los cambios adicionales para la implementación de persistencia directa del subsistema de auditoría se incluyen los siguientes:
Soporte para PostgreSQL y MSSQL como proveedor de persistencia para el subsistema de auditoría, mediante la funcionalidad de base de datos nativa que permite mejorar el rendimiento global.
La realización de consultas se puede configurar para adaptarse a las necesidades y los casos de uso de las diferentes organizaciones. Los servicios de consulta aceptan tokens de localización para el parámetro de categoría de una consulta.
La posibilidad de crear categorías y mensajes de auditoría personalizados a través de Java.
Cuatro opciones para la configuración de seguridad de auditoría:
Administrador: el administrador puede ver todos los mensajes de auditoría y ejecutar todos los servicios de auditoría.
Usuarios no administrativos: por defecto, estos usuarios no pueden ver mensajes de auditoría ni ejecutar servicios de auditoría. Un administrador debe conceder a los usuarios que no son administradores los permisos de tiempo de ejecución que necesitan para ejecutar el servicio QueryAuditHistory() en las cosas de las que son responsables. Con estos permisos, los usuarios que no son administradores pueden ver todos los mensajes de auditoría asociados con su nombre de usuario y con las cosas que supervisan.
Grupo de usuarios de auditores: este grupo de usuarios predefinido es para usuarios que no son administradores que, cuando obtienen acceso al servicio QueryAuditHistory() en sus cosas, deberían ver todos los mensajes de auditoría asociados a sus cosas, no solo los asociados a su cuenta de usuario y las cosas.
Permisos de seguridad personalizados: los administradores pueden proporcionar permisos de seguridad específicos a los usuarios que no son administradores, en función de los casos de usuario.
Una nueva categoría de mensaje, denominada auditoría, para realizar el seguimiento de la ejecución de los servicios del subsistema de auditoría.
Entradas de auditoría adicionales para realizar el seguimiento de la adición y eliminación de usuarios o grupos de usuarios como miembros de otros grupos de usuarios, así como las desconexiones de usuario.
La capacidad de restringir consultas por contexto, ya sea de usuario o cosa.
La capacidad de exportar solo datos de auditoría en línea (solo persistencia directa).
ThingStart se ha desactivado para la auditoría por defecto debido a la carga aumentada durante el inicio o el reinicio del ThingWorx Platform.
Los mensajes de auditoría relacionados con el grupo de cosas están disponibles en la nueva categoría de auditoría, THINGGROUPMEMBERSHIPS, así como en la categoría de auditoría existente, SECURITY CONFIGURATION. Aunque los mensajes de auditoría de THINGGROUPMEMBERSHIPS están desactivados por defecto, los mensajes de SECURITY CONFIGURATION están activados por defecto.
Para obtener información detallada sobre el subsistema de auditoría, consulte la sección Subsistema de auditoría de este centro de ayuda.
Es posible copiar fácilmente el valor de ID de clave de una clave de aplicación en el portapapeles.
Se ha añadido la opción Exclude Invalid Users and User Groups in Imports al subsistema de plataforma.
Agrupación de alta disponibilidad (HA)
Para obtener información sobre la agrupación de alta disponibilidad de ThingWorx y su configuración, consulte Resumen de la agrupación de alta disponibilidad de ThingWorx .
Los proveedores de persistencia soportados son los siguientes:
PostgreSQL
Microsoft SQL Server
Microsoft Azure SQL
InfluxDB
Se soportan las siguientes herramientas de conectividad:
Las versiones de SDK de ThingWorx Edge que soportan SNI, que son necesarias para los clústeres de alta disponibilidad alojados en la nube:
C SDK: v. 2.2.9 y versiones posteriores.
SDK de .NET: v. 5.8.2 y versiones posteriores
SDK de Java: cualquier versión que se utilice con Java SE 7 Development Kit (o versión posterior). Se debe tener en cuenta que OpenJDK no se soporta actualmente. Consulte Java SE 7 Security Enhancements.
Para los clústeres locales de alta disponibilidad de ThingWorx, es posible que SNI no sea necesario. Depende de la configuración de la red. Para obtener información sobre SNI, consulte el artículo What Is SNI? How TLS Server Name Indication Works en el sitio de Cloudflare.
ThingWorx Edge MicroServer (EMS) v. 5.4.8, 5.4.9 y versiones posteriores, proporcionan soporte para SNI. Las versiones anteriores no. Sin embargo, v. 5.4.4 se ha certificado para un entorno de alta disponibilidad.
ThingWorx Connection Server (AlwaysOn), v.9.0.0 es necesario para un entorno de agrupación de alta disponibilidad de ThingWorx.
ThingWorx eMessage Connector v.2.0.0 es necesario para un entorno de agrupación de alta disponibilidad de ThingWorx.
ThingWorx Kepware Server
ThingWorx Kepware Edge
Para obtener información sobre la configuración de Connection Server y eMessage Connector para que funcionen en el clúster de alta disponibilidad, consulte los temas de configuración de alta disponibilidad en los centros de ayuda relacionados:
Connection Server: High Availability Configuration
La agrupación de alta disponibilidad de ThingWorx está disponible para la implementación en un entorno de Docker. Para crear imágenes de Docker de ThingWorx en un clúster de alta disponibilidad, se deben implementar primero imágenes adicionales de Apache Ignite y ThingWorx Connection Server. Para obtener más información, consulte Uso de Docker de ThingWorx en un entorno de agrupación de alta disponibilidad .
Hay disponible un nuevo modo que define el servidor de modo que el extremo /ready devolverá false para ayudar a quitar el servidor de los equilibradores de la carga. De este modo, el puede el servidor dejar de recibir nuevas solicitudes, pero sin cerrarse, por lo que se puede utilizar para la resolución de problemas. El sistema intentará drenar toda la información de sus colas de datos.
Los estados de servicio de JavaScript ahora se guardan en una capa de caché, que puede ser local o remota. El nuevo sistema vuelve a crear un proxy unidireccional del objeto JavaScript en el objeto original. Por lo tanto, todos los cambios que se realicen en el objeto JavaScript activan una actualización completa de la propiedad en el objeto original. Además, los cambios en el objeto original no se reflejan en el objeto JavaScript.
Al ejecutar ThingWorx en modo de clúster, en última instancia, los cambios del modelo se hacen coherente en todo el clúster. Para obtener más información, consulte Coherencia final .
La configuración de registro se realiza mediante la configuración de logback.xml. El registro asincrónico se utiliza para ofrecer un mejor rendimiento, incluso en niveles de registro altos. Para obtener más información, consulte Configuración del registro .
Existe un nuevo subsistema de agrupación en clústeres que permite ver y configurar el entorno de alta disponibilidad en el modo de clúster.
Extensiones
Las API de extensión del ciclo de vida startSubsystem y stopSubsystem de Subsystems.java se han reemplazado por startSubsystem(ContextType) y stopSubsystem(ContextType). El tipo de contexto permite al método funcionar en un entorno de alta disponibilidad en el que se realizan cambios en el servidor A y, a continuación, estos cambios se deben sincronizar con otros servidores. El tipo de contexto permite al método saber si forma parte o no de un proceso de sincronización y, si es así, realizar una operación de creación, actualización o borrado. Para obtener más información, consulte Cambios de API de ciclo de vida .
Se ha añadido un nuevo atributo de metadatos de extensión, haCompatible, para identificar si una extensión es compatible con la agrupación de alta disponibilidad de ThingWorx. Para obtener más información, consulte Prácticas recomendadas para empaquetar e implementar soluciones de ThingWorx .
Hay una nueva configuración de directiva de importación de paquetes de extensión en el fichero platform-settings.json que puede restringir la importación de extensiones a solo aquellas que tienen el señalizador haCompatibility definido en true en los metadatos de extensión. Para obtener más información, consulte Detalles de la configuración de platform-settings.json .
El soporte de PTC para el widget ThingWorx WebSockets Tunnel ha finalizado. Para obtener más información, consulte el artículo de soporte de PTC.
El soporte de PTC para la extensión ThingWorx Ghost Entity ha finalizado. Para obtener más información, consulte el artículo de soporte de PTC. Para obtener más información acerca de las entidades fantasma, consulte Creación y borrado de entidades fantasma.
Mashup Builder
Creación de esquemas
Ahora se pueden superponer contenedores en esquemas dinámicos al expandir y contraer contenedores en un mashup dinámico. Consulte Expansión y contracción de contenedores .
Se ha añadido la capacidad de cortar, copiar y pegar contenedores y su contenido mediante los comandos de la barra de herramientas y los accesos directos de teclado. Esto ayuda a crear esquemas más rápidamente al copiar contenedores en lugar de widgets. Para obtener más información sobre esta función, consulte Gestión de elementos en el lienzo.
Se han añadido opciones de configuración para configurar las opciones de visualización de la ventana en un mashup dinámico. Después de crear un mashup, esta configuración se utiliza para ajustar el esquema de los dispositivos móviles. Estas opciones de configuración están disponibles en la ficha Configuración de móvil de las entidades de mashup. Para obtener más información, consulte Optimización de un mashup para dispositivos móviles .
Interfaz del usuario
Se ha añadido soporte para deshacer y rehacer al editar un mashup. También se puede ver el historial de ediciones en un mashup en una sesión. Estos comandos están disponibles en la barra de herramientas del lienzo. Consulte Uso de Deshacer y Rehacer en un mashup .
Se ha actualizado el panel Conexiones y el nombre se ha cambiado a Enlaces. Para obtener más información sobre el nuevo panel, consulte Visualización de enlaces en un mashup .
El nombre del panel Elementos pendientes ha cambiado a Recordatorios.
Los cuadros de diálogo de configuración de enlaces para los widgets y servicios se han actualizado y mejorado. Ahora, es más fácil configurar enlaces y buscar orígenes y destinos de enlace en el mashup. Para obtener más información, consulte Configuración de enlaces en un mashup y Configuración de los servicios de datos.
Se ha añadido un filtro de categoría a la lista de propiedades del widget en el panel Propiedades en función de las categorías funcionales. Ahora, se filtra rápidamente la lista de propiedades de las categorías, tales como el tamaño y la posición, la configuración, los datos y los enlaces.
Servicios de datos y enlaces
Se ha añadido la capacidad de configurar enlaces para las funciones mediante la ventana de configuración de enlaces. Para obtener más información, consulte Funciones .
Se ha actualizado el panel Datos y se ha rediseñado el cuadro de diálogo Añadir datos. Ahora es más fácil buscar entidades y añadir servicios de datos a un mashup. Para obtener más información, consulte Adición de servicios de datos a un mashup.
Se ha añadido un menú contextual que permite crear enlaces entre las propiedades de datos de los paneles de datos. Para obtener más información, consulte Creación de enlaces en un mashup .
Temas de estilo
Se ha añadido la capacidad de definir las propiedades de estilo de los siguientes elementos en la ficha Estilos de una entidad Tema de estilo:
Contenedores de esquema que se utilizan en un mashup.
Sugerencias los widgets que utilizan en un mashup.
Se ha actualizado el mashup de vista previa de la ficha Estilos. El usuario puede seleccionar sus propios mashups para obtener una vista previa de los cambios de estilo.
Para obtener más información, consulte Uso de la ficha Estilos .
Se han añadido tres nuevos widgets: Gráfico de barras, Gráfico de líneas y Gráfico de programación en la plataforma. Estos widgets también están disponibles como componentes Web. Para obtener más información sobre los widgets, consulte:
Se pueden migrar mashups con las versiones heredadas de estos widgets. Para obtener más información sobre la migración, consulte widgets heredados Widgets y esquemas heredados.
Los widgets de componentes Web ahora se publican como parte de ThingWorx Web Component SDK. Se puede utilizar el SDK de para crear widgets personalizados propios.
Ahora se pueden crear extensiones de widget a partir de componentes Web con ThingWorx Web Component SDK Utility. Estos widgets de componente Web se añaden a Mashup Builder al importar la extensión del widget.
Se ha añadido soporte para añadir imágenes como iconos para los botones del cuadro de diálogo de confirmación. El usuario introduce un URL o selecciona una entidad multimedia para especificar una imagen.
Todos los widgets se han organizado como Estándar o Heredados en el centro de ayuda. Para obtener más información, consulte:
Se pueden encontrar diferentes categorías de widgets en el panel Widgets, en la plataforma.
Se ha actualizado el widget Selector de fecha y hora con la nueva función de selección de rango de fechas. Para obtener información acerca de las propiedades que se han añadido recientemente, consulte: Widget de selector de fecha y hora (con temas).
ThingWorx Flow
Capacidades expandidas para la implementación
ThingWorx Flow es compatible con el entorno de clústeres activos-activos de ThingWorx. La mayoría de los componentes de ThingWorx Flow se pueden escalar. Sin embargo, la alta disponibilidad de ThingWorx Flow no se soporta. Para obtener más información, consulte ThingWorx Flow en la alta disponibilidad de ThingWorx .
Hay ficheros de ThingWorx Flow Dockerfiles y ficheros auxiliares de Composer disponibles para crear ThingWorx Flow en un entorno de Docker. La implementación de ThingWorx Flow se puede realizar junto con las imágenes de ThingWorx Docker tanto para el modo de ThingWorx único así como el modo de agrupación de alta disponibilidad de ThingWorx.
El instalador de actualización automatizada de ThingWorx Flow está disponible para actualizar una instalación nueva de ThingWorx Flow 8.5.x y versiones posteriores a 9.0.
Este instalador de actualización no se puede utilizar para actualizar desde una instalación nueva de 8.4.x. Incluso si ThingWorx Flow se ha actualizado manualmente desde una instalación nueva de 8.4.x a una versión 8.5.x, no se puede utilizar este instalador de actualización automatizada. En este caso, se debe migrar ThingWorx Flow .
Funcionalidad de infraestructura mejorada
En comparación con las versiones anteriores que soportaban solo cuentas fijas predefinidas, ahora se puede utilizar la identidad de un usuario en los conectores de ThingWorx Flow. Esta capacidad es esencial para un uso seguro en el entorno de producción para muchas aplicaciones y permite obtener contenido diferente para distintos usuarios. Se han introducido los tipos de conexión SSL bidireccional y OAuth (usuario de la sesión) para activar esta capacidad. Para obtener más información, consulte Tipos de conector .
Es posible cambiar un tipo de conexión para el conector seleccionado, lo que facilita el mantenimiento de los flujos de trabajo. La opción Switch solo está disponible si el servicio de terceros soporta más de un tipo de conector.
Se pueden asignar variables de conexión en un flujo de trabajo, lo que permite utilizar la misma acción o flujo de trabajo para diferentes entornos de servicios de terceros. Para obtener más información, consulte Asignar conector.
Las entidades multimedia de ThingWorx pueden utilizar los conectores de ThingWorx Flow para la autorización. Para obtener más información, consulte Configuración de ThingWorx Flow en entidades multimedia .
Se han actualizado varios formularios de acción en los que se puede elegir Formulario para proporcionar entradas para los campos de entrada individuales que se muestran en el formulario, o bien elegir Asignar JSON para especificar un único objeto JSON con todas las entradas necesarias. El uso de Asignar JSON acorta los formularios y también quita el límite de longitud de los elementos de las matrices.
Se han añadido los siguientes servicios a WorkflowSubsystem en ThingWorx Composer:
El servicio LoadOAuthConfiguration se debe utilizar para cargar las configuraciones de OAuth en el servidor ThingWorx Flow. Este servicio proporciona una plantilla por defecto en el formato preconfigurado para todos los servicios de terceros que soportan OAuth.
Los servicios DeleteOAuthConfiguration o GetOAuthConfiguration se deben utilizar para borrar o recuperar las configuraciones de OAuth del servidor ThingWorx Flow.
Con el servicio DeleteOAuthAccessToken DeleteOAuthAccessToken, se pueden borrar los tokens de acceso de OAuth de un usuario para el proveedor de OAuth especificado o borrar los tokens de acceso de OAuth para todos los usuarios del proveedor de OAuth especificado.
El servicio RefreshMetadata almacena en caché la información OData de Windchill para mejorar el rendimiento.
Interfaz de usuario
El·tablero de ThingWorx·Flow·se ha rediseñado para facilitar la navegación a los flujos de trabajo, conectores, activadores, acciones personalizadas y registros de actividad.
Nuevas acciones
Se ha añadido la acción Sincronización en Herramientas de desarrollador para consolidar los resultados de acciones anteriores en varias rutas de la acción Sincronización. En ella se muestra la operación Y u O lógica.
Se ha añadido la acción Devolver resultados a Herramientas de desarrollador para devolver la salida de cualquier acción ejecutada en el flujo de trabajo al servicio sincrónico de ThingWorx o invocador webhook, durante la ejecución del flujo de trabajo.
Se han añadido las acciones Crear entidad , Borrar entidad , Obtener propiedades y Actualizar entidad a SAP OData para consultar y manipular los conjuntos de datos del sistema SAP a través de operaciones CRUD (crear, leer, actualizar y borrar).
Las acciones SAP OData soportan los conectores Básico y OAuth.
Se ha añadido la acción Ejecutar BAPI a RFC de SAP para ejecutar las BAPI por defecto o personalizadas. El formulario de entrada cambia dinámicamente según la BAPI que se proporcione.
Se ha añadido la acción Ejecutar API de Swagger a Windchill para ejecutar las API de Swagger de Windchill.
Se ha añadido la acción Descargar contenido a Windchill para descargar contenido del servidor Windchill.
Se ha añadido la acción Cargar contenido a Windchill para cargar contenido en forma de fichero, flujo o cadena al servidor de Windchill.
Se ha añadido la acción Ejecutar procedimiento almacenado a SQL Connector para ejecutar un procedimiento almacenado de SQL.
Actualizaciones de servicios y acciones de terceros existentes
Todos los servicios de terceros que anteriormente soportaban cuentas de OAuth fijas predefinidas, OAuth (usuario con nombre), se han mejorado para utilizar también la identidad del usuario de la sesión actual. Este nuevo tipo de conector se denomina OAuth (usuario de la sesión). Para obtener más información, consulte Tipos de conector.
La acción Solicitud HTTP soporta el tipo de conector básico.
Capacidad para añadir cabeceras personalizadas a acciones que tienen interacciones basadas en HTTP.
Gitlab , JIRA y ThingWorx soportan los tipos de conexión OAuth, OAuth (usuario con nombre) y OAuth (usuario de la sesión).
Se ha añadido el bucle WHILE a la acción Bucle .
Se han actualizado todas las acciones de Bitly y Dialogflow.
SQL Connector
Se ha añadido soporte para conexiones SSL unidireccionales y bidireccionales .
Capacidad de crear y actualizar varias filas en las acciones Crear filas y Actualizar filas .
La casilla Distinción proporciona la posibilidad de devolver valores únicos en la columna para las acciones Obtener filas y Obtener filas con la unión .
Posibilidad de añadir SQL en formato libre en los campos de entrada Cláusula Where y Cláusula Join para Borrar filas , Obtener filas , Obtener filas con la unión y Actualizar filas .
Dynamics 365 CRM
La casilla Incluir dominios de referencia de Ejecutar acciones y Ejecutar funciones proporciona la posibilidad de mostrar acciones y funciones que se describen en ActionImport y FunctionImport en los dominios de referencia, respectivamente.
Posibilidad de incluir propiedades de navegación de referencia para las acciones Crear registro y Actualizar registro . El formulario de entrada cambia dinámicamente según el conjunto de entidades que se seleccione.
Posibilidad de filtrar las propiedades de los objetos mediante una Consulta basada en formulario, Consulta discreta o Consulta sin formato para las acciones Ejecutar acciones , Ejecutar funciones y Obtener registros.
OData
La casilla Incluir dominios de referencia de Ejecutar acciones y Ejecutar funciones proporciona la posibilidad de mostrar acciones y funciones que se describen en ActionImport y FunctionImport en los dominios de referencia, respectivamente.
Posibilidad de incluir las propiedades de navegación de referencia para las acciones Crear entidad y Actualizar entidad . El formulario de entrada cambia dinámicamente según el conjunto de entidades que se seleccione.
Posibilidad de filtrar las propiedades de los objetos mediante una Consulta basada en formulario, Consulta discreta o Consulta sin formato para las acciones Ejecutar acciones, Ejecutar funciones y Obtener propiedades .
Windchill
La casilla Incluir dominios de referencia de Ejecutar acciones y Ejecutar funciones proporciona la posibilidad de mostrar acciones y funciones que se describen en ActionImport y FunctionImport en los dominios de referencia, respectivamente.
Posibilidad de incluir las propiedades de navegación de referencia para las acciones Crear entidad y Actualizar entidad . El formulario de entrada cambia dinámicamente según el tipo de entidad seleccionado.
Posibilidad de filtrar las propiedades de los objetos mediante una Consulta basada en formulario, Consulta discreta o Consulta sin formato para las acciones Ejecutar acciones, Ejecutar funciones , Obtener entidades por ID y Obtener entidades por consulta .
Correcciones de errores
Plataforma
Número de seguimiento
Se ha quedado obsoleto el servicio DeleteDataTableEntriesWithQuery y se ha añadido el servicio DeleteDataTableEntriesWithQueryCriteria como reemplazo. El servicio DeleteDataTableEntriesWithQueryCriteria no acepta los parámetros location y sourcetype, aunque se pueden añadir al parámetro query.
TW-14728
Los servicios EnableSubscription y DisableSubscription y se han quedado obsoletos. Se han creado los servicios EnableSubscription y DisableSubscription de reemplazo y estos contienen el parámetro de entrada subscriptionName. Para obtener más información, consulte este tema.
TW-66112
Se ha corregido un problema con cosas industriales que hacía que las propiedades remotas se mostraran siempre como ReadEdgeValue incluso cuando se hubieran establecido como UseDefaultValue.
TW-76929
Se ha cambiado la etiqueta Activado para los temporizadores y los programadores a Activar temporizador automáticamente al iniciar.
TW-75596
Se han añadido dos API a EntityServices: GetEntityListByRegex y GetEntityListWithPermissionMaskByRegEx. Cada una de estas API utiliza expresiones REGEX (solo) en lugar de cadenas de búsqueda SQL para filtrar y enumerar entidades. La API original, GetEntityList, no ha cambiado.
TW-75206
Se ha corregido un problema que provocaba el fallo de una importación si esta contenía una entidad con suscripciones huérfanas (por ejemplo, un evento, una propiedad o un origen de referencia faltante). Para corregir este problema, las importaciones se realizarán correctamente mediante la desactivación de la suscripción. Se registrará un mensaje de error en esta situación.
TW-74824
Se ha corregido un problema que provocaba errores al ejecutar servicios asíncronos con SSO.
TW-73693
Se ha corregido un problema que impedía que los datos de alerta se mostraran en el historial de alertas después de cambiar el proveedor de persistencia.
TW-73656
Se ha corregido un problema que provocaba el registro de un NPE al ejecutar los servicios.
TW-73624
Se ha corregido un problema con las salidas de servicio incoherentes para ThingWorx Analytics Services.
TW-73451
Se ha corregido un problema que hacía que los servicios de depuración fallaran si había un carácter de punto en el nombre de cosa al utilizar InfluxDB como proveedor de persistencia.
TW-73166
Se han añadido entradas de auditoría adicionales para cuando se añade o quita un usuario de un grupo de usuarios.
TW-73086
Se ha corregido un problema que impedía la descarga de una solución de Solution Central.
TW-73074
Se ha corregido un problema que hacía que el valor del token de localización csvDecimalDelimiter para la configuración regional de francés no fuese válido.
TW-72859
Se ha corregido un problema que impedía que el servicio de bytes HTTP a través de la cabecera de rangos funcionara con ficheros almacenados en un almacén de ThingWorx.
TW-72614
Se ha corregido un problema que impedía la edición de los permisos de grupo de usuarios.
TW-72437
Se ha corregido un problema que impedía quitar la implementación del servicio después de invocar a RemoveServiceDefinition.
TW-71789
Se ha corregido un problema que hacía que un servicio devolviera todas las propiedades de cosa, en lugar de la especificada en la infotable.
TW-71223
Se ha corregido un problema por el que la fecha de la última modificación no se actualizaba al bloquear o desbloquear el usuario, tal como está configurado en Configuración de bloqueo de cuenta.
TW-71207
Se ha corregido un problema que hacía que el servicio QueryImplementingThingsWithData devolviera propiedades no definidas en una definición de cosa.
TW-70763
Se ha corregido un problema que provocaba una excepción NullPointerException en los registros de script para cualquier incidencia relacionada con la base de datos.
TW-70070
Se ha corregido un problema que impedía que la columna downloadLink de una cosa de FileRepository fuese un hipervínculo.
TW-69493
Se ha corregido un problema que hacía que el servicio GetFileInfo devolviera una ruta dos veces.
TW-69429
Se ha corregido un problema que hacía que una propiedad remota mostrara una buena calidad (icono de pulgar hacia arriba) para un origen que no existía.
TW-69026
Se ha corregido un problema que hacía que un explorador Chrome utilizara más de 2 GB de memoria al ejecutar un servicio de consulta SQL con más de 300.000 filas de datos.
TW-68338
Se ha corregido un problema que impedía el uso de la conexión mediante formulario si el nombre del mashup contenía caracteres chinos.
TW-67517
Se ha corregido un problema que cambiaba los caracteres < y > en las definiciones de estado.
TW-67228
Se ha corregido un problema que impedía la adición de ficheros de registro a la carpeta de archivo.
TW-67040
Se ha corregido un problema que hacía que una cosa industrial importada con enlaces remotos fallara.
TW-65621
Se ha corregido un problema que impedía actualizar una tabla de configuración con definiciones de campo que contenían caracteres especiales después de importar una extensión.
TW-63646
Se ha corregido un problema que hacía que las etiquetas con caracteres especiales se gestionaran de forma incorrecta en el conector industrial.
TW-62586
Se ha corregido un problema que hacía que un nombre de usuario se mostrara dos veces en Composer si contenía un carácter de barra invertida.
TW-58563
Se ha añadido feedback visual sobre una cosa si se especifica un flujo de valor en una plantilla de cosa.
TW-58277
Se ha corregido un problema que hacía que el esquema de columna de tiempo de la tabla de flujos cambiara de "fecha sin zona horaria" a "fecha con zona horaria" en PostgreSQL.
TW-35605
Se ha corregido un problema que impedía que la verificación de la sintaxis funcionara correctamente.
TW-35371
Se ha corregido un problema que permitía borrar los tokens de la tabla de localización del sistema.
TW-33567
Se ha corregido un problema que impedía que el servicio ListDirectories enumerara los directorios basados en el parámetro nameMask.
TW-14413
Se ha corregido un problema que impedía el inicio del sistema después de una importación si se perdía una clave de cifrado en la importación. Para corregir este problema, un administrador podrá iniciar un sistema en este caso, pero no podrá importar la información cifrada (propiedades de PASSWORD) al sistema. El proceso de importación desestimará cualquier error de inicialización de tipo PASSWORD para permitir el inicio después de la importación. Se registrará el siguiente mensaje de error:
During import property [Prop1] on thing [Thing1] initialization error occured,
skipping property initialization. Error message [Unable To Convert From java.lang.String to PASSWORD]
TW-75158
Se ha corregido la imposibilidad de empaquetar una solución si el proyecto contenía un elemento MediaEntity con un URL de contenido dinámico.
TW-73874
Mashup Builder
Número de seguimiento
Se ha corregido un problema con el widget de recopilación que hacía que las imágenes que contenía cambiaran de absolutas a relativas.
TW-75614
Se ha corregido un problema que impedía que la etiqueta Elegir ficheros del widget de carga de fichero se localizase.
TW-75542
Se ha corregido un problema con el widget de entrada numérica que impedía el trabajo con el valor "nada" después de haberse definido inicialmente.
TW-75477
Se ha añadido la propiedad de estilo CellAlternateStyle al widget de recopilación para permitir colores alternativos de fondo de celda.
TW-75459
Se ha corregido un problema con el gráfico de rótulos que impedía que XAxisLabelRotation se aplicara si el gráfico era horizontal.
TW-75281
Se han corregido problemas con la secuencia de tabulador entre widgets.
TW-75279, TW-74292
Se ha corregido un problema con los componentes Web que impedía que una lista desplegable se cerrara si estaba en una ventana emergente.
TW-74971
Se ha corregido un problema con el widget de recopilación que impedía la retención de las filas seleccionadas cuando se activaban datos en la renovación automática.
TW-74748
Se ha corregido un problema con el widget de esquema que impedía que los mashups se mostraran correctamente en fase de diseño.
TW-74454
Se ha añadido la posibilidad de editar la propiedad de definición de datos, si se está editando un enrutador de eventos. La propiedad se muestra condicionalmente cuando la propiedad de tipo de datos se define en INFOTABLE.
TW-74276
Se ha corregido un problema que provocaba errores en ThingWorx Console en tiempo de ejecución del mashup.
TW-74219
Se ha corregido un problema que impedía que el desplazamiento automático en el panel de datos funcionara al arrastrar un enlace.
TW-74165
Se ha corregido un problema con el widget de recopilación que impedía que la clasificación representase la salida al enlazar con una casilla.
TW-73903
Se ha corregido un problema con el componente Web de casilla que hacía que se desviara de su etiqueta.
TW-73902
Se ha corregido un problema que impedía la actualización correcta de la clase personalizada de un contenedor flexible.
TW-73545
Se ha corregido un problema que impedía que las entidades multimedia con determinados formatos de nombre se reconociesen en Mashup Builder.
TW-73377
Se ha corregido un problema con el widget de navegación que impedía que los caracteres japoneses se mostraran correctamente.
TW-73302
Se ha corregido un problema que impedía la posibilidad de modificar el relleno en un panel dinámico que contenía un widget de recopilación.
TW-73230
Se ha corregido un problema que impedía la visibilidad de los widgets heredados después de la actualización.
TW-72883
Se ha corregido un problema que impedía que la alineación de las celdas en las rejillas funcionase al utilizar el tema de estilo.
TW-72466
Se ha corregido un problema que provocaba el registro de un error al acceder a mashups en un Mac.
TW-72270
Se ha corregido un problema que hacía que el selector de fecha apareciera detrás de la ventana emergente al utilizar la rejilla avanzada.
TW-72205
Se ha corregido un problema que hacía que el widget de tablero permaneciera invisible al seleccionar la propiedad Visible.
TW-72145
Se ha corregido un problema con el componente Web de selector de fecha y hora que hacía que un evento cambiado se activara antes de una actualización de valor.
TW-72112
Se ha corregido un problema que hacía que la variable de sesión JSON se devolviera sin definir cuando se enlazaba a expresiones, validadores o servicios.
TW-72105
Se ha corregido un problema que hacía que una barra de desplazamiento se añadiera automáticamente al activar las propiedades de un mashup dinámico.
TW-72013
Se ha corregido un problema con el widget de lista que hacía que un valor de fila seleccionado se retuviera desde una selección anterior.
TW-72009
Se ha corregido un problema que hacía que la CSS personalizada enlazada a una etiqueta padre también se aplicara a la etiqueta hijo.
TW-71845
Se ha corregido un problema que hacía que la renovación automática se continuara activando después de cerrar un mashup o si la ficha no estaba en el foco en Composer.
TW-72305
Se ha corregido un problema con el widget de visualización de valor que hacía que se mostrara "No es una fecha" en lugar de la fecha en tiempo de ejecución.
TW-71647
Se ha corregido un problema que hacía que se creara un enlace adicional al enlazar un evento a un servicio de expresiones.
TW-71193
Se ha corregido un problema con el widget de carga que provocaba la codificación de caracteres especiales como HTML.
TW-71072
Se ha corregido un problema con el widget de rejilla avanzada que impedía borrar registros.
TW-70997
Se ha corregido un problema con el widget de recopilación que impedía que funcionase la acción de pulsar dos veces.
TW-70937
Se ha corregido un problema con el widget de componente Web de campo de texto que impedía que la secuencia de tabulador funcionara correctamente.
TW-70303
Se ha corregido un problema con el widget de botón que impedía que la propiedad Desactivado se cambiara si se enlazaba desde una expresión.
TW-69883
Se ha corregido un problema con los widgets de gráfico que impedía que se dibujara correctamente cuando la propiedad StackSeries se definía en true.
TW-69412
Se ha corregido un problema con los widgets de campo de texto y área de texto que provocaba la conversión de caracteres de dos corchetes en signos de interrogación.
TW-69149
Se ha corregido un problema con el widget de imagen que impedía que SourceURL funcionara si había un punto en el nombre de la entidad.
TW-69114
Se ha corregido un problema con el widget de filtro de datos que impedía que una ubicación se anclara en Google Maps.
TW-68977
Se ha corregido un problema con el componente Web de visualización de valor que impedía la definición de estilos.
TW-68027
Se ha corregido un problema con el componente Web de navegación que impedía que se aplicaran los enlaces a los parámetros TargetMashup y TargetMashupType.
TW-67708
Se ha corregido un problema que impedía definir un ancho de botón por debajo de 41 px.
TW-67124
Se ha corregido un problema con los componentes Web que impedía que una lista desplegable se cerrara si estuviera en una ventana emergente.
TW-65497
Se ha corregido un problema que impedía que el contenido de los elementos emergentes fuese visible al ampliar a resoluciones inferiores.
TW-52677
Problemas conocidos y limitaciones
En ThingWorx 9.0.0 existen las siguientes limitaciones y problemas conocidos:
Plataforma
Si se utiliza InfluxDB como base de datos y la definición de datos ThingworxMetric, y se han creado entidades, tales como tablas de datos o flujos, con dicha definición de datos, es posible que no funcionen en 9.0. Su tipo base se ha cambiado de NUMBER a VARIANT. Por lo tanto, se debe crear y utilizar una nueva definición de datos con los mismos campos para dichas entidades.
Mashup Builder
Después de migrar un mashup, los widgets de campo de texto y área de texto no conservan el estilo de texto definido mediante la propiedad de estilo font-weight. En ThingWorx 8.5, la propiedad de estilo font-weight se enumeraba de manera incorrecta en la parte text-box del widget en lugar de text-value. Cuando se migra un mashup a 9.0, la propiedad de estilo permanece visible, pero no afecta a los widgets. Para aplicar estilos al texto del widget, se debe definir la propiedad de estilo en la parte text-value. Cuando se crea un nuevo mashup, la propiedad de estilo se muestra correctamente en la parte text-value del panel Propiedades de estilo.
Cuando se migra un mashup a 9.0, la propiedad Value del widget de campo de texto se quita de la lista del panel Propiedades. La propiedad ha quedado obsoleta y se han quitado todos los enlaces a ella. Esto afecta a cualquier mashup en el que se utilice la propiedad del widget. Para solucionar este problema, se deben volver a crear los enlaces mediante la propiedad Text en su lugar.
En la ficha CSS personalizada de las entidades de mashup y de tema de estilo, las variables de CSS se realzan de forma incorrecta como errores de sintaxis cuando la función de Lint está desactivada. Estas variables se utilizan para los widgets de estilo a los que se puede aplicar un tema de estilo. Para solucionar el problema, desactive la función de Lint en el editor o desestime el mensaje de aviso y guarde los cambios en la entidad. Las variables de CSS se aplican a los widgets en tiempo de ejecución.
Información de fin de soporte
Información de fin de soporte
Como parte de una amplia revisión del producto para esta versión de ThingWorx, PTC ha quitado una variedad de funciones tanto debido a una adopción limitada del mercado como el deseo de realizar un esfuerzo continuo para reforzar la seguridad de la plataforma ThingWorx. Para ThingWorx 9.0, ya no se soportan las siguientes funciones:
La capacidad de utilizar texto enriquecido en el campo Documentación de Composer (el texto enriquecido existente se mostrará como HTML sin formato).
La capacidad de utilizar texto enriquecido en blogs y wikis en Mashup Builder (el texto enriquecido existente se mostrará como HTML sin formato).
La capacidad de editar texto HTML en mashups. Los usuarios de ThingWorx aún podrán mostrar contenido en HTML sin tener que editarlo. El contenido se depurará y debe tener un formato adecuado mediante etiquetas de HTML soportadas.
La consulta de microservicio ya no se soporta.
¿Fue esto útil?