Recently active
Guide ConceptStep 1: Configure ConnectionStep 2: Add UserStep 3: Create a ModelStep 4: Configure Asset PropertiesStep 5: Next Steps Configure ThingWorx Advisors to remotely monitor your connected assets. Guide Concept This project will introduce ThingWorx Advisors. Following the steps in this guide, you will learn how to add users, create a model to store data, and configure asset Properties. We will show you how ThingWorx Advisors let you remotely monitor equipment without writing any code. You'll learn how to Configure ThingWorx AdvsorsConnect ThingWorx Advisors to ThingWorx Kepware ServerCreate assets in ThingWorx and tie them to data items in Kepware Server NOTE: The estimated time to complete this guide is 60 minutes Step 1: Configure Connection This step shows how to open Controls Advisor, and configure the communication with ThingWorx Kepware Server. Open Controls Advisor Click on Hosted Server In
Guide ConceptStep 1: Persistence Provider OptionsStep 2: Next Steps Select the right database to use with your ThingWorx installation. Guide Concept When you develop an application with ThingWorx, you must save the configuration data that defines the data model and the user interface. You also need to store the dynamic data that is generated by devices at runtime (such as temperature or location). ThingWorx uses the term Persistence Provider to refer to any type of service that saves application data, usually it is a database. When your application moves into production you must choose and configure a Persistence Provider that meets your requirements. You'll learn how to Pros and cons of different databases that can be used as persistence providers for ThingWorxThe database best suited to certain applicationsWhere to find detailed information about the Persistence Providers NOTE: The estimated time to complete this guide is 30 minutes
Does anybody know the custom CSS that will reduce the 8px padding-left associated with the Column sort feature? The icon is 18px wide and then with 8px of padding it is too much for grid headers. Also the CSS for changing the background of the Sort-icon would great.
Guide ConceptStep 1: Clustering OverviewStep 2: ThingWorx Active-Active ArchitectureStep 3: Next Steps Learn how ThingWorx can be deployed in a clustered environment Guide Concept Web applications have increased reliability and performance by using a "pool" of independent servers called a cluster. It is important to understand what benefits the different methods of clustering provide, and what the different methods can mean for your system. ThingWorx Foundation can be deployed in either an Active-Active clustered architecture or a standard single-server deployment. This guide describes the benefits of an Active-Active clustered architecture over other clustering methods and provides a system administrator with resources to navigate the different architecture options. You'll learn how to Overview of different server clustering techniquesPros and cons of the different clustering configurations that can be used with ThingWorxWhere to find detailed
Had to to a reinstall of Kepware V6.12.361.0. I had exported the current project to a .json file, but when I try to import it there's an error "Failed to parse JSON document at line xxx: Unrecognized property." The line is ""datalogger.LOG_GROUP_ENABLED": false," I'm still pretty green with Kepware but this sure looks like a legit entry to me. Any ideas? Thanks. Mike.
Hello, I see that there is a "useSSL" checkbox in the configuration, but does anybody have any documentation posted by PTC that details the version of TLS? Thanks!
What is integration logs? Where can I find this in server?
Guide ConceptStep 1: Completed ExampleStep 2: FunctionalityStep 3: Create EventsStep 4: Services Interface Automate business processes with Services, Events and Subscriptions. Guide Concept This project will introduce Services, Events, and Subscriptions inside of the ThingWorx platform.Following the steps in this guide, you will be able to expand your data model using Services, Events, and Subscriptions. We will teach you how to make a more robust and enjoyable experience for users simply by using the resources inside of the ThingWorx Composer. You'll learn how to Create Events, Services and Subscriptions in ComposerUtilize the ThingWorx Edge SDK platforms with Services, Subscriptions, and Events NOTE: The estimated time to complete this guide is 60 minutes Step 1: Completed Example This guide references the attached EventsServicesSubscription.zip. The sample application is based on a company needing to make deliveries. The
Hello, I'm trying to trigger a Scheduler. Here is my CRON : 0 0 15 * * ? => launch my Scheduler every day at 3 PM I don't know why it's not trigger when I try to test a periodic trigger then it's working (something like : 0/10 * * * * ?) So the problem is when I set a specific time then the Scheduler is not triggered! My thingworx version: 9.3 Anyone already had this problem? Thank you in advance for your help.
Hello, I've been working with JSON as inputs to services a lot more lately and I've noticed a strange behavior, at least for me. When I have set the Inputs as a JSON: And put a JSON object with an array in it (with several objects in it), something like this:When using this object in the code and trying to push some new objects into this array I get the error saying that the .push() function doesn't exist. "TypeError: Cannot find function push in object" But if I declare the exact same object in the code, something like this: let array = { "PlatformData": [ { "Comment": "User Projects (not the PTC projects)", "Description": "1\nP", "Instance": "", "ServerName": "", "TypeOfEntity": "Projects", "Timestamp": "2022-11-04 15:52:37.170", "Name": "" }, { "Comment": "User Projects (not the PTC projects)", "Description": "", "Instance": "", "ServerName": "", "TypeOfEntity": "Projects", "Timestamp": "2022-11-04 15:52:37.170", "Name": "" } ]
Step 4: Implement New FeaturesStep 5: Next Steps Step 4: Implement New Features The SMT Assembly Line Data Model was built around a sample manufacturing facility that tracks critical data points, including diagnostic information for: motherboardsassembly machinesassembly line performance To make informed decisions based on the diagnostic and performance data, you can add features that will increase analytics capabilities. In this optional step, we'll add a Line Chart to see the performance of any given assembly machine. Once completed, we can create Services that will be used to make calculations on the data we have generated from the assembly line. For a final challenge, you can create a service that will compare data points to identify what works best in an assembly machine, a larger internal queue, or more placement heads. Setup New Mashup Create a Mashup that is Responsive and name it SMTTimeSeriesMashup.Click the Layout tab and add a c
GUIDE CONCEPTStep 1: Examples and StrategyStep 2: Creating Security GroupsStep 3: Configuring PermissionsStep 4: Next Steps Learn how to create or update your system to be more secure GUIDE CONCEPT ThingWorx allows for a layer of security within your company or organization to be utilized for authentication and 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 and configure ThingWorx to perform your security needs. YOU'LL LEARN HOW TO Securing data and private informationUse services, alerts, and subscriptions to handle processes without human interactionHandling group and organization permissions NOTE: The estimated time to complete this guide is 60 minutes. Step 1: Examples and Strategy Download the attached FoodIndustry.zip users and extract/import the contents. T
I have a requirement to switch on a camera from browser of ipad to click a image and store it in system. For this I am trying to build a custom widget. For this I have created a "CameraON" boolean property in camera.ide.js file. From camera.runtime.js file I am checking for this property, if it is true I am trying to switch on the camera. But it is not working. I am attaching both the files for reference. It would be helpful if someone can help on this or suggest how to troubleshoot.Thanks in advance!
Dear community, I am having trouble with the QueryDataTableEntries Service of DataTables, Build 9.3.0-b20. I prepared an example and attached it to this thread, it contains a DataTable Thing with an according DataShape. The DataShape has 3 fields, each is defined as part of the key. The DataTable has 8 entries (2 different values per field, permutated), they are added by the Init Service which is called on ThingStart. The Service VerifyQueryDataTableEntries performs 4 tests to query the data. The first two are working well. The last is failing, it doesn't return any row but I would expect to receive one.The third test seems to be an act of randomness. First it succeeds but if you execute the Init Service (or restart the DataTable) a second time it also fails!??? I consider this behavior a bug. Or at least it is a change in behavior since 8.4.15, in our old environment all tests succeed. Thank you for checkingBenny
Hello everyone, I've created an extension that convert a file from csv to parquet and send it to Event Hub. The creation of parquet is based on spark-3.3.0-bin-hadoop2 libraries installed on file system and referred by an enviroment variable. This scenario is working well but i wondering if is possible perform the same action loading the spark-3.3.0-bin-hadoop2 as a Thingworx extension. In this case how can I referred the library in an environment variables ?Answering question could solve the problem when Thingworx is installed in a cloud environment. Thank you
Guide ConceptStep 1: Learning Path OverviewStep 2: Create GatewayStep 3: Connect to FoundationStep 4: Bind Industrial TagStep 5: TroubleshootingStep 6: Next Steps Learn how to connect ThingWorx Kepware Server to Foundation. Guide Concept This guide will teach you how to create a backend Data Model in ThingWorx Foundation that works with ThingWorx Kepware Server to collect data from an Allen-Bradley PLC and send it to ThingWorx Foundation. You'll learn how to Create a Data Model in ThingWorx Foundation that accepts information from ThingWorx Kepware Server NOTE: The estimated time to complete this guide is 30 minutes Step 1: Learning Path Overview Assuming you are using this guide as part of the Rockwell Automation Learning Path, then you have now completed each of the following installations: Connected Components WorkbenchThingWorx Kepware ServerThingWorx Foundation (for Windows) You’ve also connected an Allen-Bradley
GUIDE CONCEPTStep 1: Connection Process Keys to utilizing the C and Java SDK for ThingWorx application development GUIDE CONCEPT This project will introduce to coding examples utilized for SDKs to be used with Java and C. You can also use the Java SDK for Android development. Following the steps in this guide, you will be better prepared to creating your own application using one of our SDKs. We will teach you how to handle Properties, Entities, data, make Service calls and creating Remote Services. YOU'LL LEARN HOW TO How to create, update, and retrieve Property values Utilize Data Shapes for handling data and triggering Events Construct Info Tables for Services and retrieving data after Service calls Add key features of an edge/remote application NOTE: The estimated time to complete this guide is 30 minutes. Step 1: Connection Process he ThingWorx SDKs follows a three-step process
Step 2: Java Properties Step 2: Java Properties In the ThingWorx environment, a Property represents a data point, which has a: Name Value Timestamp Quality (optional) Define Properties You can define attributes, base types and other aspects of ThingWorx properties. Attributes The table below provides information on the different attributes that are used to define a property. Attribute Details name Specifies the name of the property that will appear in ThingWorx when users browse to bind the related Thing. description Provides additional information for the property. baseType Specifies the type of the property. For a list of base types supported by the SDK, refer to the BaseTypes chart below. BaseTypes The table below provides information on the different types of properties that can be created in ThingWorx. BaseType Primitive Description BOOLEAN BooleanPrimitive True or false
Step 2: Java Properties (cont.)Step 3: Java - Data ShapesStep 4: Java - Info Tables Step 2: Java Properties (cont.) Annotation @ThingworxPropertyDefinitions(properties = { @ThingworxPropertyDefinition(name = "Temperature", description = "Current Temperature", baseType = "NUMBER", category = "Status", aspects = { "isReadOnly:true" }), @ThingworxPropertyDefinition(name = "Pressure", description = "Current Pressure", baseType = "NUMBER", category = "Status", aspects = { "isReadOnly:true" }), @ThingworxPropertyDefinition(name = "FaultStatus", description = "Fault status", baseType = "BOOLEAN", category = "Faults", aspects = { "isReadOnly:true" }), @ThingworxPropertyDefinition(name = "InletValve", description = "Inlet valve state", baseType = "BOOLEAN", category = "Status", aspects = { "isReadOnly:true" }), @ThingworxPropertyDefinition(name = "TemperatureLimit", description = "Temperature fault limit", baseType = "NUMBER", category = "Faults", aspects = { "
Step 5: Java - EventsStep 6: Java - Services Step 5: Java - Events While connected to the server, you can trigger an event on a remote Thing. The code snippet from the Simple Thing example below shows how to use a ValueCollection to specify the payload of an event, and then trigger a FileEvent on a remote Thing. Create Event The two implementations of the VirtualThing.defineEvent method are used to create an event definition ThingWorx Platform.@ThingworxEventDefinitions(events = { @ThingworxEventDefinition(name = "SteamSensorFault", description = "Steam sensor fault", dataShape = "SteamSensor.Fault", category = "Faults", isInvocable = true, isPropertyEvent = false) })public void defineEvent(String name, String description, String dataShape, AspectCollection aspects) { EventDefinition eventDefinition = new EventDefinition(name, description); eventDefinition.setDataShapeName(dataShape); if (aspects != null) { eventDefinition.setAspects(aspect
Step 7: C - Entities and Functions Step 7: C - Entities and Functions All SDKs require a RemoteThing be created in ThingWorx in order to communicate. If many Things are to be created with the same properties, services, and events, we recommend that a Thing Template be derived from one of the supplied RemoteThing templates. NOTE: The macros are all defined in the twMacros.h header file. Define ThingShape ThingShapes are used in the ThingWorx object-oriented Data Model and used to create Things later on. In order to create a ThingShape, you can do so with the provided macros. In order to define a ThingShapes using a macro, you will use TW_DECLARE_SHAPE or TW_SHAPE.TW_DECLARE_SHAPE("SteamLocation","Address Shape","UniqueNameSpace"); Define ThingTemplate ThingTemplates are used in the ThingWorx object oriented Data Model and used to create Things later on. In order to create a ThingTemplate, you can do so with the
Step 8: C - Properties Step 8: C - Properties In the ThingWorx environment, a Property represents a data point, which has a: NameValueTimestampQuality (optional) Define Properties You can define attributes, base types and other aspects of ThingWorx properties. Attributes The table below provides information on the different attributes that are used to define a property. Attribute DetailsnameSpecifies the name of the property that will appear in ThingWorx when users browse to bind the related Thing.descriptionProvides additional information for the property.baseTypeSpecifies the type of the property. For a list of base types supported by the SDK, refer to the BaseTypes chart below. BaseTypes The table below provides information on the different types of properties that can be created in ThingWorx. BaseType DescriptionTW_NOTHINGAn empty value.TW_STRINGA modified UTF8 encoded string. Data and length are stored
Step 8: C - Properties (cont.)Step 9: C - Data Shapes Step 8: C - Properties (cont.) Register Properties Registering properties and services with the API: Tells the API what callback function to invoke when a request for that property or service comes in from ThingWorx.Gives the API information about the property or service so that when ThingWorx browses the Edge device, it can be informed about the availability and the definition of that property or service.If you used the TW_PROPERTY macro, your property has been registered. If using function calls, to register a property, use the twApi_RegisterProperty. The documentation for this function can be found in [C SDK HOME DIR]/src/api/twApi.h. NOTE: If you used the provided Macros to create your property, it has already been registered. Bind the Thing in order for your property to be bound. An example of registering a property is as follows: twApi_RegisterProperty(TW_THING, “SimpleThi
Step 10: C - Info TablesStep 11: C - EventsStep 12: C - Services Step 10: C - Info Tables Infotables are used for storing and retrieving data from service calls. An infotable has a DataShapeDefinition that describes the names, base types, and additional information about each field within the table. In order to create an Infotable, you can do so with the provided macros or functions. Define With Macros In order to define Infotables using a macro, use TW_MAKE_INFOTABLE or TW_MAKE_IT. Both macros can be used interchangeably. NOTE: The macros are all defined in the twMacros.h header file.twInfoTable* it; it = TW_MAKE_IT( TW_MAKE_DATASHAPE(DATSHAPE_NAME_SENSOR_READINGS, TW_DS_ENTRY("ActivationTime", TW_NO_DESCRIPTION ,TW_DATETIME), TW_DS_ENTRY("SensorName", TW_NO_DESCRIPTION ,TW_NUMBER), TW_DS_ENTRY("Temperature", TW_NO_DESCRIPTION ,TW_NUMBER), TW_DS_ENTRY("Pressure", TW_NO_DESCRIPTION ,TW_NUMBER), TW_DS_ENTRY("FaultStatus", TW_NO_DE
Step 13: C - Support Other PlatformsStep 14: Next Steps Step 13: C - Support Other Platforms If you are using a platform that is different than the options provided in the CMake configurations or in the C SDK configurations, you can add your own computer type. CMake has its own custom toolchain support that enables you to add your computer to the CMake configurations. Go to the CMake Toolchain.NOTE: The C SDK provides a CMakeList.txt file that contains the setup instructions for the C SDK. Make changes only if you have verified the configurations and compiler information.Create a CMakeList.txt file based on your OS inside the folder in which you would like to setup your application.Modify the Platform Configuration section of the CMakeList.txt file to add your personal computer architecture if it is not already listed.Ensure your configurations are in your application's CMakeList.txt file. An example of the Pla
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.