Difference between revisions of "OtfSolutionExplorer"

From emotive
Jump to navigation Jump to search
 
(121 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:Open Test Framework - Solution Explorer (Solution Management)}}[[Category:OTF]]
+
{{DISPLAYTITLE:Open Test Framework - Solution Explorer (Solution Manager)}}[[Category:OTF]]
{{NoToc}}
 
  
{{FontColor|red||EDITING ...}}
+
==Overview==
 +
{|
 +
| style="vertical-align:top;"|
 +
The '''Solution Explorer''' presents the whole OTX solution in a clear tree structure. All the elements are displayed as nodes in the tree-view starting from the "'''root node'''" to the ActionRealisations hierarchically. With the display of tree structure and with various commands to modify and handle elements, the Solution Explorer does help users to manage all parts and elements of a solution easily at design-time. It also supports with commands to execute a sequence (a procedure) directly, or to check for errors before execution, or even to build DLLs or executable files etc.
  
{{ImageStyle2|OTFSolutionExplorer.png|300px|The Solution Explorer shows the structure of an OTX solution}}
+
The Solution Explorer is a tool window, so it can be docked, floating, opened, closed, resized or set to auto hide. When starting the OTF the first time, the Solution Explorer is already opened and docked on the right of the [[OtfWorkflowDesigner|Workflow Designer]]. You can open or close it via the "'''Solution Explore'''" button ("[[File:SolutionExplorer.png]]") in the [[OtfMenuBar|Ribbon]]. Besides, it has a menu bar with some commands to help users customize the presentation of the solution tree-view. Below are the short descriptions and guidelines for this menu bar:
The Solution Explorer presents the whole OTX solution in a clear tree form. All the elements are displayed as nodes in the tree started from the root node to the ActionRealisation hierarchically.
 
  
All the elements of an OTX solution are listed below with the description of the important aspects, features and commands:
+
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Tooltip switch''' || Turns the tooltips in Solution Explorer ON/OFF.
 +
|-{{TableRow1}}
 +
|'''Display main elements''' || Displays the main elements only (Projects, Pachages, Documents and Procedures).
 +
|-{{TableRow2}}
 +
|'''Display Flow element''' || Turns the display of the flow element of a procedure ON/OFF.
 +
|-{{TableRow1}}
 +
|'''Display only global library elements''' || Hides all the elements in all referenced Ptx libraries that do not have the [[Core.Visibilities|Visibility]]:Public (default:ON).
 +
|-{{TableRow2}}
 +
|'''Expand All'''{{TooltipIcon2|(Note: The unloaded documents will not be expanded)}} || Displays all-level elements in the solution.
 +
|-{{TableRow1}}
 +
|'''Collapse All''' || Hides all elements in all projects, only displays the solution node and project nodes.
 +
|-{{TableRow2}}
 +
|'''Up''' || Moves the element up one level within a scope (e.g. moves a variable up one level in the [[#LD|local Declarations]] scope).
 +
|-{{TableRow1}}
 +
|'''Down''' || Moves the element down one level within a scope.
 +
|-{{TableRow2}}
 +
|'''Sort Items A-Z''' || Arranges elements within a scope in ascending order.
 +
|-{{TableRow1}}
 +
|'''Sort Items Z-A''' || Arranges elements within a scope in descending order.
 +
|}
  
* [[#SL|Solution (root node)]]
 
* [[#Prj|Projects]]
 
* [[#Ref|References]]
 
* [[#Pck|Packages]]
 
* [[#Doc|Documents]]
 
* [[#Imp|Imports]]
 
* [[#Val|Validities]]
 
* [[#Sig|Signatures]]
 
* [[#GD|Global Declarations]]
 
* [[#Prc|Procedures]]
 
* [[#Com|Comments]]
 
* [[#Prm|Parameters]]
 
* [[#Thr|Throws]]
 
* [[#LD|Local Declarations]]
 
* [[#Flw|Flow]]
 
  
 +
All the elements of an OTX solution are listed in the following sections with the description of the important aspects, features and commands.
 +
| style="width:10px;" |
 +
| style="vertical-align:top;"| {{ImageStyleCenter| OTFSolutionExplorer.png||The Solution Explorer shows the structure of an OTX solution }}
 +
|}
  
 +
=={{Anchor|SL|}}[[File:SolutionNode.png|32px]] Solution (root node)==
 +
An OTX solution is a standard folder in the file system and it is displayed as the "'''root node'''" in the Solution Explorer. The OTX solution folder contains a solution file ('''*.otfSln''') with solution management information (see [[OtfSolutionSettings|Solution Settings]]), and another file ('''*.otfSuo''') to record debug breakpoints, [[OtfWatchWindow|watched variable]] and information of auto reloading procedures. An OTX solution can have one or many OTX projects but it is not mandatory to have projects in the solution. These OTX projects are displayed as project nodes below the root node and only the project nodes are allowed here. The OTX projects may be located inside or outside the solution folder, the solution references to these projects with relative paths or absolute paths.
  
 +
To load or to create a solution, you can use the [[OtfStartPage#OS|related functions]] in the [[OtfStartPage|Start Page]] or the "New Solution" command in the menu File of the [[OtfMenuBar|Ribbon]]. The name of a solution can be arbitrary but it must comply with the restrictions of the operating system.
 +
 +
{{Anchor|SlnContext|}}
 +
Right-click on the '''solution''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Overview''' || Opens the Overview window to display the whole designer content of the current solution.
 +
|-{{TableRow2}}
 +
|'''Validate''' || Checks all the documents within the solution for any warnings or errors.
 +
|-{{TableRow1}}
 +
|'''Build Solution''' || Builds the DLL/JAR files of all the projects in the solution.
 +
|-{{TableRow2}}
 +
|'''Rebuild Solution''' || Cleans the solution and builds the DLL/JAR files of all the projects in the solution.
 +
|-{{TableRow1}}
 +
|'''Clean Solution''' || Deletes all the files in the output folder of the Dotnet and Java runtime of all the projects in the solution.
 +
|-{{TableRow2}}
 +
|'''Change all paths to URI''' || Searches all the paths used in all the documents of the solution and converts them to URI <br/>(limits on some activities that use paths).
 +
|-{{TableRow1}}
 +
|'''Export...> Export As PTX...''' || Exports all the projects in the current solution to the PTX library.
 +
|-{{TableRow2}}
 +
|'''Export...> Export As ZIP archive...''' || Exports the current solution to the ZIP archive.
 +
|-{{TableRow1}}
 +
|'''Add > New Project...''' || Adds a new project to the current solution.
 +
|-{{TableRow2}}
 +
|'''Add > New Player Project...''' || Adds a new player project to the current solution.
 +
|-{{TableRow1}}
 +
|'''Add > Existing Project...''' || Adds an existing project to the current solution.
 +
|-{{TableRow2}}
 +
|'''Add > Import project from PTX library...''' || Adds a new project from a PTX library to the current solution.
 +
|-{{TableRow1}}
 +
|'''Add > Import project from PPX library...''' || Adds a new player project from a PPX library to the current solution.
 +
|-{{TableRow2}}
 +
| '''Add > New Project / Player from an existing template''' || Adds a new project/player project to the current solution from an existing template.
 +
|-{{TableRow1}}
 +
|'''Rename''' || Renames the current solution.
 +
|-{{TableRow2}}
 +
|'''Add Solution to Subversion''' || Add the current solution to Subversion.
 +
|-{{TableRow1}}
 +
|'''Version Control (Subversion) > Help...''' || Opens the user manual of the TortoiseSVN.
 +
|-{{TableRow2}}
 +
|'''Version Control (Subversion) > Setting...''' || Opens the "Settings - TortoiseSVN" dialog box.
 +
|-{{TableRow1}}
 +
|'''Version Control (Subversion) > About...''' || Opens the version information dialog box.
 +
|-{{TableRow2}}
 +
|'''Open Folder in Windows Explorer''' || Opens the solution folder in a new window with Windows Explorer.
 +
|-{{TableRow1}}
 +
|'''Properties''' || Opens the [[OtfSolutionSettings|Solution Settings]] dialog box.
 +
|}
  
 +
=={{Anchor|Prj|}}[[File:Project32.png|32px]] Projects==
  
 +
Similar to the OTX solution, an OTX project is a standard folder in the file system. It contains a project file ('''*.otfPrj''') with project management information, and the necessary configuration files, also the resources for the OTX extensions etc. (see [[OtfProjectSettings|Project Settings]] for more information). An OTX project can have one or many OTX packages but it is not mandatory to have packages in the project. The OTX packages are displayed as package nodes below the project node and only the packages nodes are allowed here.
  
=={{Anchor|SL|}}Solution (root node)==
+
[[File:Exclamation.png]] Important: The names of '''all the elements below a project node''' shall conform the [[General.NamingConventions|OTX Naming conventions]]!
  
An OTX solution is a standard folder in the file system and it is displayed as the "root node" in the Solution Explorer. The OTX solution contains a solution file ('''*.otfSln''') with solution management information (see also [[OtfSolutionSetting|Solution Setting]] section), and another file ('''*.otfSuo''') to record debugging and display information. An OTX solution can have one or many OTX projects but it is not mandatory to have projects in the solution. These OTX projects are displayed as project nodes '''below the root node''' and only the project nodes are allowed here. The OTX projects may be located inside or outside the solution folder, the solution file references to these projects with relative paths or absolute paths. To load or to create a solution, you can use the [[OtfStartPage#OS|related functions]] in the [[OtfStartPage|Start Page]] or in the menu File of the [[OtfMenuBar|Ribbon menu bar]].
+
You can add a new project or add an existing project by using the [[#SlnContext|context menu of the solution]]. Besides adding a project by the [[#SlnContext|context menu of the solution]], you can use the [[OtfStartPage#NS|related functions]] in the [[OtfStartPage|Start Page]] or the "New Project" command in the menu File of the [[OtfMenuBar|Ribbon]]. Note that every new project added, a new package and a new document with the "'''main'''" procedure will be automatically created in the new project. The name of the new package will be derived from the name of the new project. The name of an OTX project should only contain letters, numbers, underscores and dashes, and the total length of the path to the project should be less than 128 characters (e.g. D:\Solution1\Project1\Project1.otfPrj < 128 characters).
  
The solution node has a context menu, right-click on the solution node to show this context menu. The functions of each entry of the context menu are described below:
+
{{Anchor|PrjContext|}}
 +
Right-click on the '''project''' node, there will be a context menu with the following entries:
 
{|{{TableHeader}}
 
{|{{TableHeader}}
 
{{TableRowContextMenuHeader}}
 
{{TableRowContextMenuHeader}}
 
|-{{TableRow1}}
 
|-{{TableRow1}}
|Validate || Checks all the documents in the solution for any warnings or errors
+
|'''Overview''' || Opens the Overview window to display the whole designer content of the solution and focuses on the selected project.
 +
|-{{TableRow2}}
 +
|'''Validate''' || Checks all the documents within the project for any warnings or errors.
 +
|-{{TableRow1}}
 +
|'''Display Instructions''' || Displays a page with the notes.
 +
|-{{TableRow2}}
 +
|'''Build Project''' || Builds the DLL/JAR file of the project.
 +
|-{{TableRow1}}
 +
|'''Build Lua Project{{TooltipIcon2|This menu only works when the DiagComRaw extension is opened.}}''' || Builds project in Lua code.
 +
|-{{TableRow2}}
 +
|'''Rebuild Project''' || Cleans the project and builds the DLL/JAR files of the projects.
 +
|-{{TableRow1}}
 +
|'''Clean Project''' || Deletes all the files in the output folder of the Dotnet and Java runtime of the projects.
 +
|-{{TableRow2}}
 +
|'''Export...> Export As PTX...''' || Exports the project to a PTX library.
 +
|-{{TableRow1}}
 +
|'''Export...> Export As Template...''' || Exports the project to a PTXT library.
 +
|-{{TableRow2}}
 +
|'''Add > New Package...''' || Adds a new package to the project.
 +
|-{{TableRow1}}
 +
|'''Add > Existing Package...''' || Adds an existing package to the project.
 
|-{{TableRow2}}
 
|-{{TableRow2}}
|Build Solution || Builds the dll files (also the executable files or setup files i) of all the projects in the solution
+
|'''Add&nbsp;>&nbsp;Add&nbsp;PTX&nbsp;library&nbsp;reference...''' || Adds a reference to a PTX library.
 
|-{{TableRow1}}
 
|-{{TableRow1}}
|Change all paths to URI || Searches all the paths used in all the documents of the solution and changes them to URI
+
|'''Add > [ProjectName]{{TooltipIcon2|This menu entry only appears if there is another project which has not been referred by this project.}}''' || Adds a reference to the project [ProjectName].
 
|-{{TableRow2}}
 
|-{{TableRow2}}
|Add >> New Project || Adds a new project to the current solution
+
|'''Paste''' || Pastes a package to the project.
 
|-{{TableRow1}}
 
|-{{TableRow1}}
|Add >> Existing Project || Adds an existing project to the current solution
+
|'''Delete''' || Deletes the reference from the solution to the project.
 
|-{{TableRow2}}
 
|-{{TableRow2}}
|Add >> Import project from Ptx library || Adds a new project to the current solution from a Ptx library
+
|'''Rename''' || Renames the project.
 
|-{{TableRow1}}
 
|-{{TableRow1}}
| Subversion Control category || Handles Subversion tasks on the solution scope (See [[SubversionControl]] section for more information)
+
|'''Set as Startup Project''' || Sets the project as the startup project of the solution.
 
|-{{TableRow2}}
 
|-{{TableRow2}}
|Open Folder in Windows Explorer || Opens the solution folder in a new window
+
|'''Add Selected Project to Subversion''' || Adds the selected project to Subversion.
 
|-{{TableRow1}}
 
|-{{TableRow1}}
|Properties || Opens the [[OtfSolutionSetting|solution setting]] dialog
+
| '''Version Control (Subversion) > Add...{{TooltipIcon2|This menu only works when the solution is under SVN control.}}''' || Adds the current project to source control of SVN which needs to be committed to SVN later..
 +
|-{{TableRow2}}
 +
| '''Version Control (Subversion) > Add to ignore list...{{TooltipIcon2|This menu only works when the solution is under SVN control.}}''' || Adds the current project to the ignore list so that it will not be added back into Subversion again by mistake.
 +
|-{{TableRow1}}
 +
|'''Version Control (Subversion) > Help...''' || Opens the user manual of the TortoiseSVN.
 +
|-{{TableRow2}}
 +
|'''Version Control (Subversion) > Setting...''' || Opens the "Settings - TortoiseSVN" dialog box.
 +
|-{{TableRow1}}
 +
|'''Version Control (Subversion) > About...''' || Opens the version information dialog box.
 +
|-{{TableRow2}}
 +
|'''Open&nbsp;Folder&nbsp;in&nbsp;Windows&nbsp;Explorer''' || Opens the project folder in a new window with Windows Explorer.
 +
|-{{TableRow1}}
 +
|'''Properties''' || Opens the [[OtfProjectSettings|Project Settings]] dialog box.
 
|}
 
|}
  
=={{Anchor|Prj|}}Projects==
+
{{Note|In the Solution Explorer, you can use keyboard shortcuts with almost all element nodes in the project node (Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste). This will be mentioned in some of the following sections where keyboard shortcuts are allowed.}}
  
Like the OTX solution, an OTX project is a standard folder in the file system. It contains a project file ('''*.otfPrj''') with project management information, and the configuration files for each OTX extension library ect. (see [[OtfProjectSetting|Project Setting]] section for more information). An OTX project can have one or many OTX packages but it is not mandatory to have packages in the project. The OTX packages in a project are displayed as package nodes '''below the project node''' and only the packages nodes are allowed here.
+
==={{Anchor|Ref|}}[[File:PtxReference32.png|32px]] References===
  
[[File:Exclamation.png]] Important: The names of all the elements below the project nodes shall conform the [[OtxNamingConventions|OTX Naming conventions]]!
+
When a project references to one or many Ptx libraries/projects with relative path or absolute path, these Ptx libraries/projects will be displayed as Ptx nodes below the "'''References'''" node of the project. You can add a reference from a project to a Ptx library/projects by using the [[#PrjContext|context menu of the project]]. To manage the references to the Ptx libraries/projects such as adding, deleting, including Ptx library into project folder or converting references path, you can open "Library Manager" in the "'''[[OtfProjectSettings#"Libraries (PDX References)" settings page|Libraries (PDX References)]]'''" tab of the [[OtfProjectSettings|Project Settings]], or using the "Library View" command ("[[File:LibraryViewAddLib16.png]]") on the "'''Test Step Libraries'''" tab in the [[OtfToolbox|Toolbox]].
  
OTX documents as well as all global entities are uniquely identified by the complete package name plus the own name???
+
Right-click on the "'''References'''" node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Add > Add PTX library reference...''' || Adds a reference from the project to a PTX library.
 +
|-{{TableRow2}}
 +
|'''Add > [ProjectName]{{TooltipIcon2|This menu entry only appears if there is another project which has not been referred by this project.}}''' || Adds a reference to the project [ProjectName].
 +
|-{{TableRow1}}
 +
|'''Manage references...''' || Open the "References" in the "'''[[OtfProjectSettings#"Libraries (PDX References)" settings page|References]]'''" tab of the [[OtfProjectSettings|Project Settings]].
 +
|}
  
=={{Anchor|Pck|}}Packages==
+
Right-click on the '''PTX/Project''' node in the reference node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Delete''' || Deletes the reference from the project to the PTX library/Project.
 +
|-{{TableRow1}}
 +
|'''Open Folder in Windows Explorer'''{{TooltipIcon2|This menu only appears when right-clicking on the PTX node.}} || Opens the folder containing the PTX in a new window with Windows Explorer.
 +
|}
  
For structured storage of OTX documents in a file system called packages are used. A package is simply a folder in the file system of the the  OTX-naming conventions  corresponds.
+
==={{Anchor|Pck|}}[[File:Package32.png|32px]] Packages===
  
Adding a Package:
+
For the structural storage of OTX documents in the file system, the OTX packages are used. A package is simply a folder in the file system whose name corresponds to the [[General.NamingConventions|OTX Naming conventions]]. The packages are displayed as package nodes below the project node. Each package can contain other packages (at any depth) or documents, it can also be empty. You can add a new package or an existing package, or paste a package either to a project by using the [[#PrjContext|context menu of the project]], or to a package by using the context menu of that package (see below). You can also use the context menu of a package to copy, cut or modify it. Keyboard shortcuts{{TooltipIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.
  
Click with the right mouse button ( context menu ) on the root node or a package
+
{{Anchor|PckContext|}}
"Menu Adding "-" New Package ... "Select, which opens a dialog box
+
Right-click on the '''package''' node, there will be a context menu with the following entries:
Enter a meaningful name a
+
{|{{TableHeader}}
Confirm your entry with "OK" button .
+
{{TableRowContextMenuHeader}}
Edit the properties:
+
|-{{TableRow2}}
 +
|'''Overview''' || Opens the Overview window to display the whole designer content of the solution and focuses on the selected package.
 +
|-{{TableRow1}}
 +
|'''Validate''' || Checks all the documents within the package for any warnings or errors.
 +
|-{{TableRow2}}
 +
|'''Add > New Document...''' || Adds a new document to the package.
 +
|-{{TableRow1}}
 +
|'''Add > Existing Document...''' || Adds an existing document to the package.
 +
|-{{TableRow2}}
 +
|'''Add > New Document from an existing template''' || Adds a new document to the current package from an existing template.
 +
|-{{TableRow1}}
 +
|'''Add > Unallocated Document...''' || Adds a document from the [[#Unallocated|"Unallocated Files"]] section to the package.
 +
|-{{TableRow2}}
 +
|'''Add > All unallocated Documents...''' || Adds all documents from the [[#Unallocated|"Unallocated Files"]] section to the package.
 +
|-{{TableRow1}}
 +
|'''Add > New Package...''' || Adds a new package inside the current package.
 +
|-{{TableRow2}}
 +
|'''Add > Existing Package...''' || Adds an existing package inside the current package.
 +
|-{{TableRow1}}
 +
|'''Cut''' || Cuts the package.
 +
|-{{TableRow2}}
 +
|'''Copy''' || Copies the package.
 +
|-{{TableRow1}}
 +
|'''Copy complete name''' || Copies the complete OTX name of the package.
 +
|-{{TableRow2}}
 +
|'''Paste''' || Pastes a package or a document to the package.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the package.
 +
|-{{TableRow2}}
 +
|'''Rename''' || Renames the package.
 +
|-{{TableRow1}}
 +
|'''Open Folder in Windows Explorer''' || Opens the package folder in a new window with Windows Explorer.
 +
|}
  
NoteImportant: At this time, the name of a package not be changed! solution : Create a new package you get there and move the documents via cut and paste.
+
==={{Anchor|Doc|}}[[File:Document32.png|32px]] Documents===
  
Dialog for adding a OTX packages
+
An OTX document is an XML file that describes all the data required for a sequence. An OTX document can reference to other OTX documents; see [[Core.Imports|Imports]] section for detail. All the documents in a package will be displayed as document nodes below the package node. The content of documents are not automatically loaded when loading the solution (except that if a procedure in a document is automatically loaded). To load the content of a document, double-click on the document or use the "'''Open/View'''" menu entry in the context menu of the document (see below). You can add a new document or an existing document, or paste a copied or cut document to a package by using the [[#PckContext|context menu of the package]]. To copy, cut or modify a document, you can use the context menu of that document. Keyboard shortcuts{{TooltipIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.
Dialog for adding a OTX packages
 
  
=={{Anchor|Doc|}}Documents==
+
{{Anchor|DocContext|}}
 +
Right-click on the '''document''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Overview''' || Opens the Overview window to display the whole designer content of the solution and focuses on the selected document.
 +
|-{{TableRow2}}
 +
|'''Open/View''' || Loads and expands the content of the document.
 +
|-{{TableRow1}}
 +
|'''View Code (OTL)''' || Opens the OTL editor window of the document.
 +
|-{{TableRow2}}
 +
|'''Validate''' || Checks for any warnings or errors in the document.
 +
|-{{TableRow1}}
 +
|'''Display Instructions''' || Displays a page with the notes.
 +
|-{{TableRow2}}
 +
|'''Meta-Data''' ||  Opens the [[OtfMetaDataWindow|Meta Data View]] tool window.
 +
|-{{TableRow1}}
 +
|'''Save''' || Saves all the changes in the document.
 +
|-{{TableRow2}}
 +
|'''Export...> Export as Single Document...''' || Exports the document to a OTX file.
 +
|-{{TableRow1}}
 +
|'''Add > Import/Reference...''' || Adds a reference from the current document to itself or to another document.
 +
|-{{TableRow2}}
 +
|'''Add > Global Declaration > New Global Constant...''' || Adds a new global constant to the document.
 +
|-{{TableRow1}}
 +
|'''Add > Global Declaration > New Global Variable...''' || Adds a new global variable (document variable) to the document.
 +
|-{{TableRow2}}
 +
|'''Add > Global Declaration > New Context Variable...''' || Adds a new context variable to the document.
 +
|-{{TableRow1}}
 +
|'''Add > Global Declaration > New State Variable...''' || Adds a new state variable to the document.
 +
|-{{TableRow2}}
 +
|'''Add > AdminData''' || Adds administration data (versioning data) to the document (see [[#Adm|AdminData]]).
 +
|-{{TableRow1}}
 +
|'''Add > Validity...''' || Adds a new validity to the document.
 +
|-{{TableRow2}}
 +
|'''Add > Signatures > New Procedure Signature...''' || Adds a new procedure signature to the document.
 +
|-{{TableRow1}}
 +
|'''Add > Signatures > New Screen Signature...''' || Adds a new screen signature to the document.
 +
|-{{TableRow2}}
 +
|'''Add > Signatures > New Device Signature...''' || Adds a new device signature to the document.
 +
|-{{TableRow1}}
 +
|'''Add > Signatures > New Device Signature...''' || Adds a new device signature to the document.
 +
|-{{TableRow2}}
 +
|'''Add > Signatures > New Structure Signature...''' || Adds a new structure signature to the document.
 +
|-{{TableRow1}}
 +
|'''Add > Signatures > New Enumeration Signature...''' || Adds a new enumeration signature to the document.
 +
|-{{TableRow2}}
 +
|'''Add > Signatures > New SingleEcuJob Signature...''' || Adds a new procedure signature with some supported parameters to the document.
 +
|-{{TableRow1}}
 +
|'''Add > Signatures > New FlashJob Signature...''' || Adds a new procedure signature with some supported parameters to the document.
 +
|-{{TableRow2}}
 +
|'''Add > Signatures > New SecurityAccessJob Signature...''' || Adds a new procedure signature with some supported parameters to the document.
 +
|-{{TableRow1}}
 +
|'''Cut''' || Cuts the document.
 +
|-{{TableRow2}}
 +
|'''Copy''' || Copies the document.
 +
|-{{TableRow1}}
 +
|'''Copy complete name''' || Copies the complete OTX name of the document.
 +
|-{{TableRow2}}
 +
|'''Paste''' || Pastes a global element (a validity, a global declataion, or a signature) to the document.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the document.
 +
|-{{TableRow2}}
 +
|'''Rename''' || Renames the document.
 +
|-{{TableRow1}}
 +
|'''Set as Startup Document''' || Sets the document as the Startup Document of the project.
 +
|-{{TableRow2}}
 +
|'''Open Folder in Windows Explorer''' || Opens the package folder containing the document in a new window with Windows Explorer.
 +
|-{{TableRow1}}
 +
|'''Properties''' || Opens the properties dialog box of the document.
 +
|}
  
A OTX document is an XML file that describes all the data required for a drain. Within a OTX document can be referred to other OTX documents, see Imports .
+
==={{Anchor|Adm|}}[[File:AdminData.png|32px]] Admin Data===
 +
Some OTX documents have a very long lifetime. They may be used or modified by many people, or even they may be exchanged between the process partners. Therefore, the documents should store the information about the change history, the person who responsible for the changes etc. This kind of data is called "'''Admin-Data'''". This data can be stored within the document or in a seperate file ('''*.adminData'''). The storage method may be set by the "'''File\Option'''" menu in the [[OtfMenuBar|Ribbon]]. The "'''Admin-Data'''" is displayed as the admin-data node below the document node. You can use the [[#DocContext|context menu of a document]] to add the "'''Admin-Data'''" to that document. To modify the "'''Admin-Data'''" of the document, use the context menu of the admin-data node.
  
Documents are not automatically loaded with the project. Upload a document via a double click . using the left mouse button on the document
+
Right-click on the '''admin-data''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Delete''' || Deletes the "'''Admin-Data'''".
 +
|-{{TableRow1}}
 +
|'''Properties'''{{TooltipIcon|(Alternative option: double-click on the admin-data node)}} || Opens the admin-data editor dialog box.
 +
|}
  
Adding a document:
+
==={{Anchor|Imp|}}[[File:Imports32.png|38px]] Imports===
  
Click with the right mouse button ( context menu ) on a package
+
With the import element of a document, references can be made ​​to other documents. The references are displayed as import elements (or import nodes) below the "'''Imports'''" node of the document. When a document refers to another document, it imports the global names defined in the referred document (imported document) and it can use these imported global names. However, not all the global names in the imported document are accessible because their [[Core.Visibilities|Visibility]] attributes may not be sufficient to the document which imports the other one.
"Menu Adding "-" New Document ... "Select, which opens a dialog box
 
Enter a  meaningful name a
 
Confirm your entry with  "OK" button .
 
Edit the self-sheep-th :
 
  
Select the item from
+
You can add a reference to a document by using the [[#DocContext|menu context]] of the current document or the context menu of the "'''Imports'''" node of the current document (see below). When you click on the corresponding menu entry, the "'''Add new reference (Import)'''" dialog box will appear. Here you can enter the prefix for the reference, note that the prefix must conform to the [[General.NamingConventions|OTX Naming conventions]]. The format of an imported global name is "'''Prefix:ElementName'''". Through the import prefix, a global name of the imported document can be accessed and can be distinguished from the global names of the other imported documents (e.g. Variable1 = '''ImportPrefix1''':GlobalConstant1 + '''ImportPrefix2''':GlobalConstant1). Besides entering the prefix, you have to select the document you want to add reference to. You can select the document in the list of the available documents displayed in the dialog box, which are all the documents in the current project, in the referenced projects and in the referenced Ptx libraries. Below each project or each Ptx library in the list of available documents, the documents will be displayed by the containing package names and the document names (e.g. "'''Package1.Package12.Package121:NewDocument1'''"). Note that you can use a document to import itself. After you have entered a prefix and selected a document to import, click "'''OK'''" button to finish the process and then you can access all the global names with sufficient [[Core.Visibilities|Visibility]] in the current document. To modify a reference, use the context menu of the import node of the reference (see below).
Click with the left mouse button on the element  (Create it not double!)
 
The name of the element is directly editable in the tree .
 
Exit the edit mode either via the " Return "key or by selecting with the mouse to another element
 
Dialog for adding a OTX document
 
Dialog for adding a OTX document
 
  
=={{Anchor|Imp|}}Imports==
+
Right-click on the "'''Imports'''" node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Add Item''' || Adds a reference from the current document to itself or to another document.
 +
|}
  
With the import element references can be made ​​to other documents. Global names are then according to their  visibility imported.
+
Right-click on an '''import''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Delete''' || Deletes the reference.
 +
|-{{TableRow1}}
 +
|'''Properties'''{{TooltipIcon|(Alternative option: double-click on the import node)}} || Opens a dialog box to modidfy the reference.
 +
|}
  
Importing a document:
+
==={{Anchor|Val|}}[[File:Validity32.png|32px]] Validities===
  
Click with the right mouse button ( context menu ) to a document (If already a reference is added, you can also click the node import click).
+
Validities allow for configuring test sequences for different runtime contexts. A Validity is any logical expression which usually consists of contextual variables or global constants. All the validities in a document are displayed as validity nodes below the "'''Validities'''" node. To add or to paste a validity to a document, you can use the [[#DocContext|context menu of the document]] or the context menu of the Validities node (see below). You can also copy, cut or modify a validity by using the context menu of that validity. Keyboard shortcuts{{TooltipIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.
"Menu Adding "-" reference ... "Select, which opens a dialog box
 
Under "Name ( prefix ) "a meaningful name one, which you can access on visible elements of the imported document within the document.
 
Choose from the list below the relevant  document from. It is the complete package name and the name of the OTX document presented, such as: "Package1.Package12.Package122: Document".
 
Confirm your entry with  "OK" button .
 
Edit the self-sheep-th :
 
  
Click with the right mouse button ( context menu ) to the element
+
Right-click on the "'''Validities'''" node, there will be a context menu with the following entries:
Menu " Properties ... Select ", it opens a dialog box
+
{|{{TableHeader}}
Edit the properties, see above, and confirm your entry by pressing the  "Ok" button .
+
{{TableRowContextMenuHeader}}
Dialog for importing external documents
+
|-{{TableRow2}}
Dialog for importing external documents
+
|'''Add Item''' || Adds a new validity to the document.
You can now access the visible elements of the imported document within the current document. The elements are offered context-sensitive in the following form to choose from:
+
|-{{TableRow1}}
 +
|'''Paste''' || Pastes a validity to the document.
 +
|}
  
Prefix: element name
+
Right-click on a '''validity''' node, there will be a context menu with the following entries:
examples: "MyImport1: MyProcedure1", "MyImport1: MyProcedureSignature1", "MyImport1: MyGlobalContextVariable1"
+
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Cut''' || Cuts the validity.
 +
|-{{TableRow1}}
 +
|'''Copy''' || Copies the validity.
 +
|-{{TableRow2}}
 +
|'''Copy complete name''' || Copies the complete OTX name of the validity.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the validity.
 +
|-{{TableRow2}}
 +
|'''Rename''' || Renames the validity.
 +
|-{{TableRow1}}
 +
|'''Properties'''{{TooltipIcon|(Alternative option: double-click on the validity node)}} || Opens the properties dialog box of the validity.
 +
|}
  
=={{Anchor|Val|}}Validities==
+
==={{Anchor|Sig|}}[[File:Signature32.png|32px]] Signatures===
  
Validities serve the adaptation of processes to different environmental conditions. A Validity is any logical expression which usually consists of one or more contextual variables.
+
A signature describes the interface for a procedure, a screen or an external diagnostic application. All the signatures in a document are displayed as signature nodes below the "'''Signatures'''" node. To add or to paste a signature, you can use the [[#DocContext|context menu of the document]] or the context menu of the "'''Signatures'''" node (see below). To copy, cut or modify a signature, use the context menu of that signature. Keyboard shortcuts{{TooltipIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.
  
Add a Validity:
+
Right-click on the "'''Signatures'''" node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Add Item > New Procedure Signature...''' || Adds a new procedure signature to the document.
 +
|-{{TableRow2}}
 +
|'''Add Item > New Screen Signature...''' || Adds a new screen signature to the document.
 +
|-{{TableRow1}}
 +
|'''Add Item > New Device Signature...''' || Adds a new device signature to the document.
 +
|-{{TableRow2}}
 +
|'''Add Item > New Structure Signature...''' || Adds a new structure signature to the document.
 +
|-{{TableRow1}}
 +
|'''Add Item > New Enumeration Signature...''' || Adds a new enumeration signature to the document.
 +
|-{{TableRow2}}
 +
|'''Add Item > New SingleEcuJob Signature...''' || Adds a new procedure signature with some supported parameters to the document.
 +
|-{{TableRow1}}
 +
|'''Add Item > New FlashJob Signature...''' || Adds a new procedure signature with some supported parameters to the document.
 +
|-{{TableRow2}}
 +
|'''Add Item > New SecurityAccessJob Signature...''' || Adds a new procedure signature with some supported parameters to the document.
 +
|-{{TableRow1}}
 +
|'''Paste''' || Pastes a signature to the document.
 +
|}
  
Click with the right mouse button ( context menu ) on the node Validities
+
Right-click on a '''signature''' node, there will be a context menu with the following entries:
Menu " Add Item ... "Select, which opens a dialog box
+
{|{{TableHeader}}
Enter a  meaningful name  in the Name field
+
{{TableRowContextMenuHeader}}
Optionally, you can under description a specification specify
+
|-{{TableRow1}}
Then select the visibility  off (Default value: Private)
+
|'''Implement new Procedure{{TooltipIcon2|(Note: This entry is only enabled for procedure signature)}}''' || Creates a new procedure and uses the procedure to implement the current procedure signature.
In the field condition a logical expression either manually or via the Expression Builder , a ("..." button). This usually consists of context variables .
+
|-{{TableRow2}}
Confirm your entry with  "OK" button .
+
|'''Cut''' || Cuts the signature.
Edit the self-sheep-th :
+
|-{{TableRow1}}
 +
|'''Copy''' || Copies the signature.
 +
|-{{TableRow2}}
 +
|'''Copy complete name''' || Copies the complete OTX name of the document.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the signature.
 +
|-{{TableRow2}}
 +
|'''Rename''' || Renames the signature.
 +
|-{{TableRow1}}
 +
|'''Add new realisation'''{{TooltipIcon2|(Note: This entry is only enabled when the signature has no realisation)}} || Adds a new realisation to the signature.
 +
|-{{TableRow2}}
 +
|'''Delete realisation'''{{TooltipIcon2|(Note: This entry is only enabled when the signature has a realisation)}} || Deletes the realisation of the signature.
 +
|-{{TableRow1}}
 +
|'''Properties'''{{TooltipIcon|(Alternative option: double-click on the signature node)}} || Opens the properties dialog box of the signature.
 +
|}
  
Click with the right mouse button ( context menu ) to the element
+
==={{Anchor|GD|}}[[File:AddVariable32.png|32px]] Global Declarations===
Menu " Properties ... Select ", it opens a dialog box
 
Edit the properties, see above, and confirm your entry by pressing the  "Ok" button .
 
Dialog for adding / editing a Validity
 
Dialog for adding / editing a Validity
 
  
=={{Anchor|Sig|}}Signatures==
+
Global declarations contains all the global constants and variables (context variables, state variables and document variables) which are visible in the whole document. These global constants and variables can also be imported and used in external documents according to their [[Core.Visibilities|Visibility]] attribute. All the global declarations in a document are displayed as global declaration nodes below the "'''Declarations'''" node of the document (note that a procedure also has a [[#LD|"Declarations"]] node). To add or to paste a global declaration, you can use the [[#DocContext|context menu of the document]] or the context menu of the "'''Declarations'''" node of the document (see below). Note the special case that you can paste a global constant or a document variable to the [[#LD|local "'''Declarations"]] node (the copy of a global constant will be a local constant, and the copy of a document variable will be a local variable, context variables and state variables are not allowed). To copy, cut or modify a global declaration, use the context menu of that global declaration. Keyboard shortcuts{{TooltipIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.
  
A signature is the description of the interface of a procedure or a screen .
+
Right-click on the "'''Declarations'''" node of the document, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Add > New Global Constant...''' || Adds a new global constant to the document.
 +
|-{{TableRow1}}
 +
|'''Add > New Context Variable...''' || Adds a new context variable to the document.
 +
|-{{TableRow2}}
 +
|'''Add > New Global Variable...''' || Adds a new global variable (document variable) to the document.
 +
|-{{TableRow1}}
 +
|'''Add > New State Variable...''' ||Adds a new state variable to the document.
 +
|-{{TableRow2}}
 +
|'''Paste''' || Pastes a global declaration to the document.
 +
|-{{TableRow1}}
 +
|'''Delete not used declarations''' || Deletes all the unused global declarations.
 +
|}
  
Add a signature:
+
Right-click on a '''global declaration''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Add to Watch window''' || Adds the global declaration to the [[OtfWatchWindow|Watch]] tool window.
 +
|-{{TableRow2}}
 +
|'''Cut''' || Cuts the global declaration.
 +
|-{{TableRow1}}
 +
|'''Copy''' || Copies the global declaration.
 +
|-{{TableRow2}}
 +
|'''Copy complete name''' || Copies the complete OTX name of the global declaration.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the global declaration.
 +
|-{{TableRow2}}
 +
|'''Rename''' || Renames the global declaration.
 +
|-{{TableRow1}}
 +
|'''Properties'''{{TooltipIcon|(Alternative option: double-click on the global declaration node)}} || Opens the properties dialog box of the global declaration.
 +
|}
  
Click with the right mouse button ( context menu ) on the node Signatures
+
==={{Anchor|Prc|}}[[File:Procedure32.png|40px]] Procedures===
Menu " Add Item ... "Select, which opens a dialog box
 
Enter a  meaningful name  in the Name field
 
Optionally, you can under description a specification specify
 
Then select the visibility  off (Default value: Private)
 
Select the type of signature (realization). Please note that the type of implementation can not be changed later!
 
Without realizing
 
Procedure Signature
 
Screen Signature
 
Confirm your entry with  "OK" button .
 
Edit the self-sheep-th :
 
  
Click with the right mouse button ( context menu ) to the element
+
A procedure is an executable part of an OTX document. It describes the actual sequences. A procedure (usually the procedure with the name "'''main'''") can be used as the entry point of a test sequence to be executed, or it can be called by a ProcedureCall activity from another OTX procedure. All the procedures in a document are displayed as procedure nodes below the "'''Procedures'''" node of the document. To add a new procedure or paste a procedure, you can use the context menu of the "'''Procedures'''" node (see below). To copy, cut or modify a procedure, use the context menu of the procedure node. Keyboard shortcuts{{TooltipIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.
Menu " Properties ... Select ", it opens a dialog box
 
Edit the properties, see above, and confirm your entry by pressing the  "Ok" button .
 
  
=={{Anchor|GD|}}Global Declarations==
+
Right-click on the "'''Procedures'''" node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Add Item... > New Procedure...''' || Adds a new procedure to the document.
 +
|-{{TableRow2}}
 +
|'''Add Item... > New Procedure from an existing template''' || Adds a new procedure to the document from an existing template.
 +
|-{{TableRow1}}
 +
|'''Paste''' || Pastes a procedure to the document.
 +
|}
  
Global declarations  for constants and variables are valid in the whole document and can according to their visibility  also be used in external documents.
+
{{Anchor|PrcContext|}}
 +
Right-click on a '''procedure''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Overview''' || style="width:600px;" | Opens the Overview window to display the whole designer content of the solution and focuses on the selected procedure.
 +
|-{{TableRow1}}
 +
|'''Open/View''' || style="width:600px;" | Opens the procedure in the [[OtfWorkflowDesigner|Workflow Designer]].
 +
|-{{TableRow2}}
 +
|'''View Code (OTL)''' || Opens the OTL editor window of the document and focuses on the selected procedure.
 +
|-{{TableRow1}}
 +
|'''Validate''' || style="width:600px;" | Checks the procedure for any errors and warnings.
 +
|-{{TableRow2}}
 +
|'''Display Instructions''' || style="width:600px;" | Displays a page with the notes.
 +
|-{{TableRow1}}
 +
|'''Meta-Data''' || style="width:600px;" | Opens the [[OtfMetaDataWindow|Meta Data View]] tool window.
 +
|-{{TableRow2}}
 +
|'''Execute Workflow''' || style="width:600px;" | Executes the procedure.
 +
|-{{TableRow1}}
 +
|'''Stop Procedure'''{{TooltipIcon2|This entry is only enabled when the current procedure is being executed.}} || style="width:600px;" | Stop the execution of the procedure.
 +
|-{{TableRow2}}
 +
|'''Update Parameters'''{{TooltipIcon2|This entry is only enabled when the current procedure implements a procedure signature.}} || style="width:600px;" | Updates the parameters and the exception declarations (see [[#Thr|Throws]]) according to the implemented procedure signature.
 +
|-{{TableRow1}}
 +
|'''Create ProcedureSignature from Procedure''' || style="width:600px;" | Creates a new procedure signature in the current document and uses the current procedure to implement the procedure signature (the parameters and exceptions of the signature are based on the current procedure).
 +
|-{{TableRow2}}
 +
|'''Cut''' || style="width:600px;" | Cuts the procedure.
 +
|-{{TableRow1}}
 +
|'''Copy''' || style="width:600px;" | Copies the procedure.
 +
|-{{TableRow2}}
 +
|'''Copy complete name''' || Copies the complete OTX name of the procedure.
 +
|-{{TableRow1}}
 +
|'''Paste''' || style="width:600px;" | Pastes a local element (a comment, a parameter, an exception or a declaration) to the procedure.
 +
|-{{TableRow2}}
 +
|'''Delete''' || style="width:600px;" | Deletes the procedure.
 +
|-{{TableRow1}}
 +
|'''Rename''' || style="width:600px;" | Renames the procedure.
 +
|-{{TableRow2}}
 +
|'''Add > Comment...''' || style="width:600px;" | Adds a comment to the procedure.
 +
|-{{TableRow1}}
 +
|'''Add > Parameter > New Procedure In-Parameter...''' || style="width:600px;" | Adds an in parameter to the procedure.
 +
|-{{TableRow2}}
 +
|'''Add > Parameter > New Procedure out-Parameter...''' || style="width:600px;" | Adds an out parameter to the procedure.
 +
|-{{TableRow1}}
 +
|'''Add > Parameter > New Procedure In/Out-Parameter...''' || style="width:600px;" | Adds an in/out parameter to the procedure.
 +
|-{{TableRow2}}
 +
|'''Add > Throw...''' || style="width:600px;" | Adds an exception declaration to the procedure.
 +
|-{{TableRow1}}
 +
|'''Add > Local declaration > New Local Constant...''' || style="width:600px;" | Adds a new local constant to the procedure.
 +
|-{{TableRow2}}
 +
|'''Add > Local declaration > New Local Variable...''' || style="width:600px;" | Adds a new local variable to the procedure.
 +
|-{{TableRow1}}
 +
|'''Add new realization'''{{TooltipIcon2|This entry is only enabled when the procedure has no realisation}} || style="width:600px;" | Adds new realisation to the procedure.
 +
|-{{TableRow2}}
 +
|'''Delete Realization'''{{TooltipIcon2|This entry is only enabled when the procedure has a realisation}} || style="width:600px;" | Delete the realisation of the procedure.
 +
|-{{TableRow1}}
 +
|'''Properties''' || style="width:600px;" | Opens the properties dialog box of the procedure.
 +
|}
  
Adding a global declaration:
+
==={{Anchor|Com|}}[[File:Comments32.png|32px]] Comments===
  
Click with the right mouse button ( context menu ) on the node Declarations
+
A comment contains a human readable information and a list of links pointing to the activities that are related to the comment. Comments are used for additional descriptions besides specification of activities. All the comments in a procedure are displayed as comment nodes below the "'''Comments'''" node of the procedure. To add a new comment or paste a comment, you can use the [[#PrcContext|context menu of the current procedure]] or the context menu of the "'''Comments'''" node (see below). You can also add a new comment directly to an activity in the [[OtfWorkflowDesigner|Workflow Designer]] by using the context menu of that activity. You can also add a link between an existing comment and an activity by dragging the comment node from the [[OtfSolutionExplorer|Solution Explorer]] and dropping it on the activity in the [[OtfWorkflowDesigner|Workflow Designer]]. To copy, cut or modify a comment, use the context menu of that comment (see below). Keyboard shortcuts{{TooltipIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.
"Menu Add ... "and then the type of declaration select:
 
Global constant,
 
Context variable or
 
Global variables.
 
This opens a dialog box.
 
Enter a meaningful name  in the Name field
 
Select the data type of the Decla-ra-tion
 
Optionally, enter a Ini ti-al value of
 
Then select the visibility  off (Default value: Private)
 
Optionally, you can under  description a  specification specify
 
Confirm your entry with  "OK" button .
 
Edit the self-sheep-th :
 
  
Click with the right mouse button ( context menu ) to the element
+
Right-click on the "'''Comments'''" node, there will be a context menu with the following entries:
Menu " Properties ... Select ", it opens a dialog box
+
{|{{TableHeader}}
Edit the properties, see above, and confirm your entry by pressing the "Ok" button .
+
{{TableRowContextMenuHeader}}
Dialog to add / edit global declarations
+
|-{{TableRow2}}
Dialog to add / edit global declarations
+
|'''Add Item...''' || Adds a new comment to the procedure.
 +
|-{{TableRow1}}
 +
|'''Paste''' || Pastes a comment to the procedure.
 +
|}
  
=={{Anchor|Prc|}}Procedures==
+
Right-click on a '''comment''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Cut''' || Cuts the comment.
 +
|-{{TableRow1}}
 +
|'''Copy''' || Copies the comment.
 +
|-{{TableRow2}}
 +
|'''Delete''' || Deletes the comment.
 +
|-{{TableRow1}}
 +
|'''Properties'''{{TooltipIcon|(Alternative option: double-click on the comment node)}} || Opens the editor dialog box of the comment.
 +
|}
  
A procedure  is the executable part of a OTX document. It describes the actual procedures / sequences. You can be the entry point of a flow system used (procedur with the name "main"), or other procedures outside the OTX document called.
+
==={{Anchor|Prm|}}[[File:Parameters32.png|32px]] Parameters===
  
Add a procedur:
+
The parameter declaration block may contain In-, Out- or InOut- parameters of procedures or signatures (Note that the "'''Term-Parameter'''" declaration is only for screen signature). The parameters will be displayed as parameter nodes below the "'''Parameters'''" node (this is the parameter declaration block). To add or to paste a parameter, use the context menu of the "'''Parameters'''" node of the procedure or the signature (see below), you can also use the [[#PrcContext|context menu of the procedure]]. To copy, cut or modify a parameter, use the context menu of that parameter (see below). Note that you can paste a copied or cut parameter from a '''procedure signature''' to a procedure and vice versa, but no other signature types are allowed. Besides, it is only allowed to paste a parameter from a signature to another signature '''with the same realisation''' (e.g. screen signature to screen signature). Keyboard shortcuts{{TooltipIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed in '''legal cases'''.
  
Click with the right mouse button ( context menu ) on the nodes Procedures
+
Right-click on the "'''Parameters'''" node, there will be a context menu with the following entries:
"Menu Add Item ... ", it opens a dialog box.
+
{|{{TableHeader}}
Enter a  meaningful name  in the Name field
+
{{TableRowContextMenuHeader}}
Optionally, you can under  description a  specification specify
+
|-{{TableRow1}}
Then select the  visibility off (Default value: Private)
+
|'''Update Parameters{{TooltipIcon2|(Note: This entry is only for the &quot;Parameters&quot; node of a procedure and only enabled when the procedure implements a procedure signature)}}''' || Updates the parameters and the exception declarations (see [[#Thr|Throws]]) of the procedure according to the implemented procedure signature.
Optionally, you can under ValidFor a Validity enter, see basic concepts .
+
|-{{TableRow2}}
Furthermore, you can create a field in the next  procedure Signature  select which implements the procedur. In this case, all parameters of the procedur be covered by the signature.
+
|'''Add > New Procedure In-Parameter...''' || style="width:600px;" | Adds an in parameter to the procedure.
You can still decide whether the procedur to have a realization or not addition, see  basic concepts .
+
|-{{TableRow1}}
Confirm your entry with  "OK" button .
+
|'''Add > New Procedure out-Parameter...''' || style="width:600px;" | Adds an out parameter to the procedure.
Edit the self-sheep-th :
+
|-{{TableRow2}}
 +
|'''Add > New Procedure In/Out-Parameter...''' || style="width:600px;" | Adds an in/out parameter to the procedure.
 +
|-{{TableRow1}}
 +
|'''Paste''' || Pastes a parameter to the procedure or signature.
 +
|}
  
Click with the right mouse button ( context menu ) to the element
+
Right-click on a '''parameter''' node, there will be a context menu with the following entries:
Menu " Properties ... Select ", it opens a dialog box
+
{|{{TableHeader}}
Edit the properties, see above, and confirm your entry by pressing the "Ok" button .
+
{{TableRowContextMenuHeader}}
Run a procedure:
+
|-{{TableRow1}}
 +
|'''Add to Watch window''' || Adds the parameter to the [[OtfWatchWindow|Watch]] tool window.
 +
|-{{TableRow2}}
 +
|'''Cut''' || Cuts the parameter.
 +
|-{{TableRow1}}
 +
|'''Copy''' || Copies the parameter.
 +
|-{{TableRow2}}
 +
|'''Copy complete name''' || Copies the complete OTX name of the parameter.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the parameter.
 +
|-{{TableRow2}}
 +
|'''Rename''' || Renames the parameter.
 +
|-{{TableRow1}}
 +
|'''Properties'''{{TooltipIcon|(Alternative option: double-click on the parameter node)}} || Opens the properties dialog box of the parameter.
 +
|}
  
Click with the right mouse button ( context menu ) on the procedure
+
==={{Anchor|Thr|}}[[File:Throws32.png|32px]] Throws (exceptions)===
Menu " from the end-lead-ing select ". The sequence is started.
 
Dialog for adding / editing procedures
 
Dialog for adding / editing procedures
 
  
=={{Anchor|Com|}}Comments==
+
The author of the OTX document can predict the exceptions that may potentially be thrown during execution. These exceptions shall be declared in the "'''Throws'''" (exceptions) nodes of the procedure signatures, the device service signatures and the procedures. The exception declarations can inform other persons who re-use the sequence the potential exceptions in order to handle them. Note that ('''1''') the implemented procedure signature of the current procedure, or ('''2''') the procedure calling to the current procedure (or to the implemented procedure signature) should also declare the same exceptions in their "'''Throws'''" nodes. Each declared exception is displayed as an exception node in the "'''Throws'''" node. To add or to paste an exception, use the [[#PrcContext|context menu of the procedure]] or the context menu of the "'''Throws'''" node (of the procedure, the procedure signature or the device service signature, see below). To copy or cut an exception, use the context menu of that exception. Keyboard shortcuts{{Toolti]]pIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.
  
A comment contains a human-readable description and a list of items on which the comment shows. Comments are used for additional descriptions out of specification.
+
Right-click on the "'''Throws'''" node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Add Item...''' || Adds a new exception to the "'''Throws'''" node.
 +
|-{{TableRow1}}
 +
|'''Paste''' || Pastes an exception to the "'''Throws'''" node.
 +
|}
  
Add a comment:
+
Right-click on a '''exception''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Cut''' || Cuts the exception.
 +
|-{{TableRow2}}
 +
|'''Copy''' || Copies the exception.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the exception.
 +
|}
  
Click with the right mouse button ( context menu ) on the nodes Comments
+
==={{Anchor|LD|}}[[File:LocalDeclarations32.png|32px]] Local Declarations===
Menu " Add Item ... ", it opens a dialog box
 
Enter your comment
 
Confirm your entry with  "OK" button .
 
Link a Comment:
 
  
Click with the left mouse button on the comment and keep the mouse button pressed
+
Local declaration block is used to declare all the local constants and local variables which are only valid in their respective procedure. These constants and variables can not be accessed or used outside of the procedure. These local declarations are displayed as local declaration node below the local "'''Declarations'''" node of the procedure (this node is different from the [[#GD|global "'''Declarations"]] node of the document). To add or to paste a local declaration, use the [[#PrcContext|context menu of the procedure]] or the context menu of the local "'''Declarations'''" node (see below). To copy, cut or modify a local declaration, use the context menu of that local declaration (see below). Note the special case in which you can paste a local constant or a local variable to the [[#GD|global "'''Declarations"]] node (the copy of a local constant will be a global constant, and the copy of a local variable will be a document variable). Keyboard shortcuts{{TooltipIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.
Pull the comment to the respective activity
 
Repeat the process for other activities
 
Alternative:
 
  
Click with the right mouse button ( context menu ) on a activity to which the link should be established.
+
Right-click on the local "'''Declarations'''" node of the procedure, there will be a context menu with the following entries:
"Menu Add comment ... "select, it opens the dialog box described above
+
{|{{TableHeader}}
Edit the properties:
+
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Add > New Local Variable...''' || Adds a new local variable to the procedure.
 +
|-{{TableRow1}}
 +
|'''Add > New Local Constant...''' || Adds a new local constant to the procedure.
 +
|-{{TableRow2}}
 +
|'''Paste''' || Pastes a local declaration to the procedure.
 +
|-{{TableRow1}}
 +
|'''Delete not used declarations...''' || Deletes all the unused local declarations.
 +
|}
  
Click with the right mouse button ( context menu ) to the element
+
Right-click on a '''local declaration''' node, there will be a context menu with the following entries:
Menu " Properties ... Select ", it opens a dialog box
+
{|{{TableHeader}}
Edit the properties, see above, and confirm your entry by pressing the "Ok" button .
+
{{TableRowContextMenuHeader}}
Alternative:
+
|-{{TableRow1}}
 +
|'''Add to Watch window''' || Adds the local declaration to the [[OtfWatchWindow|Watch]] tool window.
 +
|-{{TableRow2}}
 +
|'''Cut''' || Cuts the local declaration.
 +
|-{{TableRow1}}
 +
|'''Copy''' || Copies the local declaration.
 +
|-{{TableRow2}}
 +
|'''Copy complete name''' || Copies the complete OTX name of the local declaration.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the local declaration.
 +
|-{{TableRow2}}
 +
|'''Rename''' || Renames the local declaration.
 +
|-{{TableRow1}}
 +
|'''Properties'''{{TooltipIcon|(Alternative option: double-click on the local declaration node)}} || Opens the properties dialog box of the local declaration.
 +
|}
  
Click with the right mouse button ( context menu ) on the  comment in the Workflow Designer
+
==={{Anchor|Flw|}}[[File:Flow32.png|32px]] Flow===
You will see a menu for editing the comment
 
Dialog for adding / editing free comments
 
Dialog for adding / editing free comments
 
  
=={{Anchor|Prm|}}Parameters==
+
Under the flow node, the actual sequence of activities is presented. Each activity consists of a name and one or more realisations. An activity is displayed as activity node below the flow node, inside an activity node there may be a realisation node or another activity node (the case of compound nodes). The flow node has no context menu but the activity node or the realisation node has a context menu with some limited functions. To edit the activity, please use the [[OtfWorkflowDesigner|Workflow Designer]].
  
Within the parameter -declaration block will be In, Out and In / Out parameters for procedures and signatures stored.
+
Right-click on an '''activity''' node or a '''realisation''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Open/View'''{{TooltipIcon2|(Note: This entry is not displayed with realisation nodes)}} || Opens (or sets on top) the procedure tab of the activity.
 +
|-{{TableRow2}}
 +
|'''Delete''' || Deletes the activity (or the deletable flow of a compound node).
 +
|-{{TableRow1}}
 +
|'''Add new realization'''{{TooltipIcon2|(Note: This entry is only for the &quot;Handler&quot; and the &quot;Catch&quot; flow of the handler activity)}} || Adds new realisation to the "'''Catch'''" flow of the handler activity.
 +
|-{{TableRow2}}
 +
|'''Delete Realization{{TooltipIcon2|(Note: This entry is only for the &quot;Handler&quot; and the &quot;Catch&quot; flow of the handler activity}}''' || Deletes the realisation of the "'''Catch'''" flow of the handler activity.
 +
|-{{TableRow1}}
 +
|'''Add Catch-branch'''{{TooltipIcon2|(Note: This entry is only for the Handler node)}} || Adds a new "'''Catch'''" flow to the handler activity.
 +
|-{{TableRow2}}
 +
|'''Add Finally-branch'''{{TooltipIcon2|(Note: This entry is only for the Handler node)}} || Adds a new "'''Finally'''" flow to the handler activity.
 +
|-{{TableRow1}}
 +
|'''Properties''' || Opens the properties dialog box of the element which has the adjustable properties.
 +
|}
  
Add a signature:
+
=={{Anchor|Prj|}}[[File:ProjectPlayer32.png]] Player Projects==
  
Click with the right mouse button ( context menu ) on the node Signatures
+
Similar to the OTX projects, a Player project is a standard folder in the file system. It contains a Project file (*.playPrj), a PlayList file (*.playLst) and a PlayerLayout file (*.playLay)
"Menu Add ... "and then the type of declaration select:
 
In parameters,
 
Out parameters,
 
In / Out parameter or
 
Term parameters (Only Screen Signa-tu-re ).
 
This opens a dialog box.
 
Enter a meaningful name  in the Name field
 
Select the data type of the Decla-ra-tion
 
Optionally, enter a Ini ti-al value of
 
Optionally, you can under description a specification specify
 
Confirm your entry with  "OK" button .
 
Edit the self-sheep-th :
 
  
Click with the right mouse button ( context menu ) to the element
+
[[File:Exclamation.png]] Important: The names of '''all the elements below a player project node''' shall conform the [[General.NamingConventions|OTX Naming conventions]]!
Menu " Properties ... Select ", it opens a dialog box
 
Edit the properties, see above, and confirm your entry by pressing the "Ok" button .
 
Dialog for adding / editing parameters
 
Dialog for adding / editing parameters
 
  
=={{Anchor|Thr|}}Throws (exceptions)==
+
You can add a new player project or import from a PPX library by using the [[#SlnContext|context menu of the solution]]. Besides adding a player project by the [[#SlnContext|context menu of the solution]], you can use the [[OtfStartPage#NS|related functions]] in the [[OtfStartPage|Start Page]] or the "New Player Project" command in the menu File of the [[OtfMenuBar|Ribbon]].
  
Here the caller can be displayed, which potential exceptions a procedure  can trigger.
+
{{Anchor|PrjContext|}}
 +
Right-click on the '''player project''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Overview''' || Opens the Overview window to display the whole designer content of the solution and focuses on the selected player project.
 +
|-{{TableRow1}}
 +
|'''Validate''' || Checks all the referred PTX/project within the player project for any warnings or errors.
 +
|-{{TableRow2}}
 +
|'''Display Instructions''' || Displays a page with the notes.
 +
|-{{TableRow1}}
 +
|'''Export...> Export As PPX...''' || Exports the player project to a PPX library.
 +
|-{{TableRow2}}
 +
|'''Export...> Export As Template...''' || Exports the player project to a PTXT library.
 +
|-{{TableRow1}}
 +
|'''Add&nbsp;>&nbsp;Add&nbsp;PTX&nbsp;library&nbsp;reference...''' || Adds a reference to a PTX library.
 +
|-{{TableRow2}}
 +
|'''Add > Import Player Layout...''' || Imports a file layout (*.playLay) from another player project.
 +
|-{{TableRow1}}
 +
|'''Add > [ProjectName]{{TooltipIcon2|This menu entry only appears if there is another project which has not been referred by this player project.}}''' || Adds a reference to the project [ProjectName].
 +
|-{{TableRow2}}
 +
|'''Delete''' || Deletes the reference from the solution to the player project.
 +
|-{{TableRow1}}
 +
|'''Rename''' || Renames the player project.
 +
|-{{TableRow2}}
 +
|'''Add Selected Project to Subversion''' || Adds the selected player project to Subversion.
 +
|-{{TableRow1}}
 +
| '''Version Control (Subversion) > Add...{{TooltipIcon2|This menu only works when the solution is under SVN control.}}''' || Adds the current player project to source control of SVN which needs to be committed to SVN later..
 +
|-{{TableRow2}}
 +
| '''Version Control (Subversion) > Add to ignore list...{{TooltipIcon2|This menu only works when the solution is under SVN control.}}''' || Adds the current player project to the ignore list so that it will not be added back into Subversion again by mistake.
 +
|-{{TableRow1}}
 +
|'''Version Control (Subversion) > Help...''' || Opens the user manual of the TortoiseSVN.
 +
|-{{TableRow2}}
 +
|'''Version Control (Subversion) > Setting...''' || Opens the "Settings - TortoiseSVN" dialog box.
 +
|-{{TableRow1}}
 +
|'''Version Control (Subversion) > About...''' || Opens the version information dialog box.
 +
|-{{TableRow2}}
 +
|'''Open&nbsp;Folder&nbsp;in&nbsp;Windows&nbsp;Explorer''' || Opens the player project folder in a new window with Windows Explorer.
 +
|-{{TableRow1}}
 +
|'''Properties''' || Opens the [[OtfProjectSettings|Project Settings]] dialog box.
 +
|}
 +
 
 +
==={{Anchor|Ref|}}[[File:PtxReference32.png|32px]] References===
 +
 
 +
Similar to the [[#References|References]] of the OTX projects
 +
 
 +
==={{Anchor|Monitors|}}[[File:Monitors.png|32px]] Monitors===
 +
 
 +
The monitor consits of an adjustable table layout with different panels which contain the controls or commands. The "'''Monitors'''" are displayed as monitors node below the player project node. Each "'''Monitors'''" can contain one or more the monitor and it can also be empty. To add or to paste a monitor, you can use the context menu of the "'''Monitors'''" node (see below) or you can add the existing monitors of other player project by using the context menu of the player project (Add > Import Player Layout...). To copy or cut a monitor, use the context menu of that monitor. Keyboard shortcuts{{TooltipIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.
 +
 
 +
Right-click on the "'''Monitors'''" node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Add > New Monitor...''' || Adds a new monitor to the "Monitors" node.
 +
|-{{TableRow2}}
 +
|'''Paste''' || Pastes a monitor to the "Monitors" node.
 +
|-{{TableRow1}}
 +
|'''Open&nbsp;Folder&nbsp;in&nbsp;Windows&nbsp;Explorer''' || Opens the player project folder in a new window with Windows Explorer.
 +
|}
 +
 
 +
Right-click on a '''monitor''' node, there will be a context menu with the following entries:
 +
 
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Open/View''' || Opens the monitor in the [[OtfWorkflowDesigner|Workflow Designer]].
 +
|-{{TableRow1}}
 +
|'''Cut''' || Cuts the monitor.
 +
|-{{TableRow2}}
 +
|'''Copy''' || Copies the monitor.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the monitor.
 +
|}
 +
 
 +
Right-click on a "'''Comlumns/Rows'''" node, there will be a context menu with the following entries:
 +
 
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Properties''' || Opens the properties dialog box of the Column/Row.
 +
|}
 +
 
 +
Right-click on a '''panel''' node (e.g ControlPanels, CommandPanels and HmiScreenPanels), there will be a context menu with the following entries:
 +
 
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Add Item...''' || Opens dialog to add new panel to the ControlPanels or CommandPanels or HmiScreenPanels.
 +
|-{{TableRow1}}
 +
|'''Paste''' || Pastes a panel to the ControlPanels or CommandPanels or HmiScreenPanels.
 +
|}
  
Adding an exception:
+
Right-click on a "'''PanelControl'''" node (or "'''PanelCommand'''" or "'''PanelHmi'''"), there will be a context menu with the following entries:
  
Click with the right mouse button ( context menu ) on the node Throws
+
{|{{TableHeader}}
"Menu Add Item ... ", it opens a dialog box.
+
{{TableRowContextMenuHeader}}
Select the data type of the off-nah-me
+
|-{{TableRow1}}
Confirm your entry with  "OK" button .
+
|'''Add Item...{{TooltipIcon2|(Note: This entry is only for the panelHmi}}''' || Opens dialog to add new element to the panelHmi.
Edit the self-sheep-th :
+
|-{{TableRow2}}
 +
|'''Cut''' || Cuts the panelControl or panelCommand or panelHmi.
 +
|-{{TableRow1}}
 +
|'''Copy''' || Copies the panelControl or panelCommand or panelHmi.
 +
|-{{TableRow2}}
 +
|'''Paste{{TooltipIcon2|(Note: This entry is only for the panelControl}}''' || Pastes a control to the panelControl.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the panelControl or panelCommand or panelHmi.
 +
|}
  
Click with the right mouse button ( context menu ) to the element
+
Right-click on a '''control''' node (or '''Command''' or '''Hmi element'''), there will be a context menu with the following entries:
Menu " Properties ... Select ", it opens a dialog box
 
Edit the properties, see above, and confirm your entry by pressing the "Ok" button .
 
Dialog for adding / editing exceptions
 
Dialog for adding / editing exceptions
 
  
=={{Anchor|LD|}}Local Declarations==
+
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow1}}
 +
|'''Cut{{TooltipIcon2|(Note: This entry is only for the Control}}''' || Cuts the control.
 +
|-{{TableRow2}}
 +
|'''Copy{{TooltipIcon2|(Note: This entry is only for the Control}}''' || Copies the control.
 +
|-{{TableRow1}}
 +
|'''Delete''' || Deletes the control or command or Hmi element.
 +
|}
  
Local declarations for constants and variables are only valid in the respective procedur. You can not be used outside.
+
==={{Anchor|Playlists|}}[[File:PlayLists.png|32px]] Playlists===
  
Adding a local Dekalartion:
+
Right-click on the "'''Playlist'''" node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Add > New Playlist''' || Adds a new playlist to the "Playlist" node.
 +
|-{{TableRow1}}
 +
|'''Paste''' || Pastes a playlist to the "Playlist" node.
 +
|}
  
Click with the right mouse button ( context menu ) on the Declarations
+
Right-click on the '''playlist element''' node, there will be a context menu with the following entries:
"Menu Add ... "and then the type of declaration select:
+
{|{{TableHeader}}
Local variables or
+
{{TableRowContextMenuHeader}}
Local constant
+
|-{{TableRow2}}
This opens a dialog box.
+
|'''Open/View''' || Opens the playlist in the [[OtfWorkflowDesigner|Workflow Designer]].
Enter a meaningful name  in the Name field
+
|-{{TableRow1}}
Select the data type of the Decla-ra-tion
+
|'''Cut''' || Cuts the playlist element.
Optionally, enter a Ini ti-al value of
+
|-{{TableRow2}}
Optionally, you can under description a specification specify
+
|'''Paste''' || Pastes the playlist element.
Confirm your entry with  "OK" button .
+
|-{{TableRow1}}
Edit the self-sheep-th :
+
|'''Delete''' || Deletes the playlist element.
 +
|}
 +
 
 +
==={{Anchor|GlbBehaviors|}}[[File:GlobalBehaviors.png|32px]] Global Behaviours===
 +
 
 +
Right-click on the "'''Global Behaviours'''" node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Add Item...''' || Open the "Behaviour - settings" dialog to add a new global behaviour element.
 +
|-{{TableRow1}}
 +
|'''Paste''' || Pastes a global behaviour element to the "global behaviours" node.
 +
|}
 +
 
 +
Right-click on the '''global behaviour element''' node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Cut''' || Cuts the global behaviour element.
 +
|-{{TableRow1}}
 +
|'''Copy''' || Copies the global behaviour element.
 +
|-{{TableRow2}}
 +
|'''Delete''' || Deletes the global behaviour element.
 +
|-{{TableRow1}}
 +
|'''Properties''' || Open the "Behaviour - settings" dialog.
 +
|}
  
Click with the right mouse button ( context menu ) to the element
+
==={{Anchor|InitValues|}}[[File:InitialValues.png|42px]] Initial Values===
Menu " Properties ... Select ", it opens a dialog box
 
Edit the properties, see above, and confirm your entry by pressing the  "Ok" button .
 
Dialog for adding / editing of local declarations
 
Dialog for adding / editing of local declarations
 
  
=={{Anchor|Flw|}}Flow==
+
Right-click on the "'''Initial Values'''" node, there will be a context menu with the following entries:
 +
{|{{TableHeader}}
 +
{{TableRowContextMenuHeader}}
 +
|-{{TableRow2}}
 +
|'''Open/View''' || Open the "Behaviour - settings" dialog to add a new global behaviour element.
 +
|-{{TableRow1}}
 +
|'''Open&nbsp;Folder&nbsp;in&nbsp;Windows&nbsp;Explorer''' || Opens the player project folder in a new window with Windows Explorer.
 +
|}
  
Under the flow node, the actual sequence of operations is presented. Each activity consists of a name and one or more implementations. Realizations are indented opposite the name of the activity to the right. To edit the activity, please use the workflow designer .
+
=={{Anchor|Unallocated|}}[[File:UnallocatedFiles16.png|38px]] Unallocated Files==
 +
The OTF allows you to load an OTX document directly in the Solution Explorer. To load an OTX document, you should set the OTX document format (*.otx) to be opened with the OTF (right-click on a document and select menu "Open With", and set the OTF to open this file format). After that, double-click on any document to load it in the explorer. If a solution is already loaded in the explorer and the document belongs to the current solution, the document will be focused and opened; otherwise, the document will be loaded as an unallocated document in the explorer. An unallocated document will be displayed as an allocated document node below the "'''Unallocated Files'''" node. All unallocated documents is read-only but you can copy the unallocated document or all the elements inside the unallocated document by using the context menu of the corresponding element node, you can also open the properties dialog box of those element by using the context menu. To edit an unallocated document, you can add that document to a package in the solution. To add one or all of the allocated document to a package, please use the [[#Pck|context menu of the corresponding package node]]. When you reload the solution or load another solution, the "Unallocated Files" will be cleared.

Latest revision as of 06:56, 8 October 2018


Overview

The Solution Explorer presents the whole OTX solution in a clear tree structure. All the elements are displayed as nodes in the tree-view starting from the "root node" to the ActionRealisations hierarchically. With the display of tree structure and with various commands to modify and handle elements, the Solution Explorer does help users to manage all parts and elements of a solution easily at design-time. It also supports with commands to execute a sequence (a procedure) directly, or to check for errors before execution, or even to build DLLs or executable files etc.

The Solution Explorer is a tool window, so it can be docked, floating, opened, closed, resized or set to auto hide. When starting the OTF the first time, the Solution Explorer is already opened and docked on the right of the Workflow Designer. You can open or close it via the "Solution Explore" button ("SolutionExplorer.png") in the Ribbon. Besides, it has a menu bar with some commands to help users customize the presentation of the solution tree-view. Below are the short descriptions and guidelines for this menu bar:

Menu entry Description
Tooltip switch Turns the tooltips in Solution Explorer ON/OFF.
Display main elements Displays the main elements only (Projects, Pachages, Documents and Procedures).
Display Flow element Turns the display of the flow element of a procedure ON/OFF.
Display only global library elements Hides all the elements in all referenced Ptx libraries that do not have the Visibility:Public (default:ON).
Expand AllExclamation.png Displays all-level elements in the solution.
Collapse All Hides all elements in all projects, only displays the solution node and project nodes.
Up Moves the element up one level within a scope (e.g. moves a variable up one level in the local Declarations scope).
Down Moves the element down one level within a scope.
Sort Items A-Z Arranges elements within a scope in ascending order.
Sort Items Z-A Arranges elements within a scope in descending order.


All the elements of an OTX solution are listed in the following sections with the description of the important aspects, features and commands.

px
The Solution Explorer shows the structure of an OTX solution

SolutionNode.png Solution (root node)

An OTX solution is a standard folder in the file system and it is displayed as the "root node" in the Solution Explorer. The OTX solution folder contains a solution file (*.otfSln) with solution management information (see Solution Settings), and another file (*.otfSuo) to record debug breakpoints, watched variable and information of auto reloading procedures. An OTX solution can have one or many OTX projects but it is not mandatory to have projects in the solution. These OTX projects are displayed as project nodes below the root node and only the project nodes are allowed here. The OTX projects may be located inside or outside the solution folder, the solution references to these projects with relative paths or absolute paths.

To load or to create a solution, you can use the related functions in the Start Page or the "New Solution" command in the menu File of the Ribbon. The name of a solution can be arbitrary but it must comply with the restrictions of the operating system.

Right-click on the solution node, there will be a context menu with the following entries:

Menu entry Description
Overview Opens the Overview window to display the whole designer content of the current solution.
Validate Checks all the documents within the solution for any warnings or errors.
Build Solution Builds the DLL/JAR files of all the projects in the solution.
Rebuild Solution Cleans the solution and builds the DLL/JAR files of all the projects in the solution.
Clean Solution Deletes all the files in the output folder of the Dotnet and Java runtime of all the projects in the solution.
Change all paths to URI Searches all the paths used in all the documents of the solution and converts them to URI
(limits on some activities that use paths).
Export...> Export As PTX... Exports all the projects in the current solution to the PTX library.
Export...> Export As ZIP archive... Exports the current solution to the ZIP archive.
Add > New Project... Adds a new project to the current solution.
Add > New Player Project... Adds a new player project to the current solution.
Add > Existing Project... Adds an existing project to the current solution.
Add > Import project from PTX library... Adds a new project from a PTX library to the current solution.
Add > Import project from PPX library... Adds a new player project from a PPX library to the current solution.
Add > New Project / Player from an existing template Adds a new project/player project to the current solution from an existing template.
Rename Renames the current solution.
Add Solution to Subversion Add the current solution to Subversion.
Version Control (Subversion) > Help... Opens the user manual of the TortoiseSVN.
Version Control (Subversion) > Setting... Opens the "Settings - TortoiseSVN" dialog box.
Version Control (Subversion) > About... Opens the version information dialog box.
Open Folder in Windows Explorer Opens the solution folder in a new window with Windows Explorer.
Properties Opens the Solution Settings dialog box.

Project32.png Projects

Similar to the OTX solution, an OTX project is a standard folder in the file system. It contains a project file (*.otfPrj) with project management information, and the necessary configuration files, also the resources for the OTX extensions etc. (see Project Settings for more information). An OTX project can have one or many OTX packages but it is not mandatory to have packages in the project. The OTX packages are displayed as package nodes below the project node and only the packages nodes are allowed here.

Exclamation.png Important: The names of all the elements below a project node shall conform the OTX Naming conventions!

You can add a new project or add an existing project by using the context menu of the solution. Besides adding a project by the context menu of the solution, you can use the related functions in the Start Page or the "New Project" command in the menu File of the Ribbon. Note that every new project added, a new package and a new document with the "main" procedure will be automatically created in the new project. The name of the new package will be derived from the name of the new project. The name of an OTX project should only contain letters, numbers, underscores and dashes, and the total length of the path to the project should be less than 128 characters (e.g. D:\Solution1\Project1\Project1.otfPrj < 128 characters).

Right-click on the project node, there will be a context menu with the following entries:

Menu entry Description
Overview Opens the Overview window to display the whole designer content of the solution and focuses on the selected project.
Validate Checks all the documents within the project for any warnings or errors.
Display Instructions Displays a page with the notes.
Build Project Builds the DLL/JAR file of the project.
Build Lua ProjectExclamation.png Builds project in Lua code.
Rebuild Project Cleans the project and builds the DLL/JAR files of the projects.
Clean Project Deletes all the files in the output folder of the Dotnet and Java runtime of the projects.
Export...> Export As PTX... Exports the project to a PTX library.
Export...> Export As Template... Exports the project to a PTXT library.
Add > New Package... Adds a new package to the project.
Add > Existing Package... Adds an existing package to the project.
Add > Add PTX library reference... Adds a reference to a PTX library.
Add > [ProjectName]Exclamation.png Adds a reference to the project [ProjectName].
Paste Pastes a package to the project.
Delete Deletes the reference from the solution to the project.
Rename Renames the project.
Set as Startup Project Sets the project as the startup project of the solution.
Add Selected Project to Subversion Adds the selected project to Subversion.
Version Control (Subversion) > Add...Exclamation.png Adds the current project to source control of SVN which needs to be committed to SVN later..
Version Control (Subversion) > Add to ignore list...Exclamation.png Adds the current project to the ignore list so that it will not be added back into Subversion again by mistake.
Version Control (Subversion) > Help... Opens the user manual of the TortoiseSVN.
Version Control (Subversion) > Setting... Opens the "Settings - TortoiseSVN" dialog box.
Version Control (Subversion) > About... Opens the version information dialog box.
Open Folder in Windows Explorer Opens the project folder in a new window with Windows Explorer.
Properties Opens the Project Settings dialog box.
Icons Note.png In the Solution Explorer, you can use keyboard shortcuts with almost all element nodes in the project node (Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste). This will be mentioned in some of the following sections where keyboard shortcuts are allowed.

PtxReference32.png References

When a project references to one or many Ptx libraries/projects with relative path or absolute path, these Ptx libraries/projects will be displayed as Ptx nodes below the "References" node of the project. You can add a reference from a project to a Ptx library/projects by using the context menu of the project. To manage the references to the Ptx libraries/projects such as adding, deleting, including Ptx library into project folder or converting references path, you can open "Library Manager" in the "Libraries (PDX References)" tab of the Project Settings, or using the "Library View" command ("LibraryViewAddLib16.png") on the "Test Step Libraries" tab in the Toolbox.

Right-click on the "References" node, there will be a context menu with the following entries:

Menu entry Description
Add > Add PTX library reference... Adds a reference from the project to a PTX library.
Add > [ProjectName]Exclamation.png Adds a reference to the project [ProjectName].
Manage references... Open the "References" in the "References" tab of the Project Settings.

Right-click on the PTX/Project node in the reference node, there will be a context menu with the following entries:

Menu entry Description
Delete Deletes the reference from the project to the PTX library/Project.
Open Folder in Windows ExplorerExclamation.png Opens the folder containing the PTX in a new window with Windows Explorer.

Package32.png Packages

For the structural storage of OTX documents in the file system, the OTX packages are used. A package is simply a folder in the file system whose name corresponds to the OTX Naming conventions. The packages are displayed as package nodes below the project node. Each package can contain other packages (at any depth) or documents, it can also be empty. You can add a new package or an existing package, or paste a package either to a project by using the context menu of the project, or to a package by using the context menu of that package (see below). You can also use the context menu of a package to copy, cut or modify it. Keyboard shortcutsTooltip.png are allowed.

Right-click on the package node, there will be a context menu with the following entries:

Menu entry Description
Overview Opens the Overview window to display the whole designer content of the solution and focuses on the selected package.
Validate Checks all the documents within the package for any warnings or errors.
Add > New Document... Adds a new document to the package.
Add > Existing Document... Adds an existing document to the package.
Add > New Document from an existing template Adds a new document to the current package from an existing template.
Add > Unallocated Document... Adds a document from the "Unallocated Files" section to the package.
Add > All unallocated Documents... Adds all documents from the "Unallocated Files" section to the package.
Add > New Package... Adds a new package inside the current package.
Add > Existing Package... Adds an existing package inside the current package.
Cut Cuts the package.
Copy Copies the package.
Copy complete name Copies the complete OTX name of the package.
Paste Pastes a package or a document to the package.
Delete Deletes the package.
Rename Renames the package.
Open Folder in Windows Explorer Opens the package folder in a new window with Windows Explorer.

Document32.png Documents

An OTX document is an XML file that describes all the data required for a sequence. An OTX document can reference to other OTX documents; see Imports section for detail. All the documents in a package will be displayed as document nodes below the package node. The content of documents are not automatically loaded when loading the solution (except that if a procedure in a document is automatically loaded). To load the content of a document, double-click on the document or use the "Open/View" menu entry in the context menu of the document (see below). You can add a new document or an existing document, or paste a copied or cut document to a package by using the context menu of the package. To copy, cut or modify a document, you can use the context menu of that document. Keyboard shortcutsTooltip.png are allowed.

Right-click on the document node, there will be a context menu with the following entries:

Menu entry Description
Overview Opens the Overview window to display the whole designer content of the solution and focuses on the selected document.
Open/View Loads and expands the content of the document.
View Code (OTL) Opens the OTL editor window of the document.
Validate Checks for any warnings or errors in the document.
Display Instructions Displays a page with the notes.
Meta-Data Opens the Meta Data View tool window.
Save Saves all the changes in the document.
Export...> Export as Single Document... Exports the document to a OTX file.
Add > Import/Reference... Adds a reference from the current document to itself or to another document.
Add > Global Declaration > New Global Constant... Adds a new global constant to the document.
Add > Global Declaration > New Global Variable... Adds a new global variable (document variable) to the document.
Add > Global Declaration > New Context Variable... Adds a new context variable to the document.
Add > Global Declaration > New State Variable... Adds a new state variable to the document.
Add > AdminData Adds administration data (versioning data) to the document (see AdminData).
Add > Validity... Adds a new validity to the document.
Add > Signatures > New Procedure Signature... Adds a new procedure signature to the document.
Add > Signatures > New Screen Signature... Adds a new screen signature to the document.
Add > Signatures > New Device Signature... Adds a new device signature to the document.
Add > Signatures > New Device Signature... Adds a new device signature to the document.
Add > Signatures > New Structure Signature... Adds a new structure signature to the document.
Add > Signatures > New Enumeration Signature... Adds a new enumeration signature to the document.
Add > Signatures > New SingleEcuJob Signature... Adds a new procedure signature with some supported parameters to the document.
Add > Signatures > New FlashJob Signature... Adds a new procedure signature with some supported parameters to the document.
Add > Signatures > New SecurityAccessJob Signature... Adds a new procedure signature with some supported parameters to the document.
Cut Cuts the document.
Copy Copies the document.
Copy complete name Copies the complete OTX name of the document.
Paste Pastes a global element (a validity, a global declataion, or a signature) to the document.
Delete Deletes the document.
Rename Renames the document.
Set as Startup Document Sets the document as the Startup Document of the project.
Open Folder in Windows Explorer Opens the package folder containing the document in a new window with Windows Explorer.
Properties Opens the properties dialog box of the document.

AdminData.png Admin Data

Some OTX documents have a very long lifetime. They may be used or modified by many people, or even they may be exchanged between the process partners. Therefore, the documents should store the information about the change history, the person who responsible for the changes etc. This kind of data is called "Admin-Data". This data can be stored within the document or in a seperate file (*.adminData). The storage method may be set by the "File\Option" menu in the Ribbon. The "Admin-Data" is displayed as the admin-data node below the document node. You can use the context menu of a document to add the "Admin-Data" to that document. To modify the "Admin-Data" of the document, use the context menu of the admin-data node.

Right-click on the admin-data node, there will be a context menu with the following entries:

Menu entry Description
Delete Deletes the "Admin-Data".
PropertiesTooltip.png Opens the admin-data editor dialog box.

Imports32.png Imports

With the import element of a document, references can be made ​​to other documents. The references are displayed as import elements (or import nodes) below the "Imports" node of the document. When a document refers to another document, it imports the global names defined in the referred document (imported document) and it can use these imported global names. However, not all the global names in the imported document are accessible because their Visibility attributes may not be sufficient to the document which imports the other one.

You can add a reference to a document by using the menu context of the current document or the context menu of the "Imports" node of the current document (see below). When you click on the corresponding menu entry, the "Add new reference (Import)" dialog box will appear. Here you can enter the prefix for the reference, note that the prefix must conform to the OTX Naming conventions. The format of an imported global name is "Prefix:ElementName". Through the import prefix, a global name of the imported document can be accessed and can be distinguished from the global names of the other imported documents (e.g. Variable1 = ImportPrefix1:GlobalConstant1 + ImportPrefix2:GlobalConstant1). Besides entering the prefix, you have to select the document you want to add reference to. You can select the document in the list of the available documents displayed in the dialog box, which are all the documents in the current project, in the referenced projects and in the referenced Ptx libraries. Below each project or each Ptx library in the list of available documents, the documents will be displayed by the containing package names and the document names (e.g. "Package1.Package12.Package121:NewDocument1"). Note that you can use a document to import itself. After you have entered a prefix and selected a document to import, click "OK" button to finish the process and then you can access all the global names with sufficient Visibility in the current document. To modify a reference, use the context menu of the import node of the reference (see below).

Right-click on the "Imports" node, there will be a context menu with the following entries:

Menu entry Description
Add Item Adds a reference from the current document to itself or to another document.

Right-click on an import node, there will be a context menu with the following entries:

Menu entry Description
Delete Deletes the reference.
PropertiesTooltip.png Opens a dialog box to modidfy the reference.

Validity32.png Validities

Validities allow for configuring test sequences for different runtime contexts. A Validity is any logical expression which usually consists of contextual variables or global constants. All the validities in a document are displayed as validity nodes below the "Validities" node. To add or to paste a validity to a document, you can use the context menu of the document or the context menu of the Validities node (see below). You can also copy, cut or modify a validity by using the context menu of that validity. Keyboard shortcutsTooltip.png are allowed.

Right-click on the "Validities" node, there will be a context menu with the following entries:

Menu entry Description
Add Item Adds a new validity to the document.
Paste Pastes a validity to the document.

Right-click on a validity node, there will be a context menu with the following entries:

Menu entry Description
Cut Cuts the validity.
Copy Copies the validity.
Copy complete name Copies the complete OTX name of the validity.
Delete Deletes the validity.
Rename Renames the validity.
PropertiesTooltip.png Opens the properties dialog box of the validity.

Signature32.png Signatures

A signature describes the interface for a procedure, a screen or an external diagnostic application. All the signatures in a document are displayed as signature nodes below the "Signatures" node. To add or to paste a signature, you can use the context menu of the document or the context menu of the "Signatures" node (see below). To copy, cut or modify a signature, use the context menu of that signature. Keyboard shortcutsTooltip.png are allowed.

Right-click on the "Signatures" node, there will be a context menu with the following entries:

Menu entry Description
Add Item > New Procedure Signature... Adds a new procedure signature to the document.
Add Item > New Screen Signature... Adds a new screen signature to the document.
Add Item > New Device Signature... Adds a new device signature to the document.
Add Item > New Structure Signature... Adds a new structure signature to the document.
Add Item > New Enumeration Signature... Adds a new enumeration signature to the document.
Add Item > New SingleEcuJob Signature... Adds a new procedure signature with some supported parameters to the document.
Add Item > New FlashJob Signature... Adds a new procedure signature with some supported parameters to the document.
Add Item > New SecurityAccessJob Signature... Adds a new procedure signature with some supported parameters to the document.
Paste Pastes a signature to the document.

Right-click on a signature node, there will be a context menu with the following entries:

Menu entry Description
Implement new ProcedureExclamation.png Creates a new procedure and uses the procedure to implement the current procedure signature.
Cut Cuts the signature.
Copy Copies the signature.
Copy complete name Copies the complete OTX name of the document.
Delete Deletes the signature.
Rename Renames the signature.
Add new realisationExclamation.png Adds a new realisation to the signature.
Delete realisationExclamation.png Deletes the realisation of the signature.
PropertiesTooltip.png Opens the properties dialog box of the signature.

AddVariable32.png Global Declarations

Global declarations contains all the global constants and variables (context variables, state variables and document variables) which are visible in the whole document. These global constants and variables can also be imported and used in external documents according to their Visibility attribute. All the global declarations in a document are displayed as global declaration nodes below the "Declarations" node of the document (note that a procedure also has a "Declarations" node). To add or to paste a global declaration, you can use the context menu of the document or the context menu of the "Declarations" node of the document (see below). Note the special case that you can paste a global constant or a document variable to the local "Declarations" node (the copy of a global constant will be a local constant, and the copy of a document variable will be a local variable, context variables and state variables are not allowed). To copy, cut or modify a global declaration, use the context menu of that global declaration. Keyboard shortcutsTooltip.png are allowed.

Right-click on the "Declarations" node of the document, there will be a context menu with the following entries:

Menu entry Description
Add > New Global Constant... Adds a new global constant to the document.
Add > New Context Variable... Adds a new context variable to the document.
Add > New Global Variable... Adds a new global variable (document variable) to the document.
Add > New State Variable... Adds a new state variable to the document.
Paste Pastes a global declaration to the document.
Delete not used declarations Deletes all the unused global declarations.

Right-click on a global declaration node, there will be a context menu with the following entries:

Menu entry Description
Add to Watch window Adds the global declaration to the Watch tool window.
Cut Cuts the global declaration.
Copy Copies the global declaration.
Copy complete name Copies the complete OTX name of the global declaration.
Delete Deletes the global declaration.
Rename Renames the global declaration.
PropertiesTooltip.png Opens the properties dialog box of the global declaration.

Procedure32.png Procedures

A procedure is an executable part of an OTX document. It describes the actual sequences. A procedure (usually the procedure with the name "main") can be used as the entry point of a test sequence to be executed, or it can be called by a ProcedureCall activity from another OTX procedure. All the procedures in a document are displayed as procedure nodes below the "Procedures" node of the document. To add a new procedure or paste a procedure, you can use the context menu of the "Procedures" node (see below). To copy, cut or modify a procedure, use the context menu of the procedure node. Keyboard shortcutsTooltip.png are allowed.

Right-click on the "Procedures" node, there will be a context menu with the following entries:

Menu entry Description
Add Item... > New Procedure... Adds a new procedure to the document.
Add Item... > New Procedure from an existing template Adds a new procedure to the document from an existing template.
Paste Pastes a procedure to the document.

Right-click on a procedure node, there will be a context menu with the following entries:

Menu entry Description
Overview Opens the Overview window to display the whole designer content of the solution and focuses on the selected procedure.
Open/View Opens the procedure in the Workflow Designer.
View Code (OTL) Opens the OTL editor window of the document and focuses on the selected procedure.
Validate Checks the procedure for any errors and warnings.
Display Instructions Displays a page with the notes.
Meta-Data Opens the Meta Data View tool window.
Execute Workflow Executes the procedure.
Stop ProcedureExclamation.png Stop the execution of the procedure.
Update ParametersExclamation.png Updates the parameters and the exception declarations (see Throws) according to the implemented procedure signature.
Create ProcedureSignature from Procedure Creates a new procedure signature in the current document and uses the current procedure to implement the procedure signature (the parameters and exceptions of the signature are based on the current procedure).
Cut Cuts the procedure.
Copy Copies the procedure.
Copy complete name Copies the complete OTX name of the procedure.
Paste Pastes a local element (a comment, a parameter, an exception or a declaration) to the procedure.
Delete Deletes the procedure.
Rename Renames the procedure.
Add > Comment... Adds a comment to the procedure.
Add > Parameter > New Procedure In-Parameter... Adds an in parameter to the procedure.
Add > Parameter > New Procedure out-Parameter... Adds an out parameter to the procedure.
Add > Parameter > New Procedure In/Out-Parameter... Adds an in/out parameter to the procedure.
Add > Throw... Adds an exception declaration to the procedure.
Add > Local declaration > New Local Constant... Adds a new local constant to the procedure.
Add > Local declaration > New Local Variable... Adds a new local variable to the procedure.
Add new realizationExclamation.png Adds new realisation to the procedure.
Delete RealizationExclamation.png Delete the realisation of the procedure.
Properties Opens the properties dialog box of the procedure.

Comments32.png Comments

A comment contains a human readable information and a list of links pointing to the activities that are related to the comment. Comments are used for additional descriptions besides specification of activities. All the comments in a procedure are displayed as comment nodes below the "Comments" node of the procedure. To add a new comment or paste a comment, you can use the context menu of the current procedure or the context menu of the "Comments" node (see below). You can also add a new comment directly to an activity in the Workflow Designer by using the context menu of that activity. You can also add a link between an existing comment and an activity by dragging the comment node from the Solution Explorer and dropping it on the activity in the Workflow Designer. To copy, cut or modify a comment, use the context menu of that comment (see below). Keyboard shortcutsTooltip.png are allowed.

Right-click on the "Comments" node, there will be a context menu with the following entries:

Menu entry Description
Add Item... Adds a new comment to the procedure.
Paste Pastes a comment to the procedure.

Right-click on a comment node, there will be a context menu with the following entries:

Menu entry Description
Cut Cuts the comment.
Copy Copies the comment.
Delete Deletes the comment.
PropertiesTooltip.png Opens the editor dialog box of the comment.

Parameters32.png Parameters

The parameter declaration block may contain In-, Out- or InOut- parameters of procedures or signatures (Note that the "Term-Parameter" declaration is only for screen signature). The parameters will be displayed as parameter nodes below the "Parameters" node (this is the parameter declaration block). To add or to paste a parameter, use the context menu of the "Parameters" node of the procedure or the signature (see below), you can also use the context menu of the procedure. To copy, cut or modify a parameter, use the context menu of that parameter (see below). Note that you can paste a copied or cut parameter from a procedure signature to a procedure and vice versa, but no other signature types are allowed. Besides, it is only allowed to paste a parameter from a signature to another signature with the same realisation (e.g. screen signature to screen signature). Keyboard shortcutsTooltip.png are allowed in legal cases.

Right-click on the "Parameters" node, there will be a context menu with the following entries:

Menu entry Description
Update ParametersExclamation.png Updates the parameters and the exception declarations (see Throws) of the procedure according to the implemented procedure signature.
Add > New Procedure In-Parameter... Adds an in parameter to the procedure.
Add > New Procedure out-Parameter... Adds an out parameter to the procedure.
Add > New Procedure In/Out-Parameter... Adds an in/out parameter to the procedure.
Paste Pastes a parameter to the procedure or signature.

Right-click on a parameter node, there will be a context menu with the following entries:

Menu entry Description
Add to Watch window Adds the parameter to the Watch tool window.
Cut Cuts the parameter.
Copy Copies the parameter.
Copy complete name Copies the complete OTX name of the parameter.
Delete Deletes the parameter.
Rename Renames the parameter.
PropertiesTooltip.png Opens the properties dialog box of the parameter.

Throws32.png Throws (exceptions)

The author of the OTX document can predict the exceptions that may potentially be thrown during execution. These exceptions shall be declared in the "Throws" (exceptions) nodes of the procedure signatures, the device service signatures and the procedures. The exception declarations can inform other persons who re-use the sequence the potential exceptions in order to handle them. Note that (1) the implemented procedure signature of the current procedure, or (2) the procedure calling to the current procedure (or to the implemented procedure signature) should also declare the same exceptions in their "Throws" nodes. Each declared exception is displayed as an exception node in the "Throws" node. To add or to paste an exception, use the context menu of the procedure or the context menu of the "Throws" node (of the procedure, the procedure signature or the device service signature, see below). To copy or cut an exception, use the context menu of that exception. Keyboard shortcuts{{Toolti]]pIcon|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)}} are allowed.

Right-click on the "Throws" node, there will be a context menu with the following entries:

Menu entry Description
Add Item... Adds a new exception to the "Throws" node.
Paste Pastes an exception to the "Throws" node.

Right-click on a exception node, there will be a context menu with the following entries:

Menu entry Description
Cut Cuts the exception.
Copy Copies the exception.
Delete Deletes the exception.

LocalDeclarations32.png Local Declarations

Local declaration block is used to declare all the local constants and local variables which are only valid in their respective procedure. These constants and variables can not be accessed or used outside of the procedure. These local declarations are displayed as local declaration node below the local "Declarations" node of the procedure (this node is different from the global "Declarations" node of the document). To add or to paste a local declaration, use the context menu of the procedure or the context menu of the local "Declarations" node (see below). To copy, cut or modify a local declaration, use the context menu of that local declaration (see below). Note the special case in which you can paste a local constant or a local variable to the global "Declarations" node (the copy of a local constant will be a global constant, and the copy of a local variable will be a document variable). Keyboard shortcutsTooltip.png are allowed.

Right-click on the local "Declarations" node of the procedure, there will be a context menu with the following entries:

Menu entry Description
Add > New Local Variable... Adds a new local variable to the procedure.
Add > New Local Constant... Adds a new local constant to the procedure.
Paste Pastes a local declaration to the procedure.
Delete not used declarations... Deletes all the unused local declarations.

Right-click on a local declaration node, there will be a context menu with the following entries:

Menu entry Description
Add to Watch window Adds the local declaration to the Watch tool window.
Cut Cuts the local declaration.
Copy Copies the local declaration.
Copy complete name Copies the complete OTX name of the local declaration.
Delete Deletes the local declaration.
Rename Renames the local declaration.
PropertiesTooltip.png Opens the properties dialog box of the local declaration.

Flow32.png Flow

Under the flow node, the actual sequence of activities is presented. Each activity consists of a name and one or more realisations. An activity is displayed as activity node below the flow node, inside an activity node there may be a realisation node or another activity node (the case of compound nodes). The flow node has no context menu but the activity node or the realisation node has a context menu with some limited functions. To edit the activity, please use the Workflow Designer.

Right-click on an activity node or a realisation node, there will be a context menu with the following entries:

Menu entry Description
Open/ViewExclamation.png Opens (or sets on top) the procedure tab of the activity.
Delete Deletes the activity (or the deletable flow of a compound node).
Add new realizationExclamation.png Adds new realisation to the "Catch" flow of the handler activity.
Delete RealizationExclamation.png Deletes the realisation of the "Catch" flow of the handler activity.
Add Catch-branchExclamation.png Adds a new "Catch" flow to the handler activity.
Add Finally-branchExclamation.png Adds a new "Finally" flow to the handler activity.
Properties Opens the properties dialog box of the element which has the adjustable properties.

ProjectPlayer32.png Player Projects

Similar to the OTX projects, a Player project is a standard folder in the file system. It contains a Project file (*.playPrj), a PlayList file (*.playLst) and a PlayerLayout file (*.playLay)

Exclamation.png Important: The names of all the elements below a player project node shall conform the OTX Naming conventions!

You can add a new player project or import from a PPX library by using the context menu of the solution. Besides adding a player project by the context menu of the solution, you can use the related functions in the Start Page or the "New Player Project" command in the menu File of the Ribbon.

Right-click on the player project node, there will be a context menu with the following entries:

Menu entry Description
Overview Opens the Overview window to display the whole designer content of the solution and focuses on the selected player project.
Validate Checks all the referred PTX/project within the player project for any warnings or errors.
Display Instructions Displays a page with the notes.
Export...> Export As PPX... Exports the player project to a PPX library.
Export...> Export As Template... Exports the player project to a PTXT library.
Add > Add PTX library reference... Adds a reference to a PTX library.
Add > Import Player Layout... Imports a file layout (*.playLay) from another player project.
Add > [ProjectName]Exclamation.png Adds a reference to the project [ProjectName].
Delete Deletes the reference from the solution to the player project.
Rename Renames the player project.
Add Selected Project to Subversion Adds the selected player project to Subversion.
Version Control (Subversion) > Add...Exclamation.png Adds the current player project to source control of SVN which needs to be committed to SVN later..
Version Control (Subversion) > Add to ignore list...Exclamation.png Adds the current player project to the ignore list so that it will not be added back into Subversion again by mistake.
Version Control (Subversion) > Help... Opens the user manual of the TortoiseSVN.
Version Control (Subversion) > Setting... Opens the "Settings - TortoiseSVN" dialog box.
Version Control (Subversion) > About... Opens the version information dialog box.
Open Folder in Windows Explorer Opens the player project folder in a new window with Windows Explorer.
Properties Opens the Project Settings dialog box.

PtxReference32.png References

Similar to the References of the OTX projects

Monitors.png Monitors

The monitor consits of an adjustable table layout with different panels which contain the controls or commands. The "Monitors" are displayed as monitors node below the player project node. Each "Monitors" can contain one or more the monitor and it can also be empty. To add or to paste a monitor, you can use the context menu of the "Monitors" node (see below) or you can add the existing monitors of other player project by using the context menu of the player project (Add > Import Player Layout...). To copy or cut a monitor, use the context menu of that monitor. Keyboard shortcutsTooltip.png are allowed.

Right-click on the "Monitors" node, there will be a context menu with the following entries:

Menu entry Description
Add > New Monitor... Adds a new monitor to the "Monitors" node.
Paste Pastes a monitor to the "Monitors" node.
Open Folder in Windows Explorer Opens the player project folder in a new window with Windows Explorer.

Right-click on a monitor node, there will be a context menu with the following entries:

Menu entry Description
Open/View Opens the monitor in the Workflow Designer.
Cut Cuts the monitor.
Copy Copies the monitor.
Delete Deletes the monitor.

Right-click on a "Comlumns/Rows" node, there will be a context menu with the following entries:

Menu entry Description
Properties Opens the properties dialog box of the Column/Row.

Right-click on a panel node (e.g ControlPanels, CommandPanels and HmiScreenPanels), there will be a context menu with the following entries:

Menu entry Description
Add Item... Opens dialog to add new panel to the ControlPanels or CommandPanels or HmiScreenPanels.
Paste Pastes a panel to the ControlPanels or CommandPanels or HmiScreenPanels.

Right-click on a "PanelControl" node (or "PanelCommand" or "PanelHmi"), there will be a context menu with the following entries:

Menu entry Description
Add Item...Exclamation.png Opens dialog to add new element to the panelHmi.
Cut Cuts the panelControl or panelCommand or panelHmi.
Copy Copies the panelControl or panelCommand or panelHmi.
PasteExclamation.png Pastes a control to the panelControl.
Delete Deletes the panelControl or panelCommand or panelHmi.

Right-click on a control node (or Command or Hmi element), there will be a context menu with the following entries:

Menu entry Description
CutExclamation.png Cuts the control.
CopyExclamation.png Copies the control.
Delete Deletes the control or command or Hmi element.

PlayLists.png Playlists

Right-click on the "Playlist" node, there will be a context menu with the following entries:

Menu entry Description
Add > New Playlist Adds a new playlist to the "Playlist" node.
Paste Pastes a playlist to the "Playlist" node.

Right-click on the playlist element node, there will be a context menu with the following entries:

Menu entry Description
Open/View Opens the playlist in the Workflow Designer.
Cut Cuts the playlist element.
Paste Pastes the playlist element.
Delete Deletes the playlist element.

GlobalBehaviors.png Global Behaviours

Right-click on the "Global Behaviours" node, there will be a context menu with the following entries:

Menu entry Description
Add Item... Open the "Behaviour - settings" dialog to add a new global behaviour element.
Paste Pastes a global behaviour element to the "global behaviours" node.

Right-click on the global behaviour element node, there will be a context menu with the following entries:

Menu entry Description
Cut Cuts the global behaviour element.
Copy Copies the global behaviour element.
Delete Deletes the global behaviour element.
Properties Open the "Behaviour - settings" dialog.

InitialValues.png Initial Values

Right-click on the "Initial Values" node, there will be a context menu with the following entries:

Menu entry Description
Open/View Open the "Behaviour - settings" dialog to add a new global behaviour element.
Open Folder in Windows Explorer Opens the player project folder in a new window with Windows Explorer.

UnallocatedFiles16.png Unallocated Files

The OTF allows you to load an OTX document directly in the Solution Explorer. To load an OTX document, you should set the OTX document format (*.otx) to be opened with the OTF (right-click on a document and select menu "Open With", and set the OTF to open this file format). After that, double-click on any document to load it in the explorer. If a solution is already loaded in the explorer and the document belongs to the current solution, the document will be focused and opened; otherwise, the document will be loaded as an unallocated document in the explorer. An unallocated document will be displayed as an allocated document node below the "Unallocated Files" node. All unallocated documents is read-only but you can copy the unallocated document or all the elements inside the unallocated document by using the context menu of the corresponding element node, you can also open the properties dialog box of those element by using the context menu. To edit an unallocated document, you can add that document to a package in the solution. To add one or all of the allocated document to a package, please use the context menu of the corresponding package node. When you reload the solution or load another solution, the "Unallocated Files" will be cleared.