Difference between revisions of "OtfSolutionExplorer"
Line 105: | Line 105: | ||
|} | |} | ||
− | + | {{Note|In the Solution Explorer, you can use keyboard shortcuts with almost the 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 shortcuts are allowed.}} | |
=={{Anchor|Ref|}}[[File:References32.png]] References== | =={{Anchor|Ref|}}[[File:References32.png]] References== | ||
Line 131: | Line 131: | ||
=={{Anchor|Pck|}}[[File:Packages32.png]] Packages== | =={{Anchor|Pck|}}[[File:Packages32.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 [[OTXNamingConventions|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. | + | 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 [[OTXNamingConventions|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. {{Tooltip|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)|{{FontColor|darkblue||Shortcuts}}}} are allowed. |
{{Anchor|PckContext|}} | {{Anchor|PckContext|}} | ||
Line 167: | Line 167: | ||
=={{Anchor|Doc|}}[[File:Document32.png]] Documents== | =={{Anchor|Doc|}}[[File:Document32.png]] Documents== | ||
− | An OTX document is an XML file that describes all the data required for a sequence. An OTX document can refer to other OTX documents; see [[#Imp|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 with 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 menu "Open/View" 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. | + | An OTX document is an XML file that describes all the data required for a sequence. An OTX document can refer to other OTX documents; see [[#Imp|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 with 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 menu "Open/View" 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. {{Tooltip|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)|{{FontColor|darkblue||Shortcuts}}}} are allowed. |
{{Anchor|DocContext|}} | {{Anchor|DocContext|}} | ||
Line 232: | Line 232: | ||
|'''Delete''' || Deletes the "Admin-Data". | |'''Delete''' || Deletes the "Admin-Data". | ||
|-{{TableRow1}} | |-{{TableRow1}} | ||
− | |'''Properties''' || Opens the {{Question|admin-data editor dialog}} | + | |{{Tooltip|(Alternative option: double-click on the admin-data node)|{{FontColor|darkblue||'''Properties*'''}}}} || Opens the {{Question|admin-data editor dialog}}. |
|} | |} | ||
Line 254: | Line 254: | ||
|'''Delete''' || Deletes the reference. | |'''Delete''' || Deletes the reference. | ||
|-{{TableRow1}} | |-{{TableRow1}} | ||
− | |'''Properties''' || Opens a dialog to modidfy the reference | + | |{{Tooltip|(Alternative option: double-click on the import node)|{{FontColor|darkblue||'''Properties*'''}}}} || Opens a dialog to modidfy the reference. |
|} | |} | ||
=={{Anchor|Val|}}[[File:Validity32.png]] Validities== | =={{Anchor|Val|}}[[File: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 [[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. | + | 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. {{Tooltip|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)|{{FontColor|darkblue||Shortcuts}}}} are allowed. |
Right-click on the "Validities" node, there will be a context menu with the following entries: | Right-click on the "Validities" node, there will be a context menu with the following entries: | ||
Line 282: | Line 282: | ||
|'''Rename''' || Renames the validity. | |'''Rename''' || Renames the validity. | ||
|-{{TableRow2}} | |-{{TableRow2}} | ||
− | |'''Properties''' || Opens the properties dialog of the validity | + | |{{Tooltip|(Alternative option: double-click on the validity node)|{{FontColor|darkblue||'''Properties*'''}}}} || Opens the properties dialog of the validity. |
|} | |} | ||
=={{Anchor|Sig|}}[[File:Signature32.png]] Signatures== | =={{Anchor|Sig|}}[[File:Signature32.png]] Signatures== | ||
− | A signature describes the interface for a procedure, a screen or {{Question|an external application/an assembly}} ect. 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. | + | A signature describes the interface for a procedure, a screen or {{Question|an external application/an assembly}} ect. 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. {{Tooltip|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)|{{FontColor|darkblue||Shortcuts}}}} are allowed. |
Right-click on the "Signatures" node, there will be a context menu with the following entries: | Right-click on the "Signatures" node, there will be a context menu with the following entries: | ||
Line 328: | Line 328: | ||
|'''Delete realisation''' || Deletes the realisation of the signature. Note that the entry is only enabled when the signature has a realisation. | |'''Delete realisation''' || Deletes the realisation of the signature. Note that the entry is only enabled when the signature has a realisation. | ||
|-{{TableRow2}} | |-{{TableRow2}} | ||
− | |'''Properties''' || Opens the properties dialog of the signature | + | |{{Tooltip|(Alternative option: double-click on the signature node)|{{FontColor|darkblue||'''Properties*'''}}}} || Opens the properties dialog of the signature. |
|} | |} | ||
=={{Anchor|GD|}}[[File:GlobalDeclaration32.png]] Global Declarations== | =={{Anchor|GD|}}[[File:GlobalDeclaration32.png]] Global Declarations== | ||
− | Global declarations contains all the global constants and variables (context 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. 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). To copy, cut or modify a global declaration, use the context menu of that global declaration. | + | Global declarations contains all the global constants and variables (context 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. 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). To copy, cut or modify a global declaration, use the context menu of that global declaration. {{Tooltip|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)|{{FontColor|darkblue||Shortcuts}}}} are allowed. |
Right-click on the Declarations node of the document, there will be a context menu with the following entries: | Right-click on the Declarations node of the document, there will be a context menu with the following entries: | ||
Line 362: | Line 362: | ||
|'''Rename''' || Renames the global declaration. | |'''Rename''' || Renames the global declaration. | ||
|-{{TableRow2}} | |-{{TableRow2}} | ||
− | |'''Properties''' || Opens the properties dialog of the global declaration | + | |{{Tooltip|(Alternative option: double-click on the global declaration node)|{{FontColor|darkblue||'''Properties*'''}}}} || Opens the properties dialog of the global declaration. |
|} | |} | ||
=={{Anchor|Prc|}}[[File:Procedure32.png]] Procedures== | =={{Anchor|Prc|}}[[File: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 that procedure. | + | 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 that procedure. {{Tooltip|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)|{{FontColor|darkblue||Shortcuts}}}} are allowed. |
Right-click on the Procedures node, there will be a context menu with the following entries: | Right-click on the Procedures node, there will be a context menu with the following entries: | ||
Line 419: | Line 419: | ||
|'''Delete Realization''' || style="width:600px;" | Delete the realisation of the procedure. Note that this entry is only enabled when the procedure has a realisation. | |'''Delete Realization''' || style="width:600px;" | Delete the realisation of the procedure. Note that this entry is only enabled when the procedure has a realisation. | ||
|-{{TableRow2}} | |-{{TableRow2}} | ||
− | |'''Properties''' || style="width:600px;" | Opens the properties dialog of the procedure | + | |'''Properties''' || style="width:600px;" | Opens the properties dialog of the procedure. |
|} | |} | ||
=={{Anchor|Com|}}[[File:Comments32.png]] Comments== | =={{Anchor|Com|}}[[File: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. 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. To copy, cut or modify a comment, use the context menu of that comment (see below). | + | 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. 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. To copy, cut or modify a comment, use the context menu of that comment (see below). {{Tooltip|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)|{{FontColor|darkblue||Shortcuts}}}} are allowed. |
Right-click on the "Comments" node, there will be a context menu with the following entries: | Right-click on the "Comments" node, there will be a context menu with the following entries: | ||
Line 439: | Line 439: | ||
{{TableRowContextMenuHeader}} | {{TableRowContextMenuHeader}} | ||
|-{{TableRow2}} | |-{{TableRow2}} | ||
− | |'''Cut''' || Cuts the | + | |'''Cut''' || Cuts the comment. |
|-{{TableRow1}} | |-{{TableRow1}} | ||
− | |'''Copy''' || Copies the | + | |'''Copy''' || Copies the comment. |
|-{{TableRow2}} | |-{{TableRow2}} | ||
− | |'''Delete''' || Deletes the | + | |'''Delete''' || Deletes the comment. |
|-{{TableRow1}} | |-{{TableRow1}} | ||
− | |'''Properties''' || Opens the editor dialog of the comment | + | |{{Tooltip|(Alternative option: double-click on the comment node)|{{FontColor|darkblue||'''Properties*'''}}}} || Opens the editor dialog of the comment. |
|} | |} | ||
=={{Anchor|Prm|}}[[File:Parameters32.png]] Parameters== | =={{Anchor|Prm|}}[[File:Parameters32.png]] Parameters== | ||
− | The parameter declaration block may contain In-, Out- or InOut- parameters of procedures and 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. | + | The parameter declaration block may contain In-, Out- or InOut- parameters of procedures and 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. {{Tooltip|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)|{{FontColor|darkblue||Shortcuts}}}} are allowed. |
Right-click on the "Parameters" node, there will be a context menu with the following entries: | Right-click on the "Parameters" node, there will be a context menu with the following entries: | ||
Line 473: | Line 473: | ||
|'''Delete''' || Deletes the parameter. | |'''Delete''' || Deletes the parameter. | ||
|-{{TableRow1}} | |-{{TableRow1}} | ||
− | |'''Properties''' || Opens the properties dialog of the parameter | + | |{{Tooltip|(Alternative option: double-click on the parameter node)|{{FontColor|darkblue||'''Properties*'''}}}} || Opens the properties dialog of the parameter. |
|} | |} | ||
=={{Anchor|Thr|}}[[File:Throws32.png]] Throws (exceptions)== | =={{Anchor|Thr|}}[[File:Throws32.png]] Throws (exceptions)== | ||
− | The author of the OTX document can predict the exceptions that may potentially be thrown by the procedure. These exceptions shall be declared in the Throws (exceptions) node of the procedure. The implemented procedure signature of the current procedure, or the procedure calling to the current procedure or to the implemented procedure signature should also declare the same exceptions in their Throws nodes. The device service signatures also have the Throws node to declare the potential exceptions. 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 (see below). To copy or cut an exception, use the context menu of that exception. | + | The author of the OTX document can predict the exceptions that may potentially be thrown by the procedure. These exceptions shall be declared in the Throws (exceptions) node of the procedure. The implemented procedure signature of the current procedure, or the procedure calling to the current procedure or to the implemented procedure signature should also declare the same exceptions in their Throws nodes. The device service signatures also have the Throws node to declare the potential exceptions. 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 (see below). To copy or cut an exception, use the context menu of that exception. {{Tooltip|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)|{{FontColor|darkblue||Shortcuts}}}} are allowed. |
Right-click on the Throws node, there will be a context menu with the following entries: | Right-click on the Throws node, there will be a context menu with the following entries: | ||
Line 502: | Line 502: | ||
=={{Anchor|LD|}}[[File:LocalDeclarations32.png]] Local Declarations== | =={{Anchor|LD|}}[[File: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 their procedure. These local declarations are displayed as local declaration node below the Declarations node of the procedure (this local Declarations node is different from the 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. Note the special case that 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). | + | 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 their procedure. These local declarations are displayed as local declaration node below the Declarations node of the procedure (this local Declarations node is different from the 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. Note the special case that 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). {{Tooltip|(Ctrl+C:Copy, Ctrl+X:Cut, Ctrl+V:Paste)|{{FontColor|darkblue||Shortcuts}}}} are allowed. |
Right-click on the Declarations node of the document, there will be a context menu with the following entries: | Right-click on the Declarations node of the document, there will be a context menu with the following entries: | ||
Line 529: | Line 529: | ||
|'''Rename''' || Renames the local declaration. | |'''Rename''' || Renames the local declaration. | ||
|-{{TableRow2}} | |-{{TableRow2}} | ||
− | |'''Properties''' || Opens the properties dialog of the local declaration | + | |{{Tooltip|(Alternative option: double-click on the local declaration node)|{{FontColor|darkblue||'''Properties*'''}}}} || Opens the properties dialog of the local declaration. |
|} | |} | ||
Revision as of 04:00, 25 July 2014
EDITING ...
Contents
- 1 Overview
- 2 Solution (root node)
- 3 File:Projects32.png Projects
- 4 File:References32.png References
- 5 File:Packages32.png Packages
- 6 Documents
- 7 Admin Data
- 8 Imports
- 9 Validities
- 10 Signatures
- 11 File:GlobalDeclaration32.png Global Declarations
- 12 Procedures
- 13 Comments
- 14 Parameters
- 15 Throws (exceptions)
- 16 Local Declarations
- 17 Flow
Overview
The Solution Explorer (SE)??? 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, especially at design-time. The Solution Explorer also supports runtime with functions to execute a sequence (a procedure) directly, or check for errors before execution, or even build DLLs or executable files ect.
![]() |
The Solution Explorer shows the structure of an OTX solution |
The Solution Explorer is a dockable window which can be moved and attached in many positions in the OTF. Users can also close and re-open it, or set it to auto-hide mode. 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 |
Expand | Displays all-level elements in the solution (note that the unloaded documents will not be expanded). |
Collapse | Hides all elements in all projects, only displays the solution and projects. |
Select current Procedure | Sets focus on the current procedure in the Solution Explorer (expands related elements if necessary). |
Show flow node | Shows/hides the flow nodes of all procedures (default:OFF). |
Display only global library elements | Hides all the elements in all referenced Ptx libraries that do not have the visibility:public (default:ON). |
Up | Moves the element up one level in a scope (eg. moves a variable up one level in the local Declarations scope). |
Down | Moves the element down one level in a scope. |
Sort Items A-Z | Arranges elements of a scope in ascending order. |
Sort Items Z-A | Arranges elements of 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.
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 contains a solution file (*.otfSln) with solution management information (see also 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 related functions in the Start Page or in the menu File of the Ribbon menu bar. 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 |
Validate | Checks all the documents in the solution for any warnings or errors. |
Build Solution | Builds the DLL files of all the projects in the solution (also the executable files or setup files if users check menu to create those files). |
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). |
Add >> New Project | Adds a new 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. |
Subversion Category | Handles Subversion tasks in solution scope (see Subversion section for more information). |
Open Folder in Windows Explorer | Opens the solution folder in a new window with Windows Explorer. |
Properties | Opens the solution setting dialog. |
File:Projects32.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 for the OTX extension libraries used in the project??? ect. (see 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 are displayed as package nodes below the project node and only the packages nodes are allowed here.
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 in the menu File of the Ribbon menu bar. Note that every new project added, a new package and a new document with the procedure "main" 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 |
Validate | Checks all the documents in the project for any warnings or errors. |
Build | Builds the DLL file of the project (also the executable file or setup file if users check menu to create those files). |
Ptx Export... | Exports the project to a Ptx 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. |
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. |
Subversion Category | Handles Subversion tasks in the project scope (see Subversion section for more information). |
Open Folder in Windows Explorer | Opens the project folder in a new window with Windows Explorer. |
Properties | Opens the project setting dialog. |
File:References32.png References
When a project references to one or many Ptx libraries with relative paths or absolute path, these Ptx libraries 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 by using the context menu of the project. To manage the references to the Ptx libraries such as adding, deleting, including into project folder or converting references path, you can open the library manager??? in the tab "Libraries (PDX References)" of the project setting, or using the command on the tab "Test Step Libraries" in the Toolbox.
Right-click on the "References" node, there will be a context menu with the following entries:
Menu entry | Description |
Add >> Add PDX library reference | Adds a reference from the project to a Ptx library. |
Manage PDX references | Open the library manager??? in the tab Libraries (PDX References) of the project setting. |
Right-click on the Ptx 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. |
Open Folder in Windows Explorer | Opens the folder containing the Ptx in a new window with Windows Explorer. |
File:Packages32.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. Shortcuts are allowed.
Right-click on the package node in the reference node, there will be a context menu with the following entries:
Menu entry | Description |
Validate | Checks all the documents in 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 >> 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. |
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. |
Documents
An OTX document is an XML file that describes all the data required for a sequence. An OTX document can refer 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 with 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 menu "Open/View" 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. Shortcuts are allowed.
Right-click on the document node, there will be a context menu with the following entries:
Menu entry | Description |
Open/View | Loads the content of the document. |
Validate | Checks for any warnings or errors in the document. |
Debug | Executes the procedure "main" of the document in debug mode. |
Save | Saves all the changes in the document. |
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 Context Variable | Adds a new context variable to the document. |
Add >> Global Declaration >> New Global Variable | Adds a new global variable (document variable) to the document. |
Add >> AdminData | Adds administration data (versioning data)??? to the document. |
Add >> Validity | Adds a new validity to the document. |
Add >> Signtures >> New Procedure Signature | Adds a new procedure signature to the document. |
Add >> Signtures >> New Screen Signature | Adds a new screen signature to the document. |
Add >> Signtures >> New Device Signature | Adds a new device signature to the document. |
Add >> Signtures >> New SingleEcuJob Signature | Adds a new procedure signature with some supported parameters to the document. |
Add >> Signtures >> New FlashJob Signature | Adds a new procedure signature with some supported parameters to the document. |
Add >> Signtures >> New SecurityAccessJob Signature | Adds a new procedure signature with some supported parameters to the document. |
Cut | Cuts the document. |
Copy | Copies the document. |
Paste | Pastes a global element (validity, global declataion, or 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 of the document. |
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 document should store the information about the change history, the person who responsible for the changes ect. 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 menu "File\Option" in the Ribbon menu bar. 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". |
Properties* | Opens the admin-data editor dialog???. |
Imports
With the import element, 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 references to another document, it imports the global names defined in the referenced document and it can use these imported global names. However, not all the imported global names are accessible because their visibility attributes are not sufficient to the document which references to 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 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 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, 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 reference, 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. |
Properties* | Opens a dialog to modidfy the reference. |
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. Shortcuts 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. |
Delete | Deletes the validity. |
Rename | Renames the validity. |
Properties* | Opens the properties dialog of the validity. |
Signatures
A signature describes the interface for a procedure, a screen or an external application/an assembly??? ect. 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. Shortcuts 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 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 Procedure | Creates a new procedure to implement the current procedure signature. Note that the entry is only enabled for procedure signature. |
Device Mapping | Opens the tab "Device Mapping" of the project setting. Note that the entry is only enabled for device signature. |
Cut | Cuts the signature. |
Copy | Copies the signature. |
Delete | Deletes the signature. |
Rename | Renames the signature. |
Add new realisation | Adds a new realisation to the signature. Note that the entry is only enabled when the signature has no realisation. |
Delete realisation | Deletes the realisation of the signature. Note that the entry is only enabled when the signature has a realisation. |
Properties* | Opens the properties dialog of the signature. |
File:GlobalDeclaration32.png Global Declarations
Global declarations contains all the global constants and variables (context 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. 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). To copy, cut or modify a global declaration, use the context menu of that global declaration. Shortcuts 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. |
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 |
Cut | Cuts the global declaration. |
Copy | Copies the global declaration. |
Delete | Deletes the global declaration. |
Rename | Renames the global declaration. |
Properties* | Opens the properties dialog of the global declaration. |
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 that procedure. Shortcuts are allowed.
Right-click on the Procedures node, there will be a context menu with the following entries:
Menu entry | Description |
Add Item | Adds a new procedure to the document. |
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 |
Open/View | Opens a new workflow tab??? of the procedure in the Workflow Designer. |
Validate | Checks the procedure for any errors and warnings. |
Execute Workflow | Executes the procedure. |
Stop Procedure | Stop the execution of the procedure. |
Update Parameters | Updates the parameters and the exception declarations (see Throws) according to the implemented procedure signature. Note that this entry is only enabled when the procedure implements a procedure signature. |
Create ProcedureSignature from Procedure | Creates a new procedure signature for the current procedure to implement (the parameters and exceptions basing on the current procedure). |
Cut | Cuts the procedure. |
Copy | Copies the procedure. |
Paste | Pastes a local element (comment, parameter, exception or declaration) to the procedure. |
Delete | Deletes the procedure. |
Rename | Renames the procedure. |
Add >> Comment | Adds a comment to the procedure. |
Add >> Parameter | Adds a 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 realization | Adds new realisation to the procedure. Note that this entry is only enabled when the procedure has no realisation. |
Delete Realization | Delete the realisation of the procedure. Note that this entry is only enabled when the procedure has a realisation. |
Properties | Opens the properties dialog of the procedure. |
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. 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. To copy, cut or modify a comment, use the context menu of that comment (see below). Shortcuts 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. |
Properties* | Opens the editor dialog of the comment. |
Parameters
The parameter declaration block may contain In-, Out- or InOut- parameters of procedures and 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. Shortcuts are allowed.
Right-click on the "Parameters" node, there will be a context menu with the following entries:
Menu entry | Description |
Update Parameters | Updates the parameters and the exception declarations (see Throws) according to the implemented procedure signature. Note that this entry is only for "Parameters" node of a procedure, the entry is enabled when the procedure implements a procedure signature. |
Add Item | Adds a parameter to the procedure or signature. |
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 |
Cut | Cuts the parameter. |
Copy | Copies the parameter. |
Delete | Deletes the parameter. |
Properties* | Opens the properties dialog of the parameter. |
Throws (exceptions)
The author of the OTX document can predict the exceptions that may potentially be thrown by the procedure. These exceptions shall be declared in the Throws (exceptions) node of the procedure. The implemented procedure signature of the current procedure, or the procedure calling to the current procedure or to the implemented procedure signature should also declare the same exceptions in their Throws nodes. The device service signatures also have the Throws node to declare the potential exceptions. 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 (see below). To copy or cut an exception, use the context menu of that exception. Shortcuts 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. |
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 their procedure. These local declarations are displayed as local declaration node below the Declarations node of the procedure (this local Declarations 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. Note the special case that 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). Shortcuts 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 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 |
Cut | Cuts the local declaration. |
Copy | Copies the local declaration. |
Delete | Deletes the local declaration. |
Rename | Renames the local declaration. |
Properties* | Opens the properties dialog of the local declaration. |
Flow
Under the flow node, the actual sequence of activities is presented. Each activity consists of a name and one or more realisations. It 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/View | Opens (or sets on top) the procedure tab of the activity. Note that this entry is not displayed with realisation node. |
Delete | Deletes the activity (or a deletable flow of a compound node). |
Add new realization | Adds new realisation to the "Catch" flow of the handler activity. Note that this entry is only for the "Catch" flow of the handler activity. |
Delete Realization | Deletes the realisation of the "Catch" flow of the handler activity. Note that this entry is only for the "Catch" flow of the handler activity. |
Properties | Opens the properties dialog of the element which has the adjustable properties. |