Recently active
GUIDE CONCEPTStep 1: Overview DiagramStep 2: Install ThingWorx Kepware ServerStep 3: Create Industrial GatewayStep 4: Connect Kepware to ThingWorxStep 5: Connect OPC UA Server to Kepware Use ThingWorx Kepware Server as an OPC UA Client GUIDE CONCEPT This guide will explain how ThingWorx Kepware server can function as both an OPC UA Server, and a client to a remote OPC UA Server. Following the steps in this guide, you will create a OPC UA server in Azure, then we will teach you how to use data from the OPC UA server in ThingWorx. YOU'LL LEARN HOW TO Create an OPC UA Server in AzureConfigure Kepware as on OPC UA ClientConnect Kepware to ThingWorx FoundationMonitor OPC UA data in ThingWorx Composer NOTE: This guide's content aligns with ThingWorx 9.3. The estimated time to complete this guide is 60 minutes Step 1: Overview Diagram In this guide, ThingWorx Kepware Server will serve as both an OPC UA client, and a ThingWor
Step 6: Create OPC UA Tag in ThingWorxStep 7: Next Steps Step 6: Create OPC UA Tag in ThingWorx We will now create a Device in Kepware with a Tag whose value will be shown in ThingWorx. Right-click on Channel1 that was just created, then click Next to accept the default name Device1 Click Next six times to accept the default settings, Then click the Select import items button. Expand the remote OPC UA server URL, then expand OpcPlc and Telemetry. Click SlowUint1 to select it, then click Add items >>.Click OK, Next, Finish.Return to ThingWorx Composer. Under Browse > Modeling > Industrial Connections, open IndConn_Server.Expand Channel1 > Device1 > OpcPlc, then click Telemetry. Click the check-box next to SlowUint1.Click Bind t
GUIDE CONCEPTStep 1: Create an Azure IoT HubStep 2: Create IoT deviceStep 3: Connect to Azure IoT HubStep 4: Next Steps Send data from an MXChip Developer kit to your Azure IoT Hub GUIDE CONCEPT Users of the MXChip IoT DevKit (a.k.a. MXChip), follow these quick steps to send temperature and humidity data from built-in IoT DevKit sensors to the Azure IoT Hub. YOU'LL LEARN HOW TO Connect the IoT DevKit to a wireless access pointCreate an Azure IoT Hub and register a device for the IoT DevKitConnect IoT Devkit to Azure IoT Hub NOTE: This guide's content aligns with ThingWorx 9.3. The estimated time to complete this guide is 80 minutes Step 1: Create an Azure IoT Hub Choose +Create a resource, then choose Internet of Things.Click Iot Hub from the list on the right. You see the first screen for creating an IoT hub. Fill in the fields. Subscription: Select the subscription to use for your IoT hub. Resource Group: You
Hi, I have issues with thing properties bound to remote Kepware tags. The Kepware tags are connected to OPC-UA endpoints and they all work and are updated as expected in the Quick OPC-UA client. The Industrial Connection status is connected and the bound properties display as healthy. But when the Kepware values change, the properties are not updated. Refreshing the thing properties does nothing, but when I save the thing, then the values are updated. The strange thing is this only happens on some bound tags and not all of them. The applicationkey is created with the admin user for testing purposes right now. Does anyone have similar experiences? Regards JK
Hello, We are using MFA, and we've configured a connection to Kepserver with an asset and remotely bound properties to Kepserver tags. The connection pushes values every seconds (in monitoring section we view that we receive it every second), and we need to log those values even haven't changed. Remoted bound properties Data Change Type property is set to Always, but QueryPropertyHistory service does't show a value for every second, only the changes. How can we get it? Thanks in advance
Hey everyone !I am design a good loking ui interface, anyone know if it's possible to change the color/style of the scrollbar in the mashup ?here is a screen of my front-end application :
Hi All,Do we have any kind of decoders available for ThingWorx to read the MQTT data with Sparkplug Specification? Currently I can read the data in encrypted format but I wanted to get it decrypted and get it as a JSON. Any help to understand this is appreciated. Thanks.
Step 5: PropertiesStep 6: Data ShapesStep 7: Events and Services Step 5: Properties In the Delivery Truck application, there are three Delivery Truck Things. Each Thing has a number of Properties based on its location, speed, and its deliveries carried out. In this design, when a delivery is made or the truck is no longer moving, the Property values are updated. The deliveryTruck.c helper C file is based on the DeliveryTruck Entities in the Composer. After calling the construct function, there are a number of steps necessary to get going. For the SimpleThing application, there are a number of methods for creating Properties, Events, Services, and Data Shapes for ease of use. Properties can be created in the client or just registered and utilized. In the SimpleThingClient application, Properties are created. In the DeliveryTruckClient application, Properties are bound to their ThingWorx Platform counterpart. Two types of structures are used by the C SDK to defi
Step 8: TasksStep 9: File Transfer ExampleStep 10: Support Other PlatformsStep 11: Next Steps Step 8: Tasks If you are using the built-in Tasker to drive data collection or other types of repetitive or periodic activities, create a function for the task. Task functions are registered with the Tasker and then called at the rate specified after they are registered. The Tasker is a very simple, cooperative multitasker, so these functions should not take long to return and most certainly must not go into an infinite loop. The signature for a task function is found in [C SDK HOME DIR]/src/utils/twTasker.h. The function is passed a DATETIME value with the current time and a void pointer that is passed into the Tasker when the task is registered. After creating this function, it will need to be registered using the twApi_CreateTask function after the connection is created. Below shows an example of creating this function, registering this function, and how this function c
Guide ConceptStep 1: Examples and Strategy Learn how to create factory line solutions the can help take you to the next level Guide Concept This project will introduce more complex aspects of the ThingWorx application and solution building. Following the steps in this guide, you will develop your own IoT application or get a jump start in how to utilize ThingWorx for your needs. We will teach you how to create a focused rules engine or service level logic to be used with the ThingWorx Platform. You'll learn how to Create automated machine processesUse Services, Alerts, and Subscriptions to handle processes without human interactionIntegrating complex logic with straight forward step by step systems NOTE: This guide's content aligns with ThingWorx 9.3. The estimated time to complete ALL parts of this guide is 60 minutes Step 1: Examples and Strategy Download the attached FoodIndustry.zip and extract/import the contents.
Step 3: Creating Machine ProcessesStep 4: Automating ProcessesStep 5: Handling Cooking MachinesStep 6: Next Steps Step 3: Creating Machine Processes Having data and properties without moving parts would be useless. We already setup services on how to perform an inspection in the last guide. This time around, let's form processes to create our products and generate any alerts whenever we've finished production. We won't show too much into our recipe (it's a family secret), but we will highlight some concepts to help with making our machine process smoother.We won't go into creating an SMT line. For a complete guide on how to create such an application you can view our Monitor an SMT Assembly Line guide. Events and Subscriptions Let's create events for the cook time being done and a subscriptions on how to handle these scenarios. Open the Fizos.BrautsMachine.ThingTemplate template and go to the Events tab.Click the + Add bu
Guide ConceptStep 1: What Are FunctionsStep 2: Create an Expression Discover how ThingWorx Functions can be implemented in a compelling Mashup design. Guide Concept This project will introduce how to create complex user interfaces that are built by using simple Mashup functions. Following the steps in this guide, you will build a web application with multiple layers.We will teach you how to create a professional user interface that effectively conveys information to users. You'll learn how to Navigate to other UIsCreate expressions and validationsCreate event routers and data handlingCreate confirmation modals/pop-upsCreate status messages NOTE: This guide's content aligns with ThingWorx 9.3. The estimated time to complete ALL parts of this guide is 60 minutes Step 1: What Are Functions In the Mashup Builder, we utilize Functions to create added capabilities in our Mashups. Whether we are navigating to another Mashup or triggerin
Step 3: Create Validation and StatusStep 4: Create Confirmation ModalStep 5: Create Navigation Step 3: Create Validation and Status With our MyFunctionsMashup Mashup open, let's add a Validation. A Validation is similar to an Expression, except you have the added capability of triggering Events based on a True or False outcome of your validation. We will use the Validation to check and confirm the Text Field we created only has the values we added in our Functions. Let's also add two Status Message Functions that will show whether or not a user has added any text outside of what we want. Open the MyFunctionsMashup Mashup to the Design tab.Click the green + button in the Functions area. In the New Function modal, select Validator. Set the Name to isDataClean. Click Next. Click Add Parameter.Set the Name to text and ensure the Base Type is STRING. Add the following code to the Expression are:if(tex
Step 6: Create Event RouterStep 7: Next Steps Step 6: Create Event Router What do you do when a user can perform multiple events in which data is generated, and want those outputs to go through the same exact process? An Events Router Function is your solution. The Events Router Function allows for multiple data sources to be funneled to one location. Let's create a simple example in our MyFunctionsMashup Mashup. In this Mashup, we'll add two Text Field Widgets and a Label Widget. The two Text Field Widgets will take user input and then an Events Router will send the output to the Label. Let's start! Open the MyFunctionsMashup Mashup to the Design tab.Click on the Widgets tab.Type in the Filter text box for Text Field. Drag and drop TWO (2) Text Field Widgets to the Mashup Canvas.Type in the Filter text box for Label. Drag and drop ONE (1) Label Widget to the Mashup Canvas.We now have all the Widgets we need for this
Hi, Do we have a solution to that since that question was asked ?
Hello, is there any way to clean a selected location in the google map widget?
There are a few things mentioned on this site about this "SAMEORIGIN" error along with suggested fixes. But the easiest fix I have found is when entering the URL, add the following parameter ("?rs:embed=true") (without parens and quotes, of course). You should then be able to open URLs within the Webframe widget. Your URL should then read something like https://my.domain.com/myreport?rs:embed-true&otherparams=asneeded. I ran across this when attempting to pull down a report from SSRS into ThingWorx. The on-screen error was not helpful at all (On-screen rror message: <URL> refused to connect). But when I opened Developer Tools, I saw the full error (“Refused to display < URL > in a frame because it set ‘X-Frame-Options’ to ‘sameorigin’ ”). Adding the above parameter allowed the report to open very easily, and then you can then print a full paginated report from within ThingWorx from SSRS. E. Shaffer
Guide ConceptStep 1: What Are Dynamic GridsStep 2: Create A Dynamic Grid Discover how ThingWorx advance tree grids and grids can be implemented in a compelling Mashup design. Guide Concept This project will introduce how to create complex user interfaces that are built by using Mashup grids and JavaScript services. Following the steps in this guide, you will build a web application with advanced data displays.We will teach you how to create a professional user interface that effectively conveys information to users. You'll learn how to Create dynamic tree grids to display hierarchy.Create dynamic grids to display growing data number of data points. NOTE: This guide's content aligns with ThingWorx 9.3. The estimated time to complete this guide is 30 minutes Step 1: What Are Dynamic Grids In the Mashup Builder, we utilize Functions to create added capabilities in our Mashups. Whether we are navigating to another Mashup or triggerin
Step 3: Create A Tree GridStep 4: Next Steps Step 3: Create A Tree Grid With our MyFunctionsMashup Mashup open, let's add a Validation. A Validation is similar to an Expression, except you have the added capability of triggering Events based on a True or False outcome of your validation. We will use the Validation to check and confirm the Text Field we created only has the values we added in our Functions. Let's also add two Status Message Functions that will show whether or not a user has added any text outside of what we want. Open the MyFunctionsMashup Mashup to the Design tab.Click the green + button in the Functions area. In the New Function modal, select Validator. Set the Name to isDataClean. Click Next. Click Add Parameter.Set the Name to text and ensure the Base Type is STRING. Add the following code to the Expression are:if(text === "NO") { result = true; } else
Guide ConceptStep 1: Completed ExampleStep 2: Understanding Directory ServicesStep 3: Configure ThingWorx and ApacheDSStep 4: Import Users Into ThingWorxStep 5: Next Steps Create users, security groups, and provide a method to authenticate with LDAP. Guide Concept LDAP allows for a layer of security within your company or organization to be utilized for authentication or user management. These concepts and steps will allow you to focus on development of your application while still allowing the ability to utilize the power of ThingWorx! We will teach you how to enable LDAP authentication in ThingWorx and configuring ThingWorx to connect to a LDAP server. You'll learn how to How to enable LDAP Authentication on ThingWorxConfiguring ThingWorx to connect to an LDAP serverImporting users from LDAP NOTE: This guide's content aligns with ThingWorx 9.3. The estimated time to complete this guide is 60 minutes Step 1: Completed Example Dow
Hi Developers,I'm seeking on how we can get over 500 records with 1 SQL query.currently we can get maximum 500 records with 1 query. can we make this limit bigger ?
Step 5: Mashup Builder APIStep 6: Mashup Builder Callbacks Step 5: Mashup Builder API The following APIs can be accessed by a widget in the context of the Mashup Builder: API Description this.jqElementId This is the DOM element ID of your object after renderHtml(). this.jqElement This is the jquery element. this.getProperty(name) / this.setProperty(name,value) Note that every call to this function will call afterSetProperty() if it’s defined in the widget. this.updatedProperties() This function should be called anytime properties are changed in the widget so t
Step 7: Widget Lifecycle at RuntimeStep 8: Runtime APIs available to WidgetsStep 9: Runtime Callbacks Step 7: Widget Lifecycle at Runtime When a Widget is first created, the runtime will obtain any declared Properties by calling the runtimeProperties() function. The property values that were saved in the Mashup definition will be loaded into your object without your code being called in any way. After the Widget is loaded but before it’s displayed on the screen, the runtime will call renderHtml() for you to return the HTML for your object. The runtime will render that HTML into the appropriate place in the DOM. Immediately after that HTML is added to the DOM, you will be called with afterRender(). This is the time to do the various jQuery bindings (if you need any). It is only at this point that you can reference the actual DOM elements, and you should only do this using code such as: // note that this is a jQuery object var widg
Step 10: Building and ImportingStep 11: TipsStep 12: Next Steps Step 10: Building and Importing After you’ve completed your code updates, it’s time to build and import! Below are instructions for building with the framework you have set for the project. Build Extension with Ant Go to the Package explorer view.Right click on build-extension.xml.Hover over Run As and select Ant Build. Your console output will indicate BUILD SUCCESSFUL. This will build your project and create the extension zip in the your_project->build->distributions folder of your project. Build Extension with Gradle Right click on your project ->Gradle (STS)->Tasks Quick Launcher. Set Project from the drop-down menu to your project name and type Tasks as build.Press Enter. Your console window will display BUILD SUCCESSFUL. Your extension has been created and stored as a zip file in your_project->
Guide ConceptStep 1: Top Level LayoutStep 2: Import DataStep 3: Map MashupStep 4: Navigation Panel Discover how ThingWorx Widgets can be implemented in a compelling Mashup design. Guide Concept This project will introduce how to create complex user interfaces that are built by combining simple Widgets and basic styling. Following the steps in this guide, you will build a web application showing both geographic and table based information. We will teach you how to create a professional user interface that effectively conveys information to users. You'll learn how to Organize UI elements in a Mashup layoutUse the Repeater widget effectivelyUse Styles to customize UI elements within a Mashup NOTE: This guide's content aligns with ThingWorx 9.3. The estimated time to complete ALL parts of this guide is 60 minutes Step 1: Top Level Layout A Mashup like this does take some time to assemble, but is built by layering simple Widgets.
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.