Recently active
Hello ThingWorx'ers! First off, we’re pleased to see the excitement around ThingWorx 10.0! Your feedback on features like the Debugger, Caching, and the Windchill Navigate View Work Instructions app has been fantastic. I’m especially amazed by the rapid adoption of IoT Streams over the past two months. I'm glad it’s delivering value! Join us for an exclusive ThingWorx 10.0 Launch Webinar on September 9, 2025, at 11:00 AM EDT. We’ll dive into the latest features, including real-time IoT Streams, enhanced scalability, stronger security, and exciting AI updates that will power your Industrial IoT journey. Register now: ThingWorx 10.0 Webinar After the webinar, we’d love to hear your thoughts! Share what you’re loving about 10.0 and any feedback you may have. Keep pushing the boundaries of innovation! Cheers, Ayush Director Product Management, ThingWorx
Hello everyone, I was wondering about a use case where I need to save image files (in base64 format) from ThingWorx to a network file share path of our company like this: \\amae.test-universe.com\dummy\USER\testinglink\5000-project\claim Currently, I do this manually using a Python script running locally on my PC, where I'm already authenticated to the network. It works well because my Windows session has access to the share.Now, I’d like to automate this entirely through ThingWorx — ideally by calling a service and saving the file directly to that network path. I know about FileRepository and FileTransferSubsystem, but I understand that ThingWorx cannot directly supply a username and password for UNC paths.So my questions are:Is it possible to write to a network share that requires authentication directly from ThingWorx? Has anyone implemented a similar use case, and if yes, what approach worked best?Any input, advice, or examples would be greatly appr
Hello everyone,I have one Tree widget containing some items for selection. When I double click on any one of the item, a grid is displayed containing a list of devices that are part of that particular selection.Now I want that this should be possible using single clicked event. But we have only "double clicked" event trigger available for standard tree widget. One of the way to do this is creating a customized Tree widget, having a single click event trigger instead of double click.But by any way is it possible to find an alternate solution for this that doesn't requires creation of a customized widget??
IDE.JS TW.IDE.Widgets.WindowObject = function() { this.widgetProperties = function() { return { 'name': 'TW WindowObject', 'description': 'Allows use of the window object, enabling opening and closing browser windows directly from Mashup', 'defaultBindingTargetProperty': 'url', 'properties': { 'url': { 'baseType': 'STRING', 'description': 'URL to open in new window', 'isBindingTarget': true, 'warnIfNotBoundAsTarget': true }, 'opened': { 'baseType': 'BOOLEAN', 'description': 'Indicates whether the window is currently open', 'isBindingSource': true }, }, 'services': { 'OpenWindow': { 'description': 'Opens a new window with the given URL' }, 'CloseWindow': { 'description': 'Closes the previously opened window' } }, }; }; this.renderHtml = function() { return '<div class="widget-content">🪟</div>'; }; }; RUNTIME.JS TW.Runtime.Widgets.WindowObject = function () { var thiz = this; var openedWindow = null; this.ren
I've create custom mashup, that will generate the part structure and its associated object(ex: drawing, design info).I've different service and generate the info table data in the grid.if suppose, I've 300 rows then it would generated the result, but if I've more 500 rows/record it would take long time to generate the result.Minimum, it took more 5 minutes to generate the report/table.need suggestion to optimize the performance issue. also need some suggestion how to minimize the running time, I've already update ScriptTimeOut value, still not fix the issue.
Dear Team,I am currently conducting research on the Kepware Configuration API and have observed that the API exposes various endpoints for accessing configuration data and properties.In our setup, we have the following structure configured within Kepware:ProjectChannel1Device1Tag1The values for Tag1 are actively updating, sourced from an OPC simulator. We are able to confirm that the tag is receiving live data updates within the Kepware environment.We would like to understand whether it is possible to retrieve the live value of Tag1 using the following Configuration API endpoint:http://localhost:57412/config/v1/project/channels/Channel1/devices/Device1/tags/Tag1Please note that we are specifically looking to access this data without utilizing the IoT Gateway REST interface.Could you kindly confirm whether the Configuration API supports reading live tag values, or if an alternative method (e.g., OPC UA or another API) is required for this purpose?Thank
I am using ThingWorx Platform Release 9.2.6In one of the server, we have installed the Thingworx 9.2.6, After that deploying the Packages unable to launch the Thingworx server. Meanwhile, Tomcat server is auto stopping. Tomcat Version: 9.0.56
Hello Everybody,I'm trying to connect Kepware OPC-UA Client driver to remote OPC-UA Server to read about 50K tags.It looks like the communication is too slow and other client, that connects to Kepware and read these tags experience read failures and doesn't read all of them and about 50% of tags signed with bad values. Event log of Kepware filled with lot of events like "The subscription id is not valid.",Status code = 0X80280000.(At the attached picture)Is it anywhere recommendations about good configuration practice on OPC-UA Client driver?And what are the sizing recommendations (amount of tags, devices and channels) for Kepware server?Thanks a lot
Hi, I am trying to connect an Azure SQL Managed Instance database to ThingWorx. I can connect the db using the creds from platform-settings.json in SQL Server Management Studio(SSMS)., but when I try to communicate through Thingworx, I get the following error: 2025-07-22 00:07:54.104-0700 [L: WARN] [O: c.m.v.r.BasicResourcePool] [I: ] [U: ] [S: ] [P: ] [T: C3P0PooledConnectionPoolManager[identityToken->2x11jfbcdl16egl4oi68|5dde2be7]-HelperThread-#4] com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask@48f7f91b -- Acquisition Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new resource, we failed to succeed more than the maximum number of allowed acquisition attempts (3). Last acquisition attempt exception: 2025-07-22 00:07:54.104-0700 [L: WARN] [O: c.m.v.r.BasicResourcePool] [I: ] [U: ] [S: ] [P: ] [T: C3P0PooledConnectionPoolManager[identityToken->2x11jfbcdl16egl4oi68|5dde2be7]-HelperThread-#7] com.mchange.v2.resourcepool
We currently have one Thing in ThingWorx that connects to Windchill using a single app key. Now, we want to add another Thing with a different app key. The existing integrationRuntime-settings.json file is configured with the previous app key. How can we configure an additional app key to connect the new Thing to Windchill.
Hello Community,I’m currently got a new use case where we have an existing Excel form that includes multiple text fields and checkboxes. The goal is to digitally fill out this form and then generate a PDF from it — all within a ThingWorx-based environment.Here’s the idea I’m considering:Convert the Excel structure into an HTML representation (including form fields and styling).Open this HTML form dynamically in the browser via ThingWorx.Allow users to fill in the fields (text, checkboxes, etc.).Finally, generate and save the completed form as a PDF.My question is:Is this workflow achievable directly in ThingWorx?Has anyone implemented something similar using ThingWorx + HTML + PDF generation? What are the best practices I can consider for this? Note: We have around 80 plus excel files of customer which they normally fill out and save as pdf. I cannot make it static checklist in vuforia studio because there can be in the future 100 plus excels which needs to be aut
Hi, I’ve developed a project in ThingWorx (V9.6) using PostgreSQL as the persistence provider. We are now planning to migrate this project to a new ThingWorx(V9.7.1) environment that uses Microsoft SQL Server (MSSQL) as its persistence provider. I would like to know whether such a migration is feasible, and if so, what potential conflicts or challenges we might face during the process. Specifically, I’m looking for guidance on: Compatibility issues between PostgreSQL and MSSQL Areas that require special attention to ensure a smooth migration Best practices to avoid common pitfalls Your insights and recommendations would be extremely helpful to ensure a hassle-free transition. Thank you in advance for your support!
Hello everyone,I'm encountering an issue where a boolean property in a Thing is not updating as expected, even though it updates correctly in the associated service. I am using Thingworx 9.4.6 and KEPServerEX 6.15 version.Setup:I have a ThingShape that defines three properties:currentEnergy (Number)energyThreshold (Number)overThreshold(Boolean)The currentEnergy property is mapped to a Kepware tag value using simulation. I can see that currentEnergy updates correctly in the Thing.A service is written in the ThingTemplate. In this service, the logic compares currentEnergy with energyThreshold . If currentEnergy > energyThreshold , the overThreshold property is set to true.Issue:When I click the refresh button in the Thing, the currentEnergy value updates as expected. However, the overThreshold boolean does not update accordingly based on the service logic. Can someone help me identify why the overThreshold value isn’t updating? I’ve attached relevant references (PF
Hi,We Thingworx v9.7 in a SaaS environment, and we have a few hundredth things based on different templates, most of these template based on the RemoteThing Base template.I'm working on a specific Thing Shape that will be implemented in a bunch of those things or on the templates. I would like to launch a initialization service from a subscription when the isConnected property from the RemoteThing changes state. The issue is that from the Thing Shape, I can't set the event trigger for the subscription on DataChange for isConnected. Is there a work around possible, or maybe another way to call a service on the thing Shape level, when the connection is restored for the Things where the Thing Shape is used?I guess there is a way to duplicate the RemoteThing base template and add the subscription there, but that would also mean recreating all templates, so I'd like to avoid that solution. Many thanks in advance,H.
Hello all,I am using the Collection widget in ThingWorx 9.3.3 to display a group of two mashups with different colors to simulate a percentage bar. I have nine simulated percentage bars like this, each separated by different containers in the main mashup.On the main mashup, I am executing a service every 30 seconds using Auto Refresh. The data from this service should set the width of the mashups using the "CellWidthField" property in the Collection. I know that the Auto Refresh is working because I can see the percentage values updating every 30 seconds. However, the width of the mashups does not change accordingly, it only updates when I manually refresh the page. As you can see in the first image, the second percentage bar (which is 100% and red) should fill the entire row like the first one.The second image shows the correct behavior, but only after a manual page refresh. The width of the mashups in the Collection appears as expected after the page is reloaded. My questio
Hi everyone,I’m encountering a recurring issue with KEPServerEX v6.16.203.0 using the Modbus TCP/IP Ethernet driver. At random times, the following popup appears:“Runtime connection lost, reconnect?”This causes temporary communication drops with Modbus devices on the network.System details:KEPServerEX version: 6.16.203.0Driver: Modbus TCP/IP EthernetNetwork: Local Ethernet, no packet loss or network faults observed Has anyone experienced this kind of issue?Could it be related to the Security Policies Plug-in or licensing constraints?Are there any recommended settings to make the Runtime more stable? Any help or insight would be appreciated. Thanks!
Hi everyone,We're currently facing a performance challenge in our ThingWorx implementation related to saving a large volume of image files (potentially millions over time).We’ve observed that writing files directly to a file share (network storage) from ThingWorx is quite slow, whereas saving them to the local repository (on the same server where the ThingWorx ApplicationServer/Experience Service runs) is significantly faster.To address this, our development team has proposed the following approach:Save incoming files temporarily to the local ThingWorx repository (for fast write operations).Then, in the background, run a scheduled service (e.g., every 15 or 30 minutes) that:Moves these files to the file share for long-term storage.Deletes them from the local repository after successful transfer.We’d like to ask the community:Is this a recommended or sustainable strategy for handling large-scale file storage in ThingWorx?Are there risks or performance concerns (e.g., file locking, memor
Hello, I have a flow that fetches documents form Windchill with Windchill actions. It works but I would like to fetch the whole history of that document. How can I achieve this?Thanks in advance
Anyone know of a way to change the style of a reference line on a line chart widget? Saw a few posts from years ago that didn't have a specific way to do it and was wondering if anyone has a work around
I am using ThingWorx Platform Release 8.0 and DatecodeF000license过期了,系统无法启动,需要获取新的license文件。系统启动不了,无法获取device ID,这种情况下怎么获取新的license文件。
I am using ThingWorx Platform Release 9.6I have a service in my Historian DB Thing to get the Historian data for a PiPoint for a day period from the historian database, when I manually run this service, it always return correct data. this service contains following code: select tag, FORMAT([time],'dd-MMM-yyyy hh:mm:ss.fff tt') time, value, status from piarchive..piinterp2 where tag=[[PIPoint]] AND time >= [[st]] AND time < [[st]] + '+1d' AND time < '*' AND timestep = [[step]] Then I have another service which loop through all PiPoint and load the data for each one and save the data into a SqlServcer database. This service runs every two hours on a schedule and calls the service above to retrieve PiPoint data. The isssue is when the above serivce is called in this service, it works one or two times in a day, while other times it returns 0 rows which I confirmed using logging (there is data in the historian db). The code was never changed since it was implemented last year and i
Dear Community! I'd like to ask your advise/help regarding the new feature in Thingworx 9.7 for GRID's Dropdown list.We have been waiting so long to have OOO the functionality to have a dropdown list in Grids, however we are struggling to get the most out of it. The configuration both with Service/Config is working. (Configuring Grid Columns to Display Dropdown Lists (ptc.com)) We have a UseCase, where the users need to select a given value from the grid dropdown list, however the List as normally, displays the value selected, and it is passing further to any data we bind to. The problem we are facing, that we would need many columns as dropdown, but with different Display Value, and different actual Value .(Just like a normal ptc-dropdown. Once you bind an infotable to the data property, you can choose the Display Field and Value Field)for example: Service returns infotable of RoomInformation : (RoomId, RoomName, RoomDescription)the RoomId as a primary key (us
I would like to filter the InfoTable returned by a SQL query using a ChipBasedFilter widget and return it directly to an Advanced Grid.Is there a way to achieve this without creating an intermediate service? I have several mashups with very different requirements and would rather not write a separate service for each one. Thingworx V9.2
I can pasted a call in a browser based on the documentation -https://pdm-XXXX.com/Windchill/servlet/odata/Workflow/GetWorkItemReassignUserList(WorkItems=@wi)?@wi=[OR:wt.workflow.work.WorkItem:243012721]abd see alist of users for Reassign. This is based on the documention. Documentation shows - GET /Windchill/servlet/odata/Workflow/GetWorkItemReassignUserList(WorkItems=@wi)?@wi=["OR:wt.workflow.work.WorkItem:232279","OR:wt.workflow.work.WorkItem:232290","OR:wt.workflow.work.WorkItem:232297"] HTTP/1.1 Using an Odata Connector I have the endpoint below that will only returns Resource errors or missing alias (v3)ThingWorx endpoint -GetWorkItemReassignUserList(/v4/Workflow/GetWorkItemReassignUserList(WorkflowItems=@WorkItems) GET) How do you add an alias to the call
ThingWorx 9.7.1-b346 I have a mashup which is to contain multiple collections that will contain multiple cells each. The number of cells will depend on the user selected input parameters at run time; anywhere from 3 cells up to 12 is the most (I believe). Each of the collection widgets are using the same child mashup and will use the same configuration however will use data from different sources.My collections will be in a table format with each cell forming a row the full width of the container. My child mashup and the collection settings are such that each cell needs to be 100px tall, any shorter causes visibility issues for parts of the cell/child mashup.I need all collection cell rows to be visible at once, not hidden outside of the limits of a container requiring the user to scroll down in the collection container. With multiple collection cells having independent scrolls this can become a significant issue. I have not been able to have all cells visible without scrolling th
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.