Recently active
I have lots of text field widgets in my mashup where i want its default text to be coming from my Thing property values. Basically i want them already filled with the property values. This is to ease editing of the values for the users and to prevent them from starting all over again in case they wanna edit. Mashup Property ValuesI created a service where it just returns this property infotable but when i try to bind in the mashup, there is no selected row that i can bind to the text field as its text source
I have a requirement where the client wants to check if all their servicers are up and running. They are asking for a Mashup with layout and various point on the layout indicating the location of that server. I am checking for a provision in thingworx Thing service to perform Ping operation and check. Need support on how to achieve this with RhinoJS in Thingworx.
Leveraging ThingWorx for Unified Namespace with Sparkplug B Integration Abstract The industrial IoT (IIoT) landscape demands scalable, interoperable, and real-time data architectures to enable seamless communication across heterogeneous systems. Unified Namespace (UNS) has emerged as a new approach to organizing and contextualizing data in a centralized, hierarchical structure accessible to all devices and applications. This article explores how PTC’s ThingWorx, a leading IIoT platform, can serve as a robust foundation for operationalizing a UNS, with a specific focus on integrating MQTT-based Sparkplug B messaging. Building on the open-source SparkplugB-Edge-SDK provided by the ThingWorx Customer Success team, we demonstrate how ThingWorx can bridge edge devices, industrial systems, and enterprise applications within a UNS framework, delivering real-time visibility, scalability, and operational efficiency. 1. Introduction 1.1 The Need for Unified Namespace
I have verified that the service is returning 24 rows of data, but when viewing the mashup, only 4 rows display. Oddly enough, even in the mashup designer, inside the grid widget, it shows all of the data coming in correctly. Has this problem been seen before? I even tried creating a new mashup and new grid and re-binding everything. It is the same result. Clearly, the Chrome dev tools network tab shows 24 rows being returned, but only the last 4 are displayed in the grid for some reason.
ThingWorx has long been a trusted platform in the industrial IoT space, helping organizations build and scale connected solutions. With the release of ThingWorx 10.0, we're introducing meaningful updates that make it easier, faster, and more secure to develop and manage industrial IoT applications — while keeping the core strengths that customers rely on. ThingWorx 10.0 isn't just about new features; it's about making the platform more efficient, more reliable, and better aligned with today’s enterprise needs. Key enhancements focus on improving performance at scale, streamlining developer workflows, and strengthening security frameworks — essential capabilities for any modern IoT deployment. While security improvements are critical, they represent the standard customers expect, and we’ve invested in making sure ThingWorx continues to meet and exceed those expectations. Here is a summary of the latest security updates for ThingWorx, including patches and vulnerability fixes.
I want to design a file storage feature using a repository to store user-uploaded files (PDF and PPTX formats).When a user selects a file and clicks the upload button, the file should be saved into the repository. After the upload, the stored files should be displayed in a grid table within the Mashup. How can I implement TW? kindly give me a end to end example. i am using TW version
I am using the datalogger in KEPServerEx 6.16 to store "frames" of data to SQL. Things like recipes and test results, where I have a single set of data that I want inserted all at once. I have a way set up that works pretty well. I stage the data to be sent in a buffer in the plc, set the datalog trigger to start and stop on a specific tag and to log all items on starts, and when the data is ready, I activate that trigger and read back the msg_count incrementing as an acknowledge it was sent to reset the trigger and stage the next data. I found that every once in a while, I would get a null or double entry in my database doing this method. I did some experimenting, and what I believe is the cause is occasionally the trigger would be read before all the data had. The trigger is set to update every second while the log data is only every 100ms, so in theory that shouldn't happen. I seemed to have fixed it for now by simply adding a timer delay between staging the dat
Hello Everyone,I'm currently working with ThingWorx version 9.6 and have encountered an issue when trying to pass data from a base/child mashup to a parent mashup using the Collection widget.Specifically, I'm using the GlobalMashupParameterBinding configuration within the Collection widget to pass a boolean value (representing a checkbox state) from the child mashup to the parent mashup.Here’s what I’ve done:Defined a boolean parameter (e.g., CheckedValue) in the GlobalMashupParameterBinding JSON.Created a mashup parameter with the same name and base type in the child mashup.Bound the checkbox state to Boolean Mashup Parameter (eg. CheckedValue) in the child mashup to send the checkbox state to the parent.In the parent mashup, I bound the global parameter to another checkbox to reflect the state.This setup works perfectly in ThingWorx versions 9.4 and 9.7, but in ThingWorx 9.6, the data is not being received in the parent mashup, and the binding doesn’t seem to take effect.Any guidance
Hi, When trying to create a user in Thingworx, the following error is showing up on the screen: "License is not available for Product: TWX_PLATFORM Feature: twx_named_user" I tried out the PTC Knowledge Centre but didn't find any solution. Why is it occurring? Thingworx Version: 9.7.0-b47 Thanks,
We are looking to manage all kepware tags from a central server. Once testing is done, we currently need to export and import these tags into 14 other servers that have Kepware installed. This is tedious and prone to error. I know I could copy the project file from the central server and copy to the remote servers, but this would entail taking down the Kepware service copying the file and then restarting the service. I'd prefer to not have to do this. Is anyone familiar with a tool/program that will compare/sync all Channels/PLCs/TagGroups/Tags between two servers and perform the update without having to take down the services?
Hi, Is there a way to get all the Entities based on an 'XYZ' Organization assigned to it? Thanks,
Hello, I am not able to login to Thingworx composer as it is saying password incorrect. Is there a way i can recover the password or change the Administrator account password? Thanks
Hi all, Trying to setup a new analysis model and having an issue with the Model File URL field. I am inputting my URL in the format /Thingworx/FileRepositories/<Repository Name>/<File Name>. It is giving this error popup however. Is there a different format to be used? Or a way to get the exact URL?
Hi Everyone, I have update the platform-settings file stil I am facing the package import policy issue: Error: Extension Exception: ExtensionPackageImportPolicy: ExtensionPackage upload attempted while import disabled. Check the ExtensionPackageImportPolicy Can anyone help me. Best Regards
Hi all, I am trying to set up an alert that will trigger multiple times if the value is below the threshold a few times in a row on data change. For example, PropertyX has an alert where if PropertyX < 800 then it alerts. PropertyX changes to 300 and the alert triggers. PropertyX then goes to 400 directly after, but this time the alert doesn't not trigger. From what I see an alert won't trigger again until it goes within the threshold again. Is there any way around this so it will trigger every time the property is below the threshold? Thanks!
Why when we want to create data table or value stream should create data shape ? what is the main function of datashape to data table or other storage feature in thingworx?
How to change the font size of the value of KPI Dial? Trying to change with some custom CSS (with ptcs style unit) it's not working.
Hi all, I am trying to find a way to simply disable grid hovering in the Thingworx grid widget. I have this grid with red and white rows. When hovering, the red rows hover as white text on white background, but the normal rows don't change on hovering. I'd like all rows regardless of state (there are a few other state colors not seen in the visual) to not have any change when hovering, but I can't seem to find any setting to disable this and can't seem to find a way to bind a state definition to the hovering settings and all rows are required to have the same hover settings. Is there any way to simply disable this? Normal: Red row hovered:
Hello All,I am currently facing an issue with the pagination widget in my ThingWorx mashup. The initial load of the data works perfectly, but when I select a page number from the pagination widget, the service fails to return the correct data and gives an error code 500(Error executing service Test1.Message: : Wrapped java.lang.NullPointerException-See Script Error Log for more details.). Specifically, the last page fails when it has fewer rows than the page size. Here is a summary of my setup: Service Configuration: I am using the QueryImplementingThingsOptimizedWithTotalCount service to fetch data with pagination. The service parameters include maxItems, offset, and query. Pagination Logic: The offset is calculated as (pageNumber - 1) * pageSize. The service correctly handles the initial load but fails when navigating to the last page with fewer rows. Code Snippet: var offset_Value = (pageNumber - 1) * pageSize; let assetList =
Hi, i'm using ThingWorx 9.3.9-b1648, and I'm seeing a lost of logs related to the Stack Tracing feature.Even after disabling it, the system still generates these logs.Has anyone else experienced this issue?
While Passing data from datatable to grid widget, each cell value differs in its string count. In that case, to display the entire value in each cell, i can set constant column width but i expect the row height to be dynamic based on the no of strings present in each cell.(motto is to show the complete data in the cell). How it can be acheived. It leads to different row height for each rows.
We are using Windchill Authentication for Thingworx user authentication . While Windchill can authenticate the AD users and doesn't validate case sesnitivity , ThingWorx autherntication fails for user when UsernName is Uper/Lower Caaase . Example: if AD user name is xyz.pqr , User can login and authenticated to Windchill with any user name ( Xyz.Pqr/ xyz.pqr) . However, in Thingworx user can't get Authenticated with Xyz.Pqr We've yet implemented SSO and using Windchill 12.0.2 with TWX -9.3. I kow other enterprises who are using Thingworx extensively with 1000s of concurrents users logging into system . Anyone can help , how to do an User Management in ThingWorx and navigate ?
What are the differences in the following tags:cnc_rddynamic2_ActScnc_rdaxisdata:3:1:1:datacnc_rdaxisdata:3:2:1:data
Im new to PTC Thingworx and I created a child mashup. To load it, I made it a popup of my main mashup. I put a close button inside the child mashup and wants to close the popup. Not sure how to do this, appreciate if you could help me with this.
Hi all,I’m working on a project where I have a DataShape that includes a field with the base type PASSWORD.In my implementation, I use the following logic to hash and encrypt the password: Add User Service (loginPassword basetype is PASSWORD in datashape) result = Things[userDataTable].CreateValues(); result.AddRow({ loginName: loginName.toUpperCase(), firstName: firstName, lastName: lastName, language: language, emailAddress: emailAddress.toLowerCase(), hashedLoginName: me.SHA256({ toHash: loginName.toUpperCase() }), groups: groups, loginPassword: Resources["EncryptionServices"].EncryptPropertyValue({ data: me.SHA256({ toHash: loginPassword }) }) }); //me.UserDataBase Things[userDataTable].AddDataTableEntry({ values: result }); User Login Service const serviceName = "userLogin"; const LOG_PREFIX = me.name + " :: " + serviceName + " :: "; const userDataTable = "Project_" + Location + "_Users.DT"; logger.info(LOG_PREFIX + "Start Servi
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.